summary refs log tree commit diff
diff options
context:
space:
mode:
authorGuillaume Girol <symphorien@users.noreply.github.com>2021-12-10 20:29:30 +0000
committerGitHub <noreply@github.com>2021-12-10 20:29:30 +0000
commit4a8f9970e29aa8aa32f157194397c8db8b47d821 (patch)
tree0c6f7656ad2631310256f14429d496a1a9e4f972
parentb6bf1ca717b0ead86769102c2e94d591cc45ee9b (diff)
parent706988fd4937048d30c52f3251965445e133fa76 (diff)
downloadnixpkgs-4a8f9970e29aa8aa32f157194397c8db8b47d821.tar
nixpkgs-4a8f9970e29aa8aa32f157194397c8db8b47d821.tar.gz
nixpkgs-4a8f9970e29aa8aa32f157194397c8db8b47d821.tar.bz2
nixpkgs-4a8f9970e29aa8aa32f157194397c8db8b47d821.tar.lz
nixpkgs-4a8f9970e29aa8aa32f157194397c8db8b47d821.tar.xz
nixpkgs-4a8f9970e29aa8aa32f157194397c8db8b47d821.tar.zst
nixpkgs-4a8f9970e29aa8aa32f157194397c8db8b47d821.zip
Merge pull request #147544 from cab404/fix-stdenv-override
stdenv: move overriden stdenv in closure
-rw-r--r--.github/CODEOWNERS2
-rw-r--r--pkgs/stdenv/generic/default.nix13
2 files changed, 8 insertions, 7 deletions
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index d85ff2d08a5..3e527f9529e 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -39,7 +39,7 @@
 /pkgs/top-level/stage.nix                        @nbp @Ericson2314 @matthewbauer
 /pkgs/top-level/splice.nix                       @Ericson2314 @matthewbauer
 /pkgs/top-level/release-cross.nix                @Ericson2314 @matthewbauer
-/pkgs/stdenv/generic                             @Ericson2314 @matthewbauer
+/pkgs/stdenv/generic                             @Ericson2314 @matthewbauer @cab404
 /pkgs/stdenv/cross                               @Ericson2314 @matthewbauer
 /pkgs/build-support/cc-wrapper                   @Ericson2314 @orivej
 /pkgs/build-support/bintools-wrapper             @Ericson2314 @orivej
diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix
index d7fb1b0ba06..49ebc67f854 100644
--- a/pkgs/stdenv/generic/default.nix
+++ b/pkgs/stdenv/generic/default.nix
@@ -1,6 +1,6 @@
-let lib = import ../../../lib; in lib.makeOverridable (
+let lib = import ../../../lib; stdenv-overridable = lib.makeOverridable (
 
-{ name ? "stdenv", preHook ? "", initialPath
+argsStdenv@{ name ? "stdenv", preHook ? "", initialPath
 
 , # If we don't have a C compiler, we might either have `cc = null` or `cc =
   # throw ...`, but if we do have a C compiler we should definiely have `cc !=
@@ -81,8 +81,10 @@ let
 
   defaultBuildInputs = extraBuildInputs;
 
+  stdenv = (stdenv-overridable argsStdenv);
+
   # The stdenv that we are producing.
-  stdenv =
+  in
     derivation (
     lib.optionalAttrs (allowedRequisites != null) {
       allowedRequisites = allowedRequisites
@@ -172,6 +174,5 @@ let
     # "lift" packages like curl from the final stdenv for Linux to
     # all-packages.nix for that platform (meaning that it has a line
     # like curl = if stdenv ? curl then stdenv.curl else ...).
-    // extraAttrs;
-
-in stdenv)
+    // extraAttrs
+); in stdenv-overridable