diff options
| author | quentin@aristote.fr <quentin@aristote.fr> | 2024-11-30 16:45:22 +0100 |
|---|---|---|
| committer | quentin@aristote.fr <quentin@aristote.fr> | 2024-11-30 16:45:22 +0100 |
| commit | df5287dd4133549dd7b13ea762f4c60fb2280a21 (patch) | |
| tree | 6a27eb632b36f570f70f56c732c0953587be3db0 /config/nix/remote-builds.nix | |
| parent | 89ed974f44d6723d3862d20927e405cbbbfb09dc (diff) | |
add remote builder
Diffstat (limited to 'config/nix/remote-builds.nix')
| -rw-r--r-- | config/nix/remote-builds.nix | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/config/nix/remote-builds.nix b/config/nix/remote-builds.nix new file mode 100644 index 0000000..2bca883 --- /dev/null +++ b/config/nix/remote-builds.nix @@ -0,0 +1,29 @@ +{...}: { + programs.ssh = { + extraConfig = '' + Host hephaistos.local + # Prevent using ssh-agent or another keyfile, useful for testing + IdentitiesOnly yes + IdentityFile /root/.ssh/nixremote + # The weakly privileged user on the remote builder – if not set, 'root' is used – which will hopefully fail + User nixremote + ''; + knownHosts."hephaistos.local".publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIPMlRcOB8142XkF8uFCLbyYhcqp4LioChXKAM3EGqSa"; + }; + + nix = { + distributedBuilds = true; + buildMachines = [ + { + hostName = "hephaistos.local"; + system = "x86_64-linux"; + # Nix custom ssh-variant that avoids lots of "trusted-users" settings pain + protocol = "ssh-ng"; + maxJobs = 4; + speedFactor = 4; + supportedFeatures = ["nixos-test" "benchmark" "big-parallel" "kvm"]; + mandatoryFeatures = []; + } + ]; + }; +} |
