diff --git a/pkgs/development/python-modules/generic/default.nix b/pkgs/development/python-modules/generic/default.nix index 6debcd818e5..45c8653bc19 100644 --- a/pkgs/development/python-modules/generic/default.nix +++ b/pkgs/development/python-modules/generic/default.nix @@ -38,6 +38,12 @@ , meta ? {} +# Execute before shell hook +, preShellHook ? "" + +# Execute after shell hook +, postShellHook ? "" + , ... } @ attrs: # Keep extra attributes from `attrs`, e.g., `patchPhase', etc. @@ -150,6 +156,16 @@ python.stdenv.mkDerivation (attrs // { done ''; + shellHook = attrs.shellHook or '' + mkdir -p /tmp/$name/lib/${python.libPrefix}/site-packages + ${preShellHook} + export PATH="/tmp/$name/bin:$PATH" + export PYTHONPATH="/tmp/$name/lib/${python.libPrefix}/site-packages:$PYTHONPATH" + python setup.py develop --prefix /tmp/$name + ${postShellHook} + return + ''; + meta = with lib.maintainers; { # default to python's platforms platforms = python.meta.platforms;