Switch to colmena for system configurations and deployment
parent
b4b9f54727
commit
dab4d66124
37
flake.nix
37
flake.nix
|
@ -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 ];
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
22
utils.nix
22
utils.nix
|
@ -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
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue