diff --git a/flake.nix b/flake.nix index 0c78971..f67a74f 100644 --- a/flake.nix +++ b/flake.nix @@ -36,7 +36,7 @@ lib = pkgs.lib; pkgs-unstable = nixpkgs-unstable.legacyPackages.${controllerArch}; machines = (lib.modules.evalModules { modules = [ (import ./nixos/machines) ]; }).config.machines; - physicalMachines = lib.filterAttrs (n: v: v.type == "physical") machines; + physicalMachines = lib.filterAttrs (n: v: v.kind == "physical") machines; mkNixosSystems = systemDef: builtins.mapAttrs (name: machine: diff --git a/nixos/default.nix b/nixos/default.nix index e27dea6..b97f171 100644 --- a/nixos/default.nix +++ b/nixos/default.nix @@ -6,8 +6,8 @@ disko.nixosModules.disko agenix.nixosModules.default ] - ++ lib.lists.optional (machine.type == "physical") ./physical.nix - ++ lib.lists.optional (machine.type == "virtual") ./virtual; + ++ lib.lists.optional (machine.kind == "physical") ./physical.nix + ++ lib.lists.optional (machine.kind == "virtual") ./virtual; config = { time.timeZone = "Europe/Amsterdam"; @@ -15,16 +15,16 @@ i18n = { defaultLocale = "en_US.UTF-8"; - extraLocaleSettings = { - LC_ADDRESS = "nl_NL.UTF-8"; - LC_IDENTIFICATION = "nl_NL.UTF-8"; - LC_MEASUREMENT = "nl_NL.UTF-8"; - LC_MONETARY = "nl_NL.UTF-8"; - LC_NAME = "nl_NL.UTF-8"; - LC_NUMERIC = "nl_NL.UTF-8"; - LC_PAPER = "nl_NL.UTF-8"; - LC_TELEPHONE = "nl_NL.UTF-8"; - LC_TIME = "nl_NL.UTF-8"; + extraLocaleSettings = let extraLocale = "nl_NL.UTF-8"; in { + LC_ADDRESS = extraLocale; + LC_IDENTIFICATION = extraLocale; + LC_MEASUREMENT = extraLocale; + LC_MONETARY = extraLocale; + LC_NAME = extraLocale; + LC_NUMERIC = extraLocale; + LC_PAPER = extraLocale; + LC_TELEPHONE = extraLocale; + LC_TIME = extraLocale; }; }; diff --git a/nixos/machines/default.nix b/nixos/machines/default.nix index e46c74b..180d8f4 100644 --- a/nixos/machines/default.nix +++ b/nixos/machines/default.nix @@ -3,7 +3,7 @@ let machineOpts = { ... }: { options = { # TODO: rename to kind? - type = lib.mkOption { + kind = lib.mkOption { type = lib.types.enum [ "physical" "virtual" ]; description = '' Whether this machine is physical or virtual. @@ -56,7 +56,7 @@ in config = { machines = { warwick = { - type = "physical"; + kind = "physical"; arch = "aarch64-linux"; isRaspberryPi = true; @@ -68,7 +68,7 @@ in }; atlas = { - type = "physical"; + kind = "physical"; arch = "x86_64-linux"; isHypervisor = true; @@ -87,7 +87,7 @@ in }; jefke = { - type = "physical"; + kind = "physical"; arch = "x86_64-linux"; isHypervisor = true; @@ -106,7 +106,7 @@ in }; lewis = { - type = "physical"; + kind = "physical"; arch = "x86_64-linux"; isHypervisor = true; @@ -129,7 +129,7 @@ in }; hermes = { - type = "virtual"; + kind = "virtual"; hypervisorName = "lewis"; nixosModule = { hypervisorConfig, ... }: { @@ -156,7 +156,7 @@ in }; maestro = { - type = "virtual"; + kind = "virtual"; hypervisorName = "atlas"; nixosModule = { config, ... }: { @@ -173,7 +173,7 @@ in }; bancomart = { - type = "virtual"; + kind = "virtual"; hypervisorName = "jefke"; nixosModule = { @@ -187,7 +187,7 @@ in }; vpay = { - type = "virtual"; + kind = "virtual"; hypervisorName = "lewis"; nixosModule = { diff --git a/nixos/modules/networking/default.nix b/nixos/modules/networking/default.nix index f428c28..d437895 100644 --- a/nixos/modules/networking/default.nix +++ b/nixos/modules/networking/default.nix @@ -48,7 +48,7 @@ in { config = { networking = { - domain = if machine.type == "physical" then "hyp" else "dmz"; + domain = if machine.kind == "physical" then "hyp" else "dmz"; nftables.enable = true; useDHCP = false; @@ -117,7 +117,7 @@ in { networkConfig.Bridge = cfg.dmz.bridgeName; }; }) - (lib.optionalAttrs (machine.type == "virtual") { + (lib.optionalAttrs (machine.kind == "virtual") { "30-main-nic" = { matchConfig.Name = "en*"; diff --git a/nixos/physical.nix b/nixos/physical.nix index 9b6e0af..74de363 100644 --- a/nixos/physical.nix +++ b/nixos/physical.nix @@ -57,7 +57,7 @@ microvm.vms = let - vmsForHypervisor = lib.filterAttrs (n: v: v.type == "virtual" && v.hypervisorName == config.networking.hostName) machines; + vmsForHypervisor = lib.filterAttrs (n: v: v.kind == "virtual" && v.hypervisorName == config.networking.hostName) machines; in builtins.mapAttrs (name: vm: diff --git a/nixos/virtual/docker_swarm.nix b/nixos/virtual/docker_swarm.nix index 34538d2..0323e42 100644 --- a/nixos/virtual/docker_swarm.nix +++ b/nixos/virtual/docker_swarm.nix @@ -12,7 +12,7 @@ in }; config = lib.mkIf cfg.enable { - lab.vm.shares = lib.mkIf (machine.type == "virtual") [{ + lab.vm.shares = lib.mkIf (machine.kind == "virtual") [{ name = "docker"; mountPoint = "/var/lib/docker"; }];