···
+
flakeInputs = lib.filterAttrs (name: value: (value ? outputs) && (name != "self")) inputs;
# We use `nh.clean` instead, so this is disabled
+
registry = lib.mapAttrs (_: v: { flake = v; }) flakeInputs;
+
# Don't auto-accept flake-defined nix settings, they're a CVE waiting to happen.
+
accept-flake-config = false;
+
# Allow these users to access the daemon
+
allowed-users = userList;
+
# No pre-defined nixbld users
+
auto-allocate-uids = true;
+
# Always optimize the store
+
auto-optimise-store = true;
+
# Compress build logs to save space
+
compress-build-log = true;
+
# Use all available cores to build
+
experimental-features = [
+
# Use auto-generated uids instead of users in the nixbld group
+
# Can allow saving space in the store by content-addressing instead of input-addressing derivations
+
# Disallow URL Literals as they are deprecated
+
# Allow Nix to call itself
+
# Allow installables to be passed to `nix repl`
+
# Build from source if substitution fails
+
# Write an empty flake registry
+
flake-registry = pkgs.writers.writeJSON "registry-empty.json" {
+
# allow keeping direnv gc roots
+
keep-derivations = true;
+
# Keep going even if a build fails, so that all possible succeeding builds do
+
# More direnv gc root stuff
+
# Show fewer log lines from failed builds since I get them from nh
+
# Extra system features
+
# The pubkeys of the below substituters
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
"crane.cachix.org-1:8Scfpmn9w+hGdXH/Q9tTLiYAE/2dnJYRJP7kl80GuRk="
···
"viperml.cachix.org-1:qZhKBMTfmcLL+OG6fj/hzsMEedgKvZVFRRAhq7j8Vh8="
"cache.lix.systems:aBnZUw8zA7H35Cz2RyKFVs3H4PlGTLawyY5KRbvJR8o="
+
trusted-substituters = [
+
"https://cache.nixos.org"
+
"https://crane.cachix.org"
+
"https://isabelroses.cachix.org"
+
"https://nix-community.cachix.org"
+
"https://nixpkgs-wayland.cachix.org"
+
"https://viperml.cachix.org"
+
"https://cache.lix.systems"
+
# These users have additional daemon rights
+
trusted-users = userList;
+
# Use cgroups for building
+
# Allow use of the registry
+
# XDG base dirs to avoid cluttering $HOME
+
use-xdg-base-directories = true;
+
# I almost always work in a dirty tree, I know it's dirty