nix/lib/deploy/default.nix
Daniel Flanagan fa9a8edfe4
Some checks failed
/ build-host (map[host:beefcake]) (push) Successful in 10s
/ build-host (map[host:dragon]) (push) Successful in 48s
/ build-host (map[host:flipflop]) (push) Successful in 42s
/ build-host (map[host:foxtrot]) (push) Successful in 46s
/ build-host (map[host:rascal]) (push) Successful in 20s
/ build-host (map[host:router]) (push) Successful in 24s
/ build-host (map[host:steamdeck]) (push) Successful in 44s
/ build-devshell (push) Successful in 19s
/ flake-check (push) Failing after 4m27s
feat: add steamdeck
2025-03-21 13:26:07 -05:00

47 lines
1.1 KiB
Nix

{ deploy-rs, self, ... }:
let
deployPkgs =
system:
import self.inputs.nixpkgs {
inherit system;
overlays = [
deploy-rs.overlays.default
(final: prev: {
deploy-rs = {
inherit (prev) deploy-rs;
lib = deploy-rs.lib;
};
})
];
};
deployer =
host: opts:
{
hostname = "${host}.hare-cod.ts.net";
remoteBuild = true; # should pull from cache # TODO: verify this
fastConnection = true;
interactiveSudo = true;
profiles.system = {
user = "root";
path =
(deployPkgs self.nixosConfigurations.${host}.pkgs.system).deploy-rs.lib.x86_64-linux.activate.nixos
self.nixosConfigurations.${host};
};
}
// opts;
in
{
nodes = {
beefcake = deployer "beefcake" { };
dragon = deployer "dragon" { };
htpc = deployer "htpc" { };
bigtower = deployer "bigtower" { };
rascal = deployer "rascal" { };
router = (deployer "router") {
sshOpts = [
"-p"
"2201"
];
};
};
}