From ee2beea6803d560c12f54b7352df924544f6f359 Mon Sep 17 00:00:00 2001 From: Gerg-L Date: Sun, 18 Jun 2023 10:17:52 -0400 Subject: [PATCH] got substituting to work along with remote building --- modules/builders.nix | 59 ++++++++++++++++++++++----------- systems/moms-laptop/default.nix | 7 ++++ 2 files changed, 46 insertions(+), 20 deletions(-) diff --git a/modules/builders.nix b/modules/builders.nix index 38c7a46..3c28a64 100644 --- a/modules/builders.nix +++ b/modules/builders.nix @@ -16,6 +16,9 @@ keep-derivations = false; builders-use-substitutes = true; max-jobs = 0; + substituters = ["ssh-ng://nix-ssh@gerg-desktop" "https://cache.nixos.org/"]; + trusted-public-keys = ["gerg-desktop:6p1+h6jQnb1MOt3ra3PlQpfgEEF4zRrQWiEuAqcjBj8=" "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="]; + secret-key-files = "/persist/cache-keys/cache-priv-key.pem"; }; distributedBuilds = true; buildMachines = [ @@ -39,26 +42,42 @@ }; } ) - (lib.mkIf config.localModules.remoteBuild.isBuilder { - users = { - groups.builder = {}; - users.builder = { - createHome = false; - isSystemUser = true; - openssh.authorizedKeys.keys = [ - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIq9YTf4jlVCKBKn44m4yJvj94C7pTOyaa4VjZFohNqD root@mom-laptop" - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJUKHZasYQUAmRBiqtx1drDxfq18/N4rKydCtPHx461I root@game-laptop" - ]; - useDefaultShell = true; - group = "builder"; - }; - }; - nix.settings = { - trusted-users = ["builder"]; - keep-outputs = true; - keep-derivations = true; - }; - }) + ( + let + keys = [ + "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIq9YTf4jlVCKBKn44m4yJvj94C7pTOyaa4VjZFohNqD root@mom-laptop" + "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJUKHZasYQUAmRBiqtx1drDxfq18/N4rKydCtPHx461I root@game-laptop" + ]; + in + lib.mkIf + config.localModules.remoteBuild.isBuilder + { + users = { + groups.builder = {}; + users.builder = { + createHome = false; + isSystemUser = true; + openssh.authorizedKeys = {inherit keys;}; + useDefaultShell = true; + group = "builder"; + }; + }; + + nix = { + settings = { + trusted-users = ["builder" "nix-ssh"]; + keep-outputs = true; + keep-derivations = true; + }; + sshServe = { + enable = true; + write = true; + inherit keys; + protocol = "ssh-ng"; + }; + }; + } + ) ]; } diff --git a/systems/moms-laptop/default.nix b/systems/moms-laptop/default.nix index 06c3523..82c0e8f 100644 --- a/systems/moms-laptop/default.nix +++ b/systems/moms-laptop/default.nix @@ -74,4 +74,11 @@ ]; system.stateVersion = "23.05"; + + swapDevices = [ + { + device = "/swapfile"; + size = 8 * 1024; + } + ]; }