diff options
author | Robert Hensing <robert@roberthensing.nl> | 2023-06-16 21:28:06 +0200 |
---|---|---|
committer | Robert Hensing <robert@roberthensing.nl> | 2023-06-16 21:46:26 +0200 |
commit | a742767bafecf0644585309b744e24f90cdff207 (patch) | |
tree | 370f787aa05693d25be822ed83d322e64576aa38 /nixos/modules/misc | |
parent | eaebbdf59ac1c9dd72011854d8bbad18b22e4cff (diff) | |
download | nixpkgs-a742767bafecf0644585309b744e24f90cdff207.tar nixpkgs-a742767bafecf0644585309b744e24f90cdff207.tar.gz nixpkgs-a742767bafecf0644585309b744e24f90cdff207.tar.bz2 nixpkgs-a742767bafecf0644585309b744e24f90cdff207.tar.lz nixpkgs-a742767bafecf0644585309b744e24f90cdff207.tar.xz nixpkgs-a742767bafecf0644585309b744e24f90cdff207.tar.zst nixpkgs-a742767bafecf0644585309b744e24f90cdff207.zip |
nixos/nixpkgs: Make default Nixpkgs lazy when overridden
Diffstat (limited to 'nixos/modules/misc')
-rw-r--r-- | nixos/modules/misc/nixpkgs.nix | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/nixos/modules/misc/nixpkgs.nix b/nixos/modules/misc/nixpkgs.nix index 55ec08acf44..8a20e31d513 100644 --- a/nixos/modules/misc/nixpkgs.nix +++ b/nixos/modules/misc/nixpkgs.nix @@ -337,7 +337,15 @@ in config = { _module.args = { - pkgs = finalPkgs.__splicedPackages; + pkgs = + # We explicitly set the default override priority, so that we do not need + # to evaluate finalPkgs in case an override is placed on `_module.args.pkgs`. + # After all, to determine a definition priority, we need to evaluate `._type`, + # which is somewhat costly for Nixpkgs. With an explicit priority, we only + # evaluate the wrapper to find out that the priority is lower, and then we + # don't need to evaluate `finalPkgs`. + lib.mkOverride lib.modules.defaultOverridePriority + finalPkgs.__splicedPackages; }; assertions = [ |