nix/lib/colmena/default.nix
Daniel Flanagan f4b2a19f43
All checks were successful
/ build-host (map[host:beefcake]) (push) Successful in 55s
/ build-host (map[host:dragon]) (push) Successful in 1m18s
/ build-host (map[host:flipflop]) (push) Successful in 1m13s
/ build-host (map[host:foxtrot]) (push) Successful in 1m18s
/ build-host (map[host:router]) (push) Successful in 47s
/ build-devshell (push) Successful in 20s
/ flake-check (push) Successful in 4m27s
feat: add upgrader
2025-03-20 16:12:20 -05:00

61 lines
1.3 KiB
Nix

{
home-manager,
self,
...
}@inputs:
{
meta =
let
nixpkgsSet =
nixpkgs:
(import nixpkgs {
system = "x86_64-linux";
overlays = [ self.outputs.flakeLib.forSelfOverlay ];
});
nixpkgs = nixpkgsSet inputs.nixpkgs-unstable;
stable = nixpkgsSet inputs.nixpkgs;
in
{
inherit nixpkgs;
# nodeNixpkgs = {
# # router = stable;
# beefcake = stable;
# };
specialArgs = {
inherit home-manager;
hardware = inputs.hardware.outputs.nixosModules;
diskoConfigurations = inputs.self.outputs.diskoConfigurations;
};
};
# TODO: setup builders?
foxtrot =
{
# name,
# nodes,
# pkgs,
...
}:
{
deployment = {
# Allow local deployment with `colmena apply-local`
allowLocalDeployment = true;
# Disable SSH deployment. This node will be skipped in a
# normal`colmena apply`.
targetHost = null;
};
# boot.isContainer = true;
# time.timeZone = nodes.host-b.config.time.timeZone;
}
// self.outputs.nixosConfigurations.foxtrot.config;
beefcake =
{ ... }:
{
deployment = {
buildOnTarget = true;
};
}
// self.outputs.nixosConfigurations.beefcake.config;
}