Files
nixos-blueprint/modules/nixos/shared/host.nix
T
unexplrd 14b4bdb585 Split shared host config into dedicated modules
- Add shared modules for boot, hardware, networking, input, and host defaults
- Move host-specific TOML flags to new option namespaces
- Update SSH and service defaults for the new layout
2026-05-11 15:01:36 +03:00

30 lines
571 B
Nix

{
config,
lib,
...
}: let
inherit (lib) mkOption types;
cfg = config.unexplrd.host;
in {
options.unexplrd.host = {
name = mkOption {
type = types.str;
};
id = mkOption {
type = types.strMatching "[a-z0-9]{8}";
};
stateVersion = mkOption {
type = types.strMatching ''[0-9]{2}\.[0-9]{2}'';
};
type = mkOption {
type = types.enum ["laptop" "server" "workstation"];
};
};
config = {
system.stateVersion = cfg.stateVersion;
networking.hostName = cfg.name;
networking.hostId = cfg.id;
};
}