37 lines
924 B
Nix
37 lines
924 B
Nix
{
|
|
pkgs,
|
|
configVars,
|
|
...
|
|
}: let
|
|
remoteMachineIp = configVars.networking.addresses.remote-builder.ip;
|
|
in {
|
|
nix.distributedBuilds = true;
|
|
nix.settings.builders-use-substitutes = true;
|
|
nix.settings.max-jobs = 0;
|
|
nix.settings.trusted-substituters = ["ssh://${remoteMachineIp}"];
|
|
nix.settings.substituters = ["ssh://${remoteMachineIp}"];
|
|
|
|
nix.buildMachines = [
|
|
{
|
|
hostName = "remotebuild@${remoteMachineIp}";
|
|
speedFactor = 1;
|
|
maxJobs = 10;
|
|
sshKey = "/root/.ssh/remotebuild";
|
|
system = pkgs.stdenv.hostPlatform.system;
|
|
supportedFeatures = ["nixos-test" "benchmark" "big-parallel" "kvm"];
|
|
}
|
|
];
|
|
programs.ssh.extraConfig = ''
|
|
Host ${remoteMachineIp}
|
|
Port 22
|
|
User remotebuild
|
|
IdentitiesOnly yes
|
|
IdentityFile /root/.ssh/remotebuild
|
|
'';
|
|
sops.secrets = {
|
|
"ssh_keys/root/remotebuild" = {
|
|
path = "/root/.ssh/remotebuild";
|
|
};
|
|
};
|
|
}
|