Merge pull request #241355 from NixOS/backport-241328-to-release-23.05

[Backport release-23.05] stdenv: fix overriding with attrset when finalAttrs isn't used
This commit is contained in:
Robert Hensing
2023-07-04 11:44:17 +02:00
committed by GitHub
2 changed files with 6 additions and 1 deletions

View File

@@ -62,7 +62,7 @@ let
f0 self super
else x;
in
makeDerivationExtensible (self: attrs // f self attrs))
makeDerivationExtensible (self: attrs // (if builtins.isFunction f0 || f0?__functor then f self attrs else f0)))
attrs;
mkDerivationSimple = overrideAttrs:

View File

@@ -26,6 +26,11 @@ let
expr = (pkgs.hello.overrideAttrs { pname = "hello-overriden"; }).pname == "hello-overriden";
expected = true;
})
({
name = "overriding-using-only-attrset-no-final-attrs";
expr = ((stdenvNoCC.mkDerivation { pname = "hello-no-final-attrs"; }).overrideAttrs { pname = "hello-no-final-attrs-overridden"; }).pname == "hello-no-final-attrs-overridden";
expected = true;
})
];
addEntangled = origOverrideAttrs: f: