mirror of
https://github.com/Swarsel/.dotfiles.git
synced 2025-12-06 09:07:21 +01:00
75 lines
1.7 KiB
Nix
75 lines
1.7 KiB
Nix
{ lib, options, ... }:
|
|
let
|
|
inherit (lib)
|
|
mkOption
|
|
types
|
|
;
|
|
|
|
in
|
|
{
|
|
options = {
|
|
globals = mkOption {
|
|
default = { };
|
|
type = types.submodule {
|
|
options = {
|
|
root = {
|
|
hashedPassword = mkOption {
|
|
type = types.str;
|
|
description = "My root user's password hash.";
|
|
};
|
|
};
|
|
|
|
myuser = {
|
|
name = mkOption {
|
|
type = types.str;
|
|
description = "My unix username.";
|
|
};
|
|
hashedPassword = mkOption {
|
|
type = types.str;
|
|
description = "My unix password hash.";
|
|
};
|
|
};
|
|
|
|
|
|
services = mkOption {
|
|
type = types.attrsOf (
|
|
types.submodule {
|
|
options = {
|
|
domain = mkOption {
|
|
type = types.str;
|
|
description = "The domain under which this service can be reached";
|
|
};
|
|
};
|
|
}
|
|
);
|
|
};
|
|
|
|
domains = {
|
|
me = mkOption {
|
|
type = types.str;
|
|
description = "My main domain.";
|
|
};
|
|
|
|
personal = mkOption {
|
|
type = types.str;
|
|
description = "My personal domain.";
|
|
};
|
|
};
|
|
|
|
macs = mkOption {
|
|
default = { };
|
|
type = types.attrsOf types.str;
|
|
description = "Known MAC addresses for external devices.";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
_globalsDefs = mkOption {
|
|
type = types.unspecified;
|
|
default = options.globals.definitions;
|
|
readOnly = true;
|
|
internal = true;
|
|
};
|
|
};
|
|
}
|