# Author: Karl Trygve Kalleberg <karltk@gentoo.org>
# Rewritten from the old, Perl-based emerge-webrsync script
-eval $("@PORTAGE_BASE@"/bin/portageq envvar -v FEATURES FETCHCOMMAND \
- GENTOO_MIRRORS PORTAGE_INST_UID PORTAGE_INST_GID PORTAGE_NICENESS \
+type portageq > /dev/null || exit $?
+eval $(portageq envvar -v FEATURES FETCHCOMMAND GENTOO_MIRRORS \
+ PORTAGE_BIN_PATH PORTAGE_INST_UID PORTAGE_INST_GID PORTAGE_NICENESS \
PORTAGE_TMPDIR PORTDIR PORTAGE_RSYNC_EXTRA_OPTS EPREFIX)
DISTDIR="${PORTAGE_TMPDIR}/emerge-webrsync"
renice $PORTAGE_NICENESS $$ > /dev/null
fi
-source "@PORTAGE_BASE@"/bin/isolated-functions.sh || exit 1
+source "${PORTAGE_BIN_PATH}"/isolated-functions.sh || exit 1
if [ ! -d $DISTDIR ] ; then
mkdir -p $DISTDIR
trap die term
-
-eval $(@PORTAGE_BASE@/bin/portageq envvar -v CONFIG_PROTECT \
- CONFIG_PROTECT_MASK PORTAGE_CONFIGROOT PORTAGE_TMPDIR ROOT \
- USERLAND EPREFIX)
+type portageq > /dev/null || exit $?
+eval $(portageq envvar -v CONFIG_PROTECT \
+ CONFIG_PROTECT_MASK PORTAGE_CONFIGROOT PORTAGE_TMPDIR ROOT USERLAND EPREFIX)
export PORTAGE_TMPDIR
export EROOT=${ROOT%/}${EPREFIX}/
die "Failed to create tarball"
cd ..
export PYTHONPATH=${PORTAGE_PYM_PATH:-${EPREFIX}/usr/lib/portage/pym}
- python -c "import portage.xpak; t=portage.xpak.tbz2('${pkg_tmp}'); t.recompose('${PORTAGE_BUILDDIR}/build-info')"
+ python -c "from portage import xpak; t=xpak.tbz2('${pkg_tmp}'); t.recompose('${PORTAGE_BUILDDIR}/build-info')"
if [ $? -ne 0 ]; then
rm -f "${pkg_tmp}"
die "Failed to append metadata to the tbz2 file"
done
[[ ${SET_X} == "yes" ]] && set -x
-case ${NOCOLOR:-false} in
- yes|true) unset_colors;;
- no|false) set_colors;;
-esac
+source "${PORTAGE_BIN_PATH}/isolated-functions.sh"
# here we make a package given a little info
# $1 = package-name w/version
from portage.checksum import perform_md5
-from portage.const import CACHE_PATH, CONFIG_MEMORY_FILE, PRIVATE_PATH, VDB_PATH, EPREFIX
+from portage.const import CACHE_PATH, CONFIG_MEMORY_FILE, PORTAGE_BIN_PATH, \
+ PRIVATE_PATH, VDB_PATH, EPREFIX
from portage.data import portage_gid, portage_uid, secpass
from portage.dbapi import dbapi
from portage.dep import dep_getslot, use_reduce, paren_reduce, isvalidatom, \
except Exception, e:
writemsg("!!! COUNTER file is missing for "+str(mycpv)+" in /var/db.\n",
noiselevel=-1)
- writemsg("!!! Please run /usr/lib/portage/bin/fix-db.py or\n",
+ writemsg("!!! Please run %s/fix-db.py or\n" % PORTAGE_BIN_PATH,
noiselevel=-1)
writemsg("!!! unmerge this exact version.\n", noiselevel=-1)
writemsg("!!! %s\n" % e, noiselevel=-1)
else:
writemsg("!!! COUNTER file is missing for "+str(mycpv)+" in /var/db.\n",
noiselevel=-1)
- writemsg("!!! Please run /usr/lib/portage/bin/fix-db.py or\n",
+ writemsg("!!! Please run %s/fix-db.py or\n" % PORTAGE_BIN_PATH,
noiselevel=-1)
writemsg("!!! remerge the package.\n", noiselevel=-1)
sys.exit(1)
writemsg(".")
else:
reported_waiting = True
+ from portage.const import PORTAGE_BIN_PATH
print
print "Waiting on (hardlink) lockfile: (one '.' per 3 seconds)"
print "This is a feature to prevent distfiles corruption."
- print "%s/bin/clean_locks can fix stuck locks." % portage.const.PORTAGE_BASE
+ print "%s/clean_locks can fix stuck locks." % PORTAGE_BIN_PATH
print "Lockfile: " + lockfilename
time.sleep(3)