diff --git a/flake.nix b/flake.nix index 3d16bc3..c1a47fd 100644 --- a/flake.nix +++ b/flake.nix @@ -25,20 +25,41 @@ outputs = inputs: - inputs.snowfall-lib.mkFlake { - inherit inputs; - src = ./.; - snowfall = { - namespace = "snowfall"; + let + flake = inputs.snowfall-lib.mkFlake { + inherit inputs; + src = ./.; + snowfall = { + namespace = "snowfall"; + }; + systems.modules.nixos = with inputs; [ + agenix.nixosModules.default + ]; + homes.modules = with inputs; [ + agenix.homeManagerModules.default + ]; + channels-config = { + allowUnfree = true; + }; }; - systems.modules.nixos = with inputs; [ - agenix.nixosModules.default - ]; - homes.modules = with inputs; [ - agenix.homeManagerModules.default - ]; - channels-config = { - allowUnfree = true; + inv = import ./inventory.nix; + mkNode = name: node: { + imports = [ (./systems/x86_64-linux + "/${name}") ]; + deployment.targetHost = node.zerotierIp; }; - }; + colmenaNodes = builtins.mapAttrs mkNode inv.nodes; + colmenaHive = inputs.colmena.lib.makeHive ( + { + meta = { + nixpkgs = import inputs.nixpkgs { + system = "x86_64-linux"; + config.allowUnfree = true; + }; + specialArgs = { inherit inputs; }; + }; + } + // colmenaNodes + ); + in + flake // { colmenaHive = colmenaHive; }; } diff --git a/homes/aarch64-darwin/yadunut@yadunut-mbp/default.nix b/homes/aarch64-darwin/yadunut@yadunut-mbp/default.nix index c4d315f..ad5158b 100644 --- a/homes/aarch64-darwin/yadunut@yadunut-mbp/default.nix +++ b/homes/aarch64-darwin/yadunut@yadunut-mbp/default.nix @@ -22,6 +22,7 @@ pkgs.claude-code pkgs.codex pkgs.amp-cli + inputs.colmena.packages.aarch64-darwin.colmena ]; home.sessionVariables = { diff --git a/inventory.nix b/inventory.nix index a87d850..c235468 100644 --- a/inventory.nix +++ b/inventory.nix @@ -16,7 +16,6 @@ # User SSH public keys (named) for authorization and agenix recipients. userKeys = { yadunut = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJXOpmWsAnl2RtOuJJMRUx+iJTwf2RWJ1iS3FqXJFzFG yadunut"; - "penguin-yadunut" = - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOEg5wsPLOZvU6lT8cMUsStQqalh/Hw5u104QhOYPS8E yadunut@penguin"; + penguin-yadunut = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOEg5wsPLOZvU6lT8cMUsStQqalh/Hw5u104QhOYPS8E yadunut@penguin"; }; } diff --git a/secrets/btrbk-keyfile.age b/secrets/btrbk-keyfile.age index 3480230..484eb3c 100644 Binary files a/secrets/btrbk-keyfile.age and b/secrets/btrbk-keyfile.age differ diff --git a/secrets/k3s.age b/secrets/k3s.age index b35a81f..a4dc4ac 100644 --- a/secrets/k3s.age +++ b/secrets/k3s.age @@ -1,12 +1,11 @@ age-encryption.org/v1 --> ssh-ed25519 Gc/MTQ 1VXVmIQH+4s2AkBbf8BdOp65oDDlxfMYYE184LUggFo -xpUXhXkFiUa3FcWBazPt7l0bPYrurOsn2+MZVxHp0XE --> ssh-ed25519 mOIk4w jdEZYWfNwjmsVhKWo/ucReyRLVgeRICAGP5n6mvJOQg -YuyZTijB3BNxTPKebLmEsfJkRh7/8JETG5eOqgU+fOY --> ssh-ed25519 l9wOAw /OGUnqDH738Yk51Snn7VC1JPBTMU497vBSaKD0qWbAs -+sgfXtvA9g3X5YPr5YcoWo7Ljkxrs3O++aNA6GphU/4 --> ssh-ed25519 cPJ/Ew otg3F8Xt7vYkvjFv3/4OtSG8Q/8/z2IOF9h9q6wiuSc -EI4BL10EGys4Vd1+DiU1u69CB8feEqNw9saqqclvgG4 ---- rqGI3Z4Pd3PDtH7RHfx5FRDu4AZudXZ1Cfv8Cvz/IAw -}Av!@h*8H?h -mr87M4>8쬲B6w M`>:v0C94g3/5gi:nGbxk9 ?a46R \ No newline at end of file +-> ssh-ed25519 mOIk4w b5tjwFCxGwOsQSRQTuyW45PM4UUIePIYfZ1TxtN/uXY +9JBcEmgtq7IbvQ4aSNntlWq756MCOhyPeyYxdSpZXac +-> ssh-ed25519 Gc/MTQ ilPM4uAYGwFNJRUPdyU4TEQFI6wSR6e53X5Vl8sFqXk +ejbXYpUcfyZ0ALMEdmXCl0ELdI3wyH+4gje0ljSLzO4 +-> ssh-ed25519 cPJ/Ew IXILaJ9gLqpuNme7Q9TKmfh0z4OsZWWd2exrnC7pX1U +VTkE9sX8UVvaQwsuOFzimdn4yjYNSDZ4xofzCWPfe1I +-> ssh-ed25519 l9wOAw DuSvKg4h9Ht8YY4WKfyJuS72MAmXOIxUmDvzCOyMoXU +WobjJwvGz0GxVoyn12kKC4FTIRkQiTH9NOK7pmuWLvE +--- 2sPIIJsPAciSrEjOO/ZKxdIByFiFvoVZ3gSs3TvRFQ4 +̊+?]PZ@E`h6֧_jXx_X}^{%f |hpའ-D<@$w x1x}NمgjJ;2O \ No newline at end of file