diff options
Diffstat (limited to 'modules/nixos/system/default.nix')
| -rw-r--r-- | modules/nixos/system/default.nix | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/modules/nixos/system/default.nix b/modules/nixos/system/default.nix new file mode 100644 index 0000000..96c5654 --- /dev/null +++ b/modules/nixos/system/default.nix @@ -0,0 +1,30 @@ +{ options, config, lib, namespace, ... }: + +with lib; with lib.${namespace}; let + cfg = config.${namespace}.system; +in { + options.${namespace}.system = with types; { + hostname = mkOption { + type = strMatching "^$|^[[:alnum:]]([[:alnum:]_-]{0,61}[[:alnum:]])?$"; + }; + + id = mkOption { + default = null; + type = nullOr str; + }; + + timezone = mkOption { + default = "America/Los_Angeles"; + type = nullOr str; + }; + }; + + config = { + nix.settings.experimental-features = [ "nix-command" "flakes" ]; + + networking.hostName = cfg.hostname; + networking.hostId = cfg.id; + + time.timeZone = cfg.timezone; + }; +} |