further improvements

This commit is contained in:
Henri Dohmen 2026-04-04 15:08:45 +02:00
parent 1ea5aeab92
commit a25e7a64ff

View file

@ -76,32 +76,27 @@
++ (if isServer then [ ] else [ ./home ]); ++ (if isServer then [ ] else [ ./home ]);
}; };
# Not exposed as flake outputs because they depend on specialArgs nixosModules =
# if you add a host, make sure to add it to var/default.nix as well lib.genAttrs var.desktops (host: mkModule { entry = ./host/${host}; })
nixosModules = { // lib.genAttrs var.servers (
"solo" = mkModule { entry = ./host/solo; }; host:
"c2" = mkModule { entry = ./host/c2; }; mkModule {
"fw" = mkModule { entry = ./host/fw; }; entry = ./host/${host};
"roam" = mkModule { isServer = true;
entry = ./host/roam; }
isServer = true; );
};
};
in in
{ {
nixosConfigurations = nixosConfigurations =
let lib.genAttrs var.desktops (
mkDesktop = host: { host:
name = host; nixpkgs.lib.nixosSystem {
value = nixpkgs.lib.nixosSystem { system = "x86_64-linux";
system = "x86_64-linux"; inherit specialArgs;
inherit specialArgs; modules = [ nixosModules.${host} ];
modules = [ (nixosModules.${host}) ]; }
}; )
};
in
lib.listToAttrs (map mkDesktop var.desktops)
// { // {
"test-vm" = nixpkgs.lib.nixosSystem { "test-vm" = nixpkgs.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
@ -117,36 +112,26 @@
}; };
}; };
colmenaHive = colmena.lib.makeHive { colmenaHive = colmena.lib.makeHive (
meta = { {
nixpkgs = import nixpkgs { meta = {
system = "x86_64-linux"; nixpkgs = import nixpkgs { system = "x86_64-linux"; };
inherit specialArgs;
}; };
inherit specialArgs; "roam" = {
}; deployment = {
"roam" = { targetHost = "185.163.117.158";
deployment = { buildOnTarget = true;
targetHost = "185.163.117.158"; };
buildOnTarget = true; imports = [ nixosModules."roam" ];
}; };
imports = [ nixosModules."roam" ]; }
}; // lib.genAttrs var.desktops (host: {
"solo" = {
deployment.targetHost = null; deployment.targetHost = null;
deployment.allowLocalDeployment = true; deployment.allowLocalDeployment = true;
imports = [ nixosModules."solo" ]; imports = [ nixosModules.${host} ];
}; })
"c2" = { );
deployment.targetHost = null;
deployment.allowLocalDeployment = true;
imports = [ nixosModules."c2" ];
};
"fw" = {
deployment.targetHost = null;
deployment.allowLocalDeployment = true;
imports = [ nixosModules."fw" ];
};
};
} }
// flake-utils.lib.eachDefaultSystem ( // flake-utils.lib.eachDefaultSystem (
system: system: