diff --git a/system/services/remote-builds.nix b/system/services/remote-builds.nix new file mode 100644 index 0000000..936bbdc --- /dev/null +++ b/system/services/remote-builds.nix @@ -0,0 +1,24 @@ +{ + config, + pkgs, + ... +}: { + nix.distributedBuilds = true; + # nix.extraOptions = '' + # builders-use-substitutes = true + # ''; + + nix.buildMachines = [ + { + hostName = "server3-gpu"; # Must be resolvable or an IP + system = "x86_64-linux"; # The architecture of the builder + protocol = "ssh-ng"; # Optimized protocol + maxJobs = 4; + speedFactor = 2; + supportedFeatures = ["nixos-test" "benchmark" "big-parallel" "kvm"]; + mandatoryFeatures = []; + sshUser = "synchronous"; + sshKey = "/home/synchronous/.ssh/id_ed25519"; # Path to private key on client + } + ]; +} diff --git a/system/services/services.nix b/system/services/services.nix index 545329d..602851b 100644 --- a/system/services/services.nix +++ b/system/services/services.nix @@ -10,5 +10,6 @@ # ./resolved/default.nix (not enabled, in favor of dnsmasq) ./dnsmasq/default.nix ./printing.nix + ./remote-builds.nix ]; }