diff --git a/00251-change-user-install-location.patch b/00251-change-user-install-location.patch index 1dcd9f2..4104449 100644 --- a/00251-change-user-install-location.patch +++ b/00251-change-user-install-location.patch @@ -1,19 +1,20 @@ diff --git a/Lib/distutils/command/install.py b/Lib/distutils/command/install.py -index 9d31d13..ed44a93 100644 +index 0258d3d..4ebf50a 100644 --- a/Lib/distutils/command/install.py +++ b/Lib/distutils/command/install.py -@@ -424,8 +424,18 @@ class install(Command): +@@ -418,8 +418,19 @@ class install(Command): raise DistutilsOptionError( "must not supply exec-prefix without prefix") - self.prefix = os.path.normpath(sys.prefix) - self.exec_prefix = os.path.normpath(sys.exec_prefix) + # self.prefix is set to sys.prefix + /local/ -+ # if the executable is /usr/bin/python* and RPM build -+ # is not detected to make pip and distutils install into -+ # the separate location. -+ if (sys.executable.startswith("/usr/bin/python") -+ and 'RPM_BUILD_ROOT' not in os.environ): ++ # if neither RPM build nor virtual environment is ++ # detected to make pip and distutils install packages ++ # into the separate location. ++ if (not (hasattr(sys, 'real_prefix') or ++ sys.prefix != sys.base_prefix) and ++ 'RPM_BUILD_ROOT' not in os.environ): + addition = "/local" + else: + addition = "" @@ -24,22 +25,21 @@ index 9d31d13..ed44a93 100644 else: if self.exec_prefix is None: diff --git a/Lib/site.py b/Lib/site.py -index 4744eb0..b5fe571 100644 +index 0fc9200..c95202e 100644 --- a/Lib/site.py +++ b/Lib/site.py -@@ -326,7 +326,15 @@ def getsitepackages(prefixes=None): +@@ -322,7 +322,14 @@ def getsitepackages(prefixes=None): return sitepackages def addsitepackages(known_paths, prefixes=None): - """Add site-packages to sys.path""" -+ """Add site-packages to sys.path. ++ """Add site-packages to sys.path + -+ '/usr/local' is included in PREFIXES if the executable is /usr/bin/python* -+ and RPM build is not detected to make sudo pip installed packages visible. ++ '/usr/local' is included in PREFIXES if RPM build is not detected ++ to make packages installed into this location visible. + + """ -+ if (ENABLE_USER_SITE and sys.executable.startswith("/usr/bin/python") -+ and 'RPM_BUILD_ROOT' not in os.environ): ++ if ENABLE_USER_SITE and 'RPM_BUILD_ROOT' not in os.environ: + PREFIXES.insert(0, "/usr/local") for sitedir in getsitepackages(prefixes): if os.path.isdir(sitedir): diff --git a/python3.spec b/python3.spec index 8765231..748e26d 100644 --- a/python3.spec +++ b/python3.spec @@ -14,7 +14,7 @@ URL: https://www.python.org/ # WARNING When rebasing to a new Python version, # remember to update the python3-docs package as well Version: %{pybasever}.4 -Release: 11%{?dist} +Release: 12%{?dist} License: Python @@ -1502,6 +1502,10 @@ CheckPython optimized # ====================================================== %changelog +* Fri Feb 02 2018 Michal Cyprian - 3.6.4-12 +- Remove sys.executable check from change-user-install-location patch +Resolves: rhbz#1532287 + * Thu Feb 01 2018 Charalampos Stratakis - 3.6.4-11 - Define TLS cipher suite on build time.