hosts: fix that -min and -light variants were actually identical to the full versions

This commit is contained in:
Colin 2024-06-19 11:25:30 +00:00
parent afea7fe5e7
commit 7c4be0f4e9
2 changed files with 21 additions and 17 deletions

View File

@ -14,13 +14,7 @@ let
pkgs = mkPkgs { inherit system; variant = branch; };
in pkgs.nixos (
[
(lib.optionalAttrs (variant == "light") {
sane.maxBuildCost = 2;
})
(lib.optionalAttrs (variant == "min") {
sane.maxBuildCost = 0;
})
(import ./hosts/instantiate.nix { hostName = name; })
(import ./hosts/instantiate.nix { hostName = name; inherit variant; })
(import ./modules)
pkgs.sops-nix.nixosModules.sops
]
@ -44,14 +38,14 @@ let
# then lexicographically-adjacent targets would also have the minimal difference in closure,
# and the order in which each target should be built is more evident
"${args.name}" = mkFlavoredHost args;
"${args.name}-next" = mkFlavoredHost args // { branch = "staging-next"; };
"${args.name}-staging" = mkFlavoredHost args // { branch = "staging"; };
"${args.name}-light" = mkFlavoredHost args // { variant = "light"; };
"${args.name}-light-next" = mkFlavoredHost args // { variant = "light"; branch = "staging-next"; };
"${args.name}-light-staging" = mkFlavoredHost args // { variant = "light"; branch = "staging"; };
"${args.name}-min" = mkFlavoredHost args // { variant = "min"; };
"${args.name}-min-next" = mkFlavoredHost args // { variant = "min"; branch = "staging-next"; };
"${args.name}-min-staging" = mkFlavoredHost args // { variant = "min"; branch = "staging-staging"; };
"${args.name}-next" = mkFlavoredHost (args // { branch = "staging-next"; });
"${args.name}-staging" = mkFlavoredHost (args // { branch = "staging"; });
"${args.name}-light" = mkFlavoredHost (args // { variant = "light"; });
"${args.name}-light-next" = mkFlavoredHost (args // { variant = "light"; branch = "staging-next"; });
"${args.name}-light-staging" = mkFlavoredHost (args // { variant = "light"; branch = "staging"; });
"${args.name}-min" = mkFlavoredHost (args // { variant = "min"; });
"${args.name}-min-next" = mkFlavoredHost (args // { variant = "min"; branch = "staging-next"; });
"${args.name}-min-staging" = mkFlavoredHost (args // { variant = "min"; branch = "staging-staging"; });
};
hosts = lib.foldl' (acc: host: acc // (mkHost host)) {} [

View File

@ -1,10 +1,10 @@
# trampoline from flake.nix into the specific host definition, while doing a tiny bit of common setup
# args from flake-level `import`
{ hostName }:
{ hostName, variant }:
# module args
{ ... }:
{ lib, ... }:
{
imports = [
@ -14,4 +14,14 @@
];
networking.hostName = hostName;
system.name = if variant == null then
hostName
else
"${hostName}-${variant}"
;
sane = lib.mkMerge [
(lib.mkIf (variant == "min") { maxBuildCost = 0; })
(lib.mkIf (variant == "light") { maxBuildCost = 2; })
];
}