From a547b3b04b7f16f225d248549a4cc16a91498254 Mon Sep 17 00:00:00 2001 From: Tom Alexander Date: Sat, 29 Nov 2025 23:08:03 -0500 Subject: [PATCH] Enable content-addressed derivations. ref: https://www.tweag.io/blog/2020-09-10-nix-cas/ --- nix/configuration/configuration.nix | 33 ++++++++++--------- .../roles/distributed_build/default.nix | 3 +- 2 files changed, 20 insertions(+), 16 deletions(-) diff --git a/nix/configuration/configuration.nix b/nix/configuration/configuration.nix index d1375bd..5815429 100644 --- a/nix/configuration/configuration.nix +++ b/nix/configuration/configuration.nix @@ -102,6 +102,9 @@ nix.settings.experimental-features = [ "nix-command" "flakes" + "ca-derivations" + # "blake3-hashes" + # "git-hashing" ]; nix.settings.trusted-users = [ "@wheel" ]; @@ -162,22 +165,22 @@ ); in [ - (final: prev: { - imagemagick = prev.imagemagick.overrideAttrs (old: rec { - # 7.1.2-6 seems to no longer exist, so use 7.1.2-7 - version = "7.1.2-7"; + # (final: prev: { + # imagemagick = prev.imagemagick.overrideAttrs (old: rec { + # # 7.1.2-6 seems to no longer exist, so use 7.1.2-7 + # version = "7.1.2-7"; - src = final.fetchFromGitHub { - owner = "ImageMagick"; - repo = "ImageMagick"; - tag = version; - hash = "sha256-9ARCYftoXiilpJoj+Y+aLCEqLmhHFYSrHfgA5DQHbGo="; - }; - }); - }) - (final: prev: { - grub2 = (final.callPackage ./package/grub { }); - }) + # src = final.fetchFromGitHub { + # owner = "ImageMagick"; + # repo = "ImageMagick"; + # tag = version; + # hash = "sha256-9ARCYftoXiilpJoj+Y+aLCEqLmhHFYSrHfgA5DQHbGo="; + # }; + # }); + # }) + # (final: prev: { + # grub2 = (final.callPackage ./package/grub { }); + # }) ]; # This option defines the first version of NixOS you have installed on this particular machine, diff --git a/nix/configuration/roles/distributed_build/default.nix b/nix/configuration/roles/distributed_build/default.nix index dc2d680..012d413 100644 --- a/nix/configuration/roles/distributed_build/default.nix +++ b/nix/configuration/roles/distributed_build/default.nix @@ -58,7 +58,8 @@ in { nix.distributedBuilds = true; - nix.settings.substituters = lib.mkForce [ "ssh://hydra" ]; + # https://nix.dev/manual/nix/2.32/store/types/ssh-store.html + nix.settings.substituters = lib.mkForce [ "ssh://hydra?compress=true&log-fd=2&max-connections=4" ]; nix.settings.substitute = lib.mkForce true; nix.settings.post-build-hook = pkgs.writeShellScript "post-build-hook" '' set -euo pipefail