import portage
from portage import os
from portage import digraph
- from portage import _unicode_decode
+ from portage import _unicode_decode, _unicode_encode
from portage.cache.cache_errors import CacheError
-from portage.const import NEWS_LIB_PATH
+from portage.const import NEWS_LIB_PATH, EPREFIX
from portage.dbapi.dep_expand import dep_expand
from portage.output import blue, bold, colorize, create_color_func, darkgreen, \
red, yellow
except KeyError:
pass
-_portage_uname = os.environ.get('PORTAGE_USERNAME', 'portage')
-_portage_grpname = os.environ.get('PORTAGE_GRPNAME', 'portage')
+ # Allow the overriding of the user used for 'userpriv' and 'userfetch'
++_portage_uname = os.environ.get('PORTAGE_USERNAME', PORTAGE_USERNAME)
++_portage_grpname = os.environ.get('PORTAGE_GRPNAME', PORTAGE_GROUPNAME)
+
#Discover the uid and gid of the portage user/group
try:
- portage_uid=pwd.getpwnam(PORTAGE_USERNAME)[2]
- portage_gid=grp.getgrnam(PORTAGE_GROUPNAME)[2]
+ portage_uid = pwd.getpwnam(_portage_uname)[2]
+ portage_gid = grp.getgrnam(_portage_grpname)[2]
if secpass < 1 and portage_gid in os.getgroups():
secpass=1
except KeyError:
from portage.const import CACHE_PATH, CUSTOM_PROFILE_PATH, \
DEPCACHE_PATH, GLOBAL_CONFIG_PATH, INCREMENTALS, MAKE_CONF_FILE, \
MODULES_FILE_PATH, PORTAGE_BIN_PATH, PORTAGE_PYM_PATH, \
- PRIVATE_PATH, PROFILE_PATH, USER_CONFIG_PATH, USER_VIRTUALS_FILE, \
+ PRIVATE_PATH, PROFILE_PATH, SUPPORTED_FEATURES, USER_CONFIG_PATH, \
- USER_VIRTUALS_FILE
++ USER_VIRTUALS_FILE, \
+ EPREFIX, EPREFIX_LSTRIP, BPREFIX
from portage.data import portage_gid
from portage.dbapi import dbapi
from portage.dbapi.porttree import portdbapi
from portage import auxdbkeys, bsd_chflags, dep_check, \
eapi_is_supported, merge, os, selinux, StringIO, \
unmerge, _encodings, _parse_eapi_ebuild_head, _os_merge, \
- _shell_quote, _split_ebuild_name_glep55, _unicode_decode, _unicode_encode
+ _shell_quote, _unicode_decode, _unicode_encode
from portage.const import EBUILD_SH_ENV_FILE, EBUILD_SH_ENV_DIR, \
- EBUILD_SH_BINARY, INVALID_ENV_FILE, MISC_SH_BINARY
+ EBUILD_SH_BINARY, INVALID_ENV_FILE, MISC_SH_BINARY, \
+ EPREFIX, EPREFIX_LSTRIP
from portage.data import portage_gid, portage_uid, secpass, \
uid, userpriv_groups
from portage.dbapi.virtual import fakedbapi