diff options
author | Frederik Rietdijk <freddyrietdijk@fridh.nl> | 2017-12-11 09:45:50 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-11 09:45:50 +0100 |
commit | 44f46a32930b08fcdf42e3670d5c476e191be1a5 (patch) | |
tree | c1bd997404a4d71e78ec16d1ba12a8e027b8c3d2 /pkgs/development/interpreters | |
parent | 9f1ab7cac7186adb1494e0ac31b7da2419f98cdd (diff) | |
parent | d945b3e53b14b7e09229e26d5e343482be1dd3e5 (diff) | |
download | nixlib-44f46a32930b08fcdf42e3670d5c476e191be1a5.tar nixlib-44f46a32930b08fcdf42e3670d5c476e191be1a5.tar.gz nixlib-44f46a32930b08fcdf42e3670d5c476e191be1a5.tar.bz2 nixlib-44f46a32930b08fcdf42e3670d5c476e191be1a5.tar.lz nixlib-44f46a32930b08fcdf42e3670d5c476e191be1a5.tar.xz nixlib-44f46a32930b08fcdf42e3670d5c476e191be1a5.tar.zst nixlib-44f46a32930b08fcdf42e3670d5c476e191be1a5.zip |
Merge pull request #32542 from FRidh/bytecode
buildPythonPackage: remove bytecode from bin folder
Diffstat (limited to 'pkgs/development/interpreters')
-rw-r--r-- | pkgs/development/interpreters/python/mk-python-derivation.nix | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/pkgs/development/interpreters/python/mk-python-derivation.nix b/pkgs/development/interpreters/python/mk-python-derivation.nix index a0cac7d1ddda..1fd6745093bb 100644 --- a/pkgs/development/interpreters/python/mk-python-derivation.nix +++ b/pkgs/development/interpreters/python/mk-python-derivation.nix @@ -40,6 +40,12 @@ # Skip wrapping of python programs altogether , dontWrapPythonPrograms ? 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. +# However, some packages do provide executables with extensions, and thus bytecode is generated. +, removeBinBytecode ? true + , meta ? {} , passthru ? {} @@ -77,6 +83,11 @@ python.stdenv.mkDerivation (builtins.removeAttrs attrs [ postFixup = lib.optionalString (!dontWrapPythonPrograms) '' wrapPythonPrograms + '' + lib.optionalString removeBinBytecode '' + if [ -d "$out/bin" ]; then + rm -rf "$out/bin/__pycache__" # Python 3 + find "$out/bin" -type f -name "*.pyc" -delete # Python 2 + fi '' + lib.optionalString catchConflicts '' # Check if we have two packages with the same name in the closure and fail. # If this happens, something went wrong with the dependencies specs. |