{ lib, pkgs, ... }: { clerie.nixfiles.enable = true; clerie.system-auto-upgrade.enable = true; nix.settings = { trusted-users = [ "@wheel" "@guests" ]; auto-optimise-store = true; # Keep buildtime dependencies keep-outputs = true; # Build local, when caches are broken fallback = true; }; nix.gc = lib.mkDefault { automatic = true; dates = "weekly"; options = "--delete-older-than 30d"; }; nix.settings = { experimental-features = [ "flakes" "nix-command" ]; substituters = [ "https://nix-cache.clerie.de" ]; trusted-public-keys = [ "nix-cache.clerie.de:bAt1GJTS9BOTcXFWj3nURrSlcjqikCev9yDvqArMP5g=" ]; }; # Pin current nixpkgs channel and flake registry to the nixpkgs version # the host got build with nix.nixPath = lib.mkForce [ "nixpkgs=${lib.cleanSource pkgs.path}" ]; nix.registry = { "nixpkgs" = lib.mkForce { from = { type = "indirect"; id = "nixpkgs"; }; to = { type = "path"; path = lib.cleanSource pkgs.path; }; exact = true; }; "templates" = { from = { type = "indirect"; id = "templates"; }; to = { type = "git"; url = "https://git.clerie.de/clerie/flake-templates.git"; }; }; }; nix.package = pkgs.nixVersions.nix_2_18; documentation.doc.enable = false; environment.systemPackages = with pkgs; [ nix-remove-result-links ]; }