Switch to colmena for system configurations and deployment

main
kalle 2025-02-04 05:20:25 +01:00
parent b4b9f54727
commit dab4d66124
2 changed files with 31 additions and 28 deletions

View File

@ -14,7 +14,7 @@
{ self, nixpkgs, ... }@inputs: { self, nixpkgs, ... }@inputs:
let let
outputs = self.outputs; outputs = self.outputs;
utils = import ./utils.nix { inherit nixpkgs inputs outputs; }; utils = import ./utils.nix;
homelabConfig = import ./config.nix; homelabConfig = import ./config.nix;
roles = import ./roles { inherit utils; }; roles = import ./roles { inherit utils; };
@ -22,21 +22,38 @@
inherit homelabConfig roles; inherit homelabConfig roles;
lib = nixpkgs.lib; lib = nixpkgs.lib;
}; };
pkgs = nixpkgs.legacyPackages.x86_64-linux;
in in
{ {
nixosConfigurations = devShells.x86_64-linux.default = pkgs.mkShell {
(nixpkgs.lib.mapAttrs ( buildInputs = [ pkgs.colmena ];
};
colmena =
{
meta = {
nixpkgs = import nixpkgs {
system = "x86_64-linux";
};
specialArgs = {
inherit
inputs
outputs
hosts
;
};
};
}
// (nixpkgs.lib.mapAttrs (
_: value: _: value:
(utils.mkSystem { (utils.mkSystem {
inherit hosts;
hostConfig = value; hostConfig = value;
}) })
) hosts) ) hosts);
// { nixosConfigurations = {
template = nixpkgs.lib.nixosSystem { template = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; }; specialArgs = { inherit inputs; };
modules = [ ./systems/template/configuration.nix ]; modules = [ ./systems/template/configuration.nix ];
};
}; };
};
}; };
} }

View File

@ -1,23 +1,9 @@
{
nixpkgs,
inputs,
outputs,
...
}:
{ {
mkSystem = mkSystem =
{ hostConfig, hosts }: { hostConfig }:
nixpkgs.lib.nixosSystem { { inputs, ... }:
system = "x86_64-linux"; {
specialArgs = { imports = [
inherit
inputs
outputs
hostConfig
hosts
;
};
modules = [
inputs.impermanence.nixosModules.impermanence inputs.impermanence.nixosModules.impermanence
inputs.sops-nix.nixosModules.sops inputs.sops-nix.nixosModules.sops