pkgs/top-level/stage.nix: don't override overlays and config in nixpkgsFun
`nixpkgsFun` already sets them via `args`. Doing this also introduces unexpected hard to debug errors, see the patch.
This commit is contained in:
@@ -98,6 +98,14 @@ in let
|
||||
# compiling toolchains and 32-bit packages on x86_64). In both those cases we
|
||||
# want the provided non-native `localSystem` argument to affect the stdenv
|
||||
# chosen.
|
||||
#
|
||||
# NB!!! This thing gets its `config` argument from `args`, i.e. it's actually
|
||||
# `config0`. It is important to keep it to `config0` format (as opposed to the
|
||||
# result of `evalModules`, i.e. the `config` variable above) throughout all
|
||||
# nixpkgs evaluations since the above function `config0 -> config` implemented
|
||||
# via `evalModules` is not idempotent. In other words, if you add `config` to
|
||||
# `newArgs`, expect strange very hard to debug errors! (Yes, I'm speaking from
|
||||
# experience here.)
|
||||
nixpkgsFun = newArgs: import ./. (args // newArgs);
|
||||
|
||||
# Partially apply some arguments for building bootstraping stage pkgs
|
||||
|
||||
Reference in New Issue
Block a user