Skip to content

Commit cce0f3f

Browse files
committed
buildPython*: bring back buildPython*.override
Fix `makeOverridablePythonPackage` in python-package-base.nix and unshadow `buildPython*.override`. This makes it possible to override the dependencies of buildPython*. E.g., `buildPythonPackage.override { unzip = unzip-custom; }` returns a derived version of `buildPythonPackage` with the `unzip` package overridden with `unzip-custom`.
1 parent 55d08bb commit cce0f3f

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

pkgs/development/interpreters/python/python-packages-base.nix

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,12 @@ let
3838
}
3939
else
4040
result
41-
);
41+
)
42+
// lib.optionalAttrs (f ? override) {
43+
# Support overriding `f` itself, e.g. `buildPythonPackage.override { }`.
44+
# Ensure `makeOverridablePythonPackage` is applied to the result.
45+
override = lib.mirrorFunctionArgs f.override (fdrv: makeOverridablePythonPackage (f.override fdrv));
46+
};
4247

4348
mkPythonDerivation =
4449
if python.isPy3k then ./mk-python-derivation.nix else ./python2/mk-python-derivation.nix;

0 commit comments

Comments
 (0)