sys-apps/portage-mgorny: Bump to 2.3.24.4

This commit is contained in:
Michał Górny
2018-03-26 20:17:23 +02:00
parent 951209198d
commit d4377ff8aa
2 changed files with 200 additions and 0 deletions
+1
View File
@@ -1,3 +1,4 @@
DIST portage-mgorny-2.3.24.1.tar.gz 1239318 BLAKE2B bfa8418ade600835c90378177bc6cd91f6c17e02c0e05b0829f4ee3b500ce3275fcb76424e19af5618026daa7b79d402aeb0d9f2133e7db09cb8983eeb355427 SHA512 04e3d5ee08f78ba3bb8045c36e7e81b06b7a0aff65a22c82cd2ca6fc0ab9f7b63a49c7eda9048d15fbc9c8d1a898c0d038f7cac2f4daf6d68bb799a9303d74c1
DIST portage-mgorny-2.3.24.2.tar.gz 1239343 BLAKE2B 701c90d333c10976f11910babed4b002cb545561c931d635973cf9b455a247b050b098c61fca0b20a5a8d70d4478a9daddacc826045e74c52d45878260431c93 SHA512 0319a973a26650ce182c0e1f997399f0c3944474ad5c8c2f88b9588ffbf99ccd12bd84e7537f8368f8362a098a72d177fc3c844e2afc086f95094baa27d97b93
DIST portage-mgorny-2.3.24.3.tar.gz 1235966 BLAKE2B 0919ad1c287075cdeaacb3c40b468ba9afd93df59ea3e8caa87300f87e0638e72d3d2791d07764d82147025c407f83f7442d9c4f02b5b8ae7ba8485f54193499 SHA512 dfb2341a512b3db37b7f282d7246d16afb8df9e1c401656022ac72adf35541bd4aa0224974deb581e76174b1bd7c49368c76215dd977168e5da858e9d8b8eda5
DIST portage-mgorny-2.3.24.4.tar.gz 1235738 BLAKE2B 4365b4c2ac754b6a09a19598d7e4bddc16575b17dcd3e6dabcbb58ddd905a548da5d7c5a660e8bb8e638e39bf8803869144f08f6ece34775e79dd70f4be6d933 SHA512 ed5f14a457d00951f4af6b76db501f33523b6a19f2983d1b7acaa62f7eee90b8facf834f88d4de2dea26f12b7f373c64771c9f797af6c82578fb45b8db8ef678
@@ -0,0 +1,199 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python{2_7,3_{4,5,6}} pypy )
PYTHON_REQ_USE='bzip2(+),threads(+)'
inherit distutils-r1
DESCRIPTION="Fork of Portage focused on cleaning up and useful features"
HOMEPAGE="https://github.com/mgorny/portage"
SRC_URI="https://github.com/mgorny/portage/archive/v${PV}.tar.gz -> ${P}.tar.gz"
S=${WORKDIR}/portage-${PV}
LICENSE="GPL-2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd"
SLOT="0"
IUSE="build +ipc +native-extensions selinux xattr kernel_linux"
DEPEND="!build? ( $(python_gen_impl_dep 'ssl(+)') )
>=app-arch/tar-1.27
>=sys-apps/sed-4.0.5
sys-devel/patch"
RDEPEND="
>=app-arch/tar-1.27
!build? (
>=app-admin/eselect-1.2
app-crypt/openpgp-keys-gentoo-release
>=app-crypt/gnupg-2.2.4-r2[ssl(-)]
>=app-portage/gemato-10
app-shells/bash:0[readline]
$(python_gen_cond_dep 'dev-python/pyblake2[${PYTHON_USEDEP}]' \
python{2_7,3_4,3_5} pypy)
>=dev-python/lxml-3.6.0[${PYTHON_USEDEP}]
>=sys-apps/sed-4.0.5
)
elibc_FreeBSD? ( sys-freebsd/freebsd-bin )
elibc_glibc? ( >=sys-apps/sandbox-2.2 )
elibc_musl? ( >=sys-apps/sandbox-2.2 )
elibc_uclibc? ( >=sys-apps/sandbox-2.2 )
>=app-misc/pax-utils-0.1.17
selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
xattr? ( kernel_linux? (
>=sys-apps/install-xattr-0.3
$(python_gen_cond_dep 'dev-python/pyxattr[${PYTHON_USEDEP}]' \
python2_7 pypy)
) )
!app-portage/repoman
!sys-apps/portage"
PDEPEND="
!build? (
>=net-misc/rsync-2.6.4
)"
# NOTE: FEATURES=installsources requires debugedit and rsync
pkg_pretend() {
if [[ -f ${EROOT%/}/etc/make.conf ]]; then
eerror "You seem to be using /etc/make.conf. Please migrate to the new"
eerror "/etc/portage/make.conf location before upgrading."
if [[ ! -f ${EROOT%/}/etc/portage/make.conf ]]; then
eerror
eerror " mv ${EROOT%/}/etc/make.conf ${EROOT%/}/etc/portage/make.conf"
else
ewarn
ewarn "WARNING: You seem to have make.conf in both locations. Please take"
ewarn "care not to accientally overwrite one with the other."
fi
die "${EROOT%/}/etc/make.conf present"
fi
if [[ -f ${EROOT%/}/etc/portage/package.keywords ]]; then
eerror "You seem to be using /etc/portage/package.keywords. Please migrate"
eerror "to the new /etc/portage/package.accept_keywords location before"
eerror "upgrading."
eerror
if [[ -d ${EROOT%/}/etc/portage/package.accept_keywords ]]; then
eerror " mv ${EROOT%/}/etc/portage/package.keywords ${EROOT%/}/etc/portage/package.accept_keywords/99old"
else
if [[ -f ${EROOT%/}/etc/portage/package.accept_keywords ]]; then
eerror " cat ${EROOT%/}/etc/portage/package.accept_keywords >> ${EROOT%/}/etc/portage/package.keywords"
fi
eerror " mv ${EROOT%/}/etc/portage/package.keywords ${EROOT%/}/etc/portage/package.accept_keywords"
fi
die "${EROOT%/}/etc/portage/package.keywords present"
fi
if has_version sys-apps/portage; then
ewarn "If you are migrating from sys-apps/portage to sys-apps/portage-mgorny,"
ewarn "please note that Portage will abort upon having to unmerge itself."
ewarn "However, sys-apps/portage-mgorny will already be installed at this"
ewarn "point, so you simply have to restart emerge and it will successfully"
ewarn "clean the old package afterwards."
ewarn
ewarn "If you did not use '--dynamic-deps n' in Portage, your VDB dependency"
ewarn "graph is probably broken. You may need to use '--changed-deps y'"
ewarn "for your first @world upgrade to resolve the conflicts. Afterwards,"
ewarn "--changed-deps should no longer be necessary and any conflicts"
ewarn "introduced afterwards should be reported to bugs.gentoo.org."
fi
}
python_prepare_all() {
distutils-r1_python_prepare_all
if ! use ipc ; then
einfo "Disabling ipc..."
sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \
-i pym/_emerge/AbstractEbuildProcess.py ||
die "failed to patch AbstractEbuildProcess.py"
fi
if use xattr && use kernel_linux ; then
einfo "Adding FEATURES=xattr to make.globals ..."
echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \
|| die "failed to append to make.globals"
fi
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 pym/portage/const.py ||
die "Failed to patch portage.const.EPREFIX"
einfo "Prefixing shebangs ..."
while read -r -d $'\0' ; do
local shebang=$(head -n1 "${REPLY}")
if [[ ${shebang} == "#!"* && ! ${shebang} == "#!${EPREFIX}/"* ]] ; then
sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "${REPLY}" ||
die "sed failed"
fi
done < <(find . -type f -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 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]|" \
-e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \
-i cnf/repos.conf || die "sed failed"
fi
einfo "Adding FEATURES=force-prefix to make.globals ..."
echo -e '\nFEATURES="${FEATURES} force-prefix"' >> cnf/make.globals \
|| die "failed to append to make.globals"
fi
cd "${S}/cnf" || die
if [[ -f make.conf.example.${ARCH}.diff ]]; then
patch make.conf.example "make.conf.example.${ARCH}.diff" ||
die "Failed to patch make.conf.example"
else
eerror ""
eerror "Portage does not have an arch-specific configuration for this arch."
eerror "Please notify the arch maintainer about this issue. Using generic."
eerror ""
fi
}
python_configure_all() {
cat >> setup.cfg <<-EOF || die
[build_ext]
portage-ext-modules=$(usex native-extensions true false)
EOF
}
python_test() {
esetup.py test
}
python_install() {
distutils-r1_python_install \
--system-prefix="${EPREFIX}/usr" \
--bindir="$(python_get_scriptdir)" \
--portage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" \
--sysconfdir="${EPREFIX}/etc" \
"${@}"
keepdir /var/log/portage/elog
}
pkg_preinst() {
# This is allowed to fail if the user/group are invalid for prefix users.
if chown portage:portage "${ED%/}"/var/log/portage{,/elog} 2>/dev/null ; then
chmod g+s,ug+rwx "${ED%/}"/var/log/portage{,/elog}
fi
}