forked from aylac.top/nixcfg
this repo has no description
at main 1.1 kB view raw
1{ 2 config, 3 lib, 4 pkgs, 5 inputs, 6 ... 7}: let 8 flakeInputs = lib.filterAttrs (name: value: (lib.isType "flake" value) && (name != "self")) inputs; 9in { 10 options.myNixOS.programs.nix.enable = lib.mkEnableOption "sane nix configuration"; 11 12 config = lib.mkIf config.myNixOS.programs.nix.enable { 13 nix = { 14 package = pkgs.nixVersions.latest; 15 16 gc = { 17 automatic = true; 18 19 options = "--delete-older-than 3d"; 20 21 persistent = true; 22 randomizedDelaySec = "60min"; 23 }; 24 25 optimise = { 26 automatic = true; 27 persistent = true; 28 randomizedDelaySec = "60min"; 29 }; 30 31 # https://github.com/isabelroses/dotfiles/blob/main/modules/base/nix/nix.nix#L34-L38 32 # pin the registry to avoid downloading and evaluating a new nixpkgs version everytime 33 registry = 34 (lib.mapAttrs (_: flake: {inherit flake;}) flakeInputs) 35 // { 36 # https://github.com/NixOS/nixpkgs/pull/388090 37 nixpkgs = lib.mkForce {flake = inputs.nixpkgs;}; 38 }; 39 40 inherit (config.mySnippets.nix) settings; 41 }; 42 }; 43}