)
PYTHON_REQ_USE='bzip2(+),threads(+)'
-inherit distutils-r1 git-r3 linux-info systemd
+inherit distutils-r1 git-r3 linux-info systemd prefix
DESCRIPTION="Portage is the package management and distribution system for Gentoo"
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage"
if [[ -n ${EPREFIX} ]] ; then
einfo "Setting portage.const.EPREFIX ..."
- sed -e "s|^\(SANDBOX_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/sandbox\"\)|\\1${EPREFIX}\\2|" \
- -e "s|^\(FAKEROOT_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/fakeroot\"\)|\\1${EPREFIX}\\2|" \
- -e "s|^\(BASH_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/bash\"\)|\\1${EPREFIX}\\2|" \
- -e "s|^\(MOVE_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/mv\"\)|\\1${EPREFIX}\\2|" \
- -e "s|^\(PRELINK_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/sbin/prelink\"\)|\\1${EPREFIX}\\2|" \
- -e "s|^\(EPREFIX[[:space:]]*=[[:space:]]*\"\).*|\\1${EPREFIX}\"|" \
- -i lib/portage/const.py || \
- die "Failed to patch portage.const.EPREFIX"
+ hprefixify -e "s|^(EPREFIX[[:space:]]*=[[:space:]]*\").*|\1${EPREFIX}\"|" \
+ -w "/_BINARY/" lib/portage/const.py
einfo "Prefixing shebangs ..."
while read -r -d $'\0' ; do
sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "$REPLY" || \
die "sed failed"
fi
- done < <(find . -type f -print0)
+ done < <(find . -type f ! -name etc-update -print0)
- einfo "Adjusting make.globals ..."
- sed -e "s|\(/usr/portage\)|${EPREFIX}\\1|" \
- -e "s|^\(PORTAGE_TMPDIR=\"\)\(/var/tmp\"\)|\\1${EPREFIX}\\2|" \
- -i cnf/make.globals || die "sed failed"
+ einfo "Adjusting make.globals, repos.conf and etc-update ..."
+ hprefixify cnf/{make.globals,repos.conf} bin/etc-update
- einfo "Adjusting repos.conf ..."
- sed -e "s|^\(location = \)\(/usr/portage\)|\\1${EPREFIX}\\2|" \
- -e "s|^\(sync-openpgp-key-path = \)\(.*\)|\\1${EPREFIX}\\2|" \
- -i cnf/repos.conf || die "sed failed"
if prefix-guest ; then
sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \
-e "s|^\\[gentoo\\]|[gentoo_prefix]|" \