diff options
author | Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org> | 2014-09-20 05:48:23 +0200 |
---|---|---|
committer | Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org> | 2014-09-20 05:48:23 +0200 |
commit | 5e3e84b4fc4dc75d520b8e0e894811e3e2c88f56 (patch) | |
tree | 163fb7a2d00d1060191766184ba2bb080d103bfb | |
parent | _solve_..slot_conflicts: fix bug #522084 (diff) | |
download | portage-5e3e84b4fc4dc75d520b8e0e894811e3e2c88f56.tar.gz portage-5e3e84b4fc4dc75d520b8e0e894811e3e2c88f56.tar.bz2 portage-5e3e84b4fc4dc75d520b8e0e894811e3e2c88f56.zip |
Update sys.path in scripts only when using not installed instance of Portage.
Modules of installed instance of Portage are now placed in standard location,
which is included in default sys.path.
-rwxr-xr-x | bin/archive-conf | 4 | ||||
-rwxr-xr-x | bin/binhost-snapshot | 4 | ||||
-rwxr-xr-x | bin/clean_locks | 4 | ||||
-rwxr-xr-x | bin/dispatch-conf | 4 | ||||
-rwxr-xr-x | bin/ebuild | 4 | ||||
-rwxr-xr-x | bin/ebuild-ipc.py | 20 | ||||
-rwxr-xr-x | bin/egencache | 4 | ||||
-rwxr-xr-x | bin/emaint | 4 | ||||
-rwxr-xr-x | bin/emerge | 5 | ||||
-rwxr-xr-x | bin/env-update | 4 | ||||
-rwxr-xr-x | bin/fixpackages | 4 | ||||
-rwxr-xr-x | bin/glsa-check | 4 | ||||
-rwxr-xr-x | bin/portageq | 22 | ||||
-rwxr-xr-x | bin/quickpkg | 4 | ||||
-rwxr-xr-x | bin/regenworld | 4 | ||||
-rwxr-xr-x | bin/repoman | 4 |
16 files changed, 54 insertions, 45 deletions
diff --git a/bin/archive-conf b/bin/archive-conf index f73ca425e..59350a0f8 100755 --- a/bin/archive-conf +++ b/bin/archive-conf @@ -14,8 +14,8 @@ from __future__ import print_function import sys from os import path as osp -pym_path = osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym") -sys.path.insert(0, pym_path) +if osp.isfile(osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), ".portage_not_installed")): + sys.path.insert(0, osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym")) import portage portage._internal_caller = True diff --git a/bin/binhost-snapshot b/bin/binhost-snapshot index c2204f03d..3a346431e 100755 --- a/bin/binhost-snapshot +++ b/bin/binhost-snapshot @@ -13,8 +13,8 @@ except ImportError: from urlparse import urlparse from os import path as osp -pym_path = osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym") -sys.path.insert(0, pym_path) +if osp.isfile(osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), ".portage_not_installed")): + sys.path.insert(0, osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym")) import portage portage._internal_caller = True from portage.util._argparse import ArgumentParser diff --git a/bin/clean_locks b/bin/clean_locks index 3e969f2c6..13af06197 100755 --- a/bin/clean_locks +++ b/bin/clean_locks @@ -6,8 +6,8 @@ from __future__ import print_function import sys, errno from os import path as osp -pym_path = osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym") -sys.path.insert(0, pym_path) +if osp.isfile(osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), ".portage_not_installed")): + sys.path.insert(0, osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym")) import portage portage._internal_caller = True diff --git a/bin/dispatch-conf b/bin/dispatch-conf index 4b0c0ac8f..fb0a8afb4 100755 --- a/bin/dispatch-conf +++ b/bin/dispatch-conf @@ -17,8 +17,8 @@ from stat import ST_GID, ST_MODE, ST_UID from random import random import atexit, re, shutil, stat, sys from os import path as osp -pym_path = osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym") -sys.path.insert(0, pym_path) +if osp.isfile(osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), ".portage_not_installed")): + sys.path.insert(0, osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym")) import portage portage._internal_caller = True from portage import os diff --git a/bin/ebuild b/bin/ebuild index 8f4b103c6..02ee02298 100755 --- a/bin/ebuild +++ b/bin/ebuild @@ -38,8 +38,8 @@ signal.signal(debug_signum, debug_signal) import io import os from os import path as osp -pym_path = osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym") -sys.path.insert(0, pym_path) +if osp.isfile(osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), ".portage_not_installed")): + sys.path.insert(0, osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym")) import portage portage._internal_caller = True from portage import os diff --git a/bin/ebuild-ipc.py b/bin/ebuild-ipc.py index 00337ee22..3e6d90c61 100755 --- a/bin/ebuild-ipc.py +++ b/bin/ebuild-ipc.py @@ -24,15 +24,21 @@ else: signal.signal(debug_signum, debug_signal) -# Avoid sandbox violations after python upgrade. -pym_path = os.path.join(os.path.dirname( - os.path.dirname(os.path.realpath(__file__))), "pym") +if os.path.isfile(os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), ".portage_not_installed")): + pym_paths = [os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), "pym")] + sys.path.insert(0, pym_paths[0]) +else: + import distutils.sysconfig + pym_paths = [os.path.join(distutils.sysconfig.get_python_lib(), x) for x in ("_emerge", "portage")] +# Avoid sandbox violations after Python upgrade. if os.environ.get("SANDBOX_ON") == "1": sandbox_write = os.environ.get("SANDBOX_WRITE", "").split(":") - if pym_path not in sandbox_write: - sandbox_write.append(pym_path) - os.environ["SANDBOX_WRITE"] = \ - ":".join(filter(None, sandbox_write)) + for pym_path in pym_paths: + if pym_path not in sandbox_write: + sandbox_write.append(pym_path) + os.environ["SANDBOX_WRITE"] = ":".join(filter(None, sandbox_write)) + del pym_path, sandbox_write +del pym_paths import portage portage._internal_caller = True diff --git a/bin/egencache b/bin/egencache index c14be936b..e3660580f 100755 --- a/bin/egencache +++ b/bin/egencache @@ -41,8 +41,8 @@ import textwrap import re from os import path as osp -pym_path = osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym") -sys.path.insert(0, pym_path) +if osp.isfile(osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), ".portage_not_installed")): + sys.path.insert(0, osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym")) import portage portage._internal_caller = True from portage import os, _encodings, _unicode_encode, _unicode_decode diff --git a/bin/emaint b/bin/emaint index aeeb18328..a634c0ead 100755 --- a/bin/emaint +++ b/bin/emaint @@ -26,8 +26,8 @@ except KeyboardInterrupt: sys.exit(1) from os import path as osp -pym_path = osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym") -sys.path.insert(0, pym_path) +if osp.isfile(osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), ".portage_not_installed")): + sys.path.insert(0, osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym")) import portage portage._internal_caller = True from portage.emaint.main import emaint_main diff --git a/bin/emerge b/bin/emerge index 7773f7fe1..43cfdcddb 100755 --- a/bin/emerge +++ b/bin/emerge @@ -36,9 +36,8 @@ try: signal.signal(debug_signum, debug_signal) from os import path as osp - pym_path = osp.join(osp.dirname(osp.dirname( - osp.realpath(__file__))), "pym") - sys.path.insert(0, pym_path) + if osp.isfile(osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), ".portage_not_installed")): + sys.path.insert(0, osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym")) import portage portage._internal_caller = True portage._disable_legacy_globals() diff --git a/bin/env-update b/bin/env-update index 7651ef9c1..c43459bd7 100755 --- a/bin/env-update +++ b/bin/env-update @@ -26,8 +26,8 @@ if len(sys.argv) > 1: usage(1) from os import path as osp -pym_path = osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym") -sys.path.insert(0, pym_path) +if osp.isfile(osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), ".portage_not_installed")): + sys.path.insert(0, osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym")) import portage portage._internal_caller = True diff --git a/bin/fixpackages b/bin/fixpackages index cec0030f2..8a0c4448d 100755 --- a/bin/fixpackages +++ b/bin/fixpackages @@ -8,8 +8,8 @@ import os import sys from os import path as osp -pym_path = osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym") -sys.path.insert(0, pym_path) +if osp.isfile(osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), ".portage_not_installed")): + sys.path.insert(0, osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym")) import portage portage._internal_caller = True from portage import os diff --git a/bin/glsa-check b/bin/glsa-check index 972679a80..94dea7398 100755 --- a/bin/glsa-check +++ b/bin/glsa-check @@ -8,8 +8,8 @@ import sys import codecs from os import path as osp -pym_path = osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym") -sys.path.insert(0, pym_path) +if osp.isfile(osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), ".portage_not_installed")): + sys.path.insert(0, osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym")) import portage portage._internal_caller = True from portage import os diff --git a/bin/portageq b/bin/portageq index 79818f679..4d5cc197a 100755 --- a/bin/portageq +++ b/bin/portageq @@ -23,18 +23,22 @@ except KeyboardInterrupt: import os import types -# Avoid sandbox violations after python upgrade. -pym_path = os.path.join(os.path.dirname( - os.path.dirname(os.path.realpath(__file__))), "pym") +if os.path.isfile(os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), ".portage_not_installed")): + pym_paths = [os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), "pym")] + sys.path.insert(0, pym_paths[0]) +else: + import distutils.sysconfig + pym_paths = [os.path.join(distutils.sysconfig.get_python_lib(), x) for x in ("_emerge", "portage")] +# Avoid sandbox violations after Python upgrade. if os.environ.get("SANDBOX_ON") == "1": sandbox_write = os.environ.get("SANDBOX_WRITE", "").split(":") - if pym_path not in sandbox_write: - sandbox_write.append(pym_path) - os.environ["SANDBOX_WRITE"] = \ - ":".join(filter(None, sandbox_write)) - del sandbox_write + for pym_path in pym_paths: + if pym_path not in sandbox_write: + sandbox_write.append(pym_path) + os.environ["SANDBOX_WRITE"] = ":".join(filter(None, sandbox_write)) + del pym_path, sandbox_write +del pym_paths -sys.path.insert(0, pym_path) import portage portage._internal_caller = True from portage import os diff --git a/bin/quickpkg b/bin/quickpkg index 035131e98..cf75791b5 100755 --- a/bin/quickpkg +++ b/bin/quickpkg @@ -11,8 +11,8 @@ import sys import tarfile from os import path as osp -pym_path = osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym") -sys.path.insert(0, pym_path) +if osp.isfile(osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), ".portage_not_installed")): + sys.path.insert(0, osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym")) import portage portage._internal_caller = True from portage import os diff --git a/bin/regenworld b/bin/regenworld index 32e8e5c33..e07424df6 100755 --- a/bin/regenworld +++ b/bin/regenworld @@ -6,8 +6,8 @@ from __future__ import print_function import sys from os import path as osp -pym_path = osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym") -sys.path.insert(0, pym_path) +if osp.isfile(osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), ".portage_not_installed")): + sys.path.insert(0, osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym")) import portage portage._internal_caller = True from portage import os diff --git a/bin/repoman b/bin/repoman index 5a6ee5b1f..ddd2e9252 100755 --- a/bin/repoman +++ b/bin/repoman @@ -32,8 +32,8 @@ except ImportError: from urlparse import urlparse from os import path as osp -pym_path = osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym") -sys.path.insert(0, pym_path) +if osp.isfile(osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), ".portage_not_installed")): + sys.path.insert(0, osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), "pym")) import portage portage._internal_caller = True portage._disable_legacy_globals() |