mirror of
https://github.com/srid/nixos-config.git
synced 2025-12-26 15:04:59 +08:00
44 lines
851 B
Nix
44 lines
851 B
Nix
{ lib, ... }:
|
|
let
|
|
userSubmodule = lib.types.submodule {
|
|
options = {
|
|
name = lib.mkOption {
|
|
type = lib.types.str;
|
|
};
|
|
email = lib.mkOption {
|
|
type = lib.types.str;
|
|
};
|
|
sshKey = lib.mkOption {
|
|
type = lib.types.str;
|
|
description = ''
|
|
SSH public key
|
|
'';
|
|
};
|
|
};
|
|
};
|
|
peopleSubmodule = lib.types.submodule {
|
|
options = {
|
|
users = lib.mkOption {
|
|
type = lib.types.attrsOf userSubmodule;
|
|
};
|
|
myself = lib.mkOption {
|
|
type = lib.types.str;
|
|
description = ''
|
|
The name of the user that represents myself.
|
|
|
|
Admin user in all contexts.
|
|
'';
|
|
};
|
|
};
|
|
};
|
|
in
|
|
{
|
|
options = {
|
|
people = lib.mkOption {
|
|
type = peopleSubmodule;
|
|
};
|
|
};
|
|
config = {
|
|
people = import ./config.nix;
|
|
};
|
|
}
|