From 13fb2f08dc9511aae71dd4d570cf728bb23fe2f0 Mon Sep 17 00:00:00 2001 From: Eman Resu <78693624+quatquatt@users.noreply.github.com> Date: Sat, 9 May 2026 20:32:15 -0400 Subject: [PATCH] stdenv.mkDerivation: inherit all lib variables --- pkgs/stdenv/generic/make-derivation.nix | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/pkgs/stdenv/generic/make-derivation.nix b/pkgs/stdenv/generic/make-derivation.nix index bc8522a5cfec..d5272a522b05 100644 --- a/pkgs/stdenv/generic/make-derivation.nix +++ b/pkgs/stdenv/generic/make-derivation.nix @@ -18,6 +18,7 @@ let concatLists concatMap concatMapStrings + concatMapStringsSep concatStringsSep elem extendDerivation @@ -41,14 +42,19 @@ let optionals pipe remove + seq splitString subtractLists + toExtension toFunction unique + warnIf zipAttrsWith - seq ; + inherit (lib.generators) toPretty; + inherit (lib.strings) sanitizeDerivationName; + inherit (import ../../build-support/lib/cmake.nix { inherit lib stdenv; }) makeCMakeFlags; inherit (import ../../build-support/lib/meson.nix { inherit lib stdenv; }) makeMesonFlags; @@ -101,10 +107,10 @@ let final: let prev = rattrs final; - thisOverlay = lib.toExtension f0 final prev; + thisOverlay = toExtension f0 final prev; pos = builtins.unsafeGetAttrPos "version" thisOverlay; in - lib.warnIf + warnIf ( prev ? src && thisOverlay ? version @@ -482,7 +488,7 @@ let if erroneousHardeningFlags != [ ] then abort ( "mkDerivation was called with unsupported hardening flags: " - + lib.generators.toPretty { } { + + toPretty { } { inherit erroneousHardeningFlags hardeningDisable @@ -636,7 +642,7 @@ let # it again. staticMarker = stdenvStaticMarker; in - lib.strings.sanitizeDerivationName ( + sanitizeDerivationName ( if attrs ? name then attrs.name + hostSuffix else @@ -953,10 +959,10 @@ let (overlappingArgs == { }) || throw ( let - errors = lib.concatMapStringsSep "\n" ( + errors = concatMapStringsSep "\n" ( name: - " - ${name}: in `env`: ${lib.generators.toPretty { } env'.${name}}; in derivation arguments: ${ - lib.generators.toPretty { } derivationArg.${name} + " - ${name}: in `env`: ${toPretty { } env'.${name}}; in derivation arguments: ${ + toPretty { } derivationArg.${name} }" ) (attrNames overlappingArgs);