From 0045164b1517419fdfbd3c5cec2eadb7aae9088a Mon Sep 17 00:00:00 2001 From: Tom McLaughlin Date: Wed, 21 Nov 2018 23:20:38 -0700 Subject: Add flag to disable PYTHONNOUSERSITE for wrapped python binaries --- pkgs/development/interpreters/python/mk-python-derivation.nix | 4 ++++ pkgs/development/interpreters/python/wrap.sh | 5 ++++- 2 files changed, 8 insertions(+), 1 deletion(-) (limited to 'pkgs/development/interpreters') diff --git a/pkgs/development/interpreters/python/mk-python-derivation.nix b/pkgs/development/interpreters/python/mk-python-derivation.nix index 4951ae4499f8..46ba7765cdcc 100644 --- a/pkgs/development/interpreters/python/mk-python-derivation.nix +++ b/pkgs/development/interpreters/python/mk-python-derivation.nix @@ -46,6 +46,9 @@ # Skip wrapping of python programs altogether , dontWrapPythonPrograms ? false +# Skip setting the PYTHONNOUSERSITE environment variable in wrapped programs +, skipNoUserSite ? false + # Remove bytecode from bin folder. # When a Python script has the extension `.py`, bytecode is generated # Typically, executables in bin have no extension, so no bytecode is generated. @@ -93,6 +96,7 @@ let self = toPythonModule (python.stdenv.mkDerivation (builtins.removeAttrs attr installCheckInputs = checkInputs; postFixup = lib.optionalString (!dontWrapPythonPrograms) '' + ${if skipNoUserSite then "export SKIPNOUSERSITE=1" else ""} wrapPythonPrograms '' + lib.optionalString removeBinBytecode '' if [ -d "$out/bin" ]; then diff --git a/pkgs/development/interpreters/python/wrap.sh b/pkgs/development/interpreters/python/wrap.sh index b2d65422db45..d779826cf81a 100644 --- a/pkgs/development/interpreters/python/wrap.sh +++ b/pkgs/development/interpreters/python/wrap.sh @@ -73,9 +73,12 @@ wrapPythonProgramsIn() { # (see pkgs/build-support/setup-hooks/make-wrapper.sh) local -a wrap_args=("$f" --prefix PATH ':' "$program_PATH" - --set PYTHONNOUSERSITE "true" ) + if [ -z "$SKIPNOUSERSITE" ]; then + wrap_args+=(--set PYTHONNOUSERSITE "true") + fi + # Add any additional arguments provided by makeWrapperArgs # argument to buildPythonPackage. local -a user_args="($makeWrapperArgs)" -- cgit 1.4.1