commit: ef59ea9a89cfb8bcec388c7ea1a962a4ca0940b6 Author: Mike Gilbert <floppym <AT> gentoo <DOT> org> AuthorDate: Thu Oct 26 15:50:22 2023 +0000 Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org> CommitDate: Thu Oct 26 15:50:22 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ef59ea9a
sys-apps/portage: backport portageq fix Closes: https://bugs.gentoo.org/916287 Closes: https://bugs.gentoo.org/916296 Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org> ....54-Convert-portageq-helper-to-a-function.patch | 65 ++++++++++++++++++++++ ...tage-3.0.54.ebuild => portage-3.0.54-r1.ebuild} | 3 + 2 files changed, 68 insertions(+) diff --git a/sys-apps/portage/files/portage-3.0.54-Convert-portageq-helper-to-a-function.patch b/sys-apps/portage/files/portage-3.0.54-Convert-portageq-helper-to-a-function.patch new file mode 100644 index 000000000000..970f49d6a001 --- /dev/null +++ b/sys-apps/portage/files/portage-3.0.54-Convert-portageq-helper-to-a-function.patch @@ -0,0 +1,65 @@ +From 27952b1d753ef4ea9bbd2307f8a9a315ad94557d Mon Sep 17 00:00:00 2001 +From: Mike Gilbert <[email protected]> +Date: Thu, 26 Oct 2023 10:42:00 -0400 +Subject: [PATCH] Convert portageq helper to a function +To: [email protected] + +This keeps it out of PATH in ebuilds to avoid breaking external +utilities that call portageq. + +Bug: https://bugs.gentoo.org/906129 +Bug: https://bugs.gentoo.org/916287 +Bug: https://bugs.gentoo.org/916296 +Signed-off-by: Mike Gilbert <[email protected]> +--- + NEWS | 4 +++- + bin/ebuild-helpers/portageq | 8 -------- + bin/phase-helpers.sh | 4 ++++ + bin/portageq-wrapper | 1 - + 4 files changed, 7 insertions(+), 10 deletions(-) + delete mode 100755 bin/ebuild-helpers/portageq + +diff --git a/bin/ebuild-helpers/portageq b/bin/ebuild-helpers/portageq +deleted file mode 100755 +index bd9d6b044..000000000 +--- a/bin/ebuild-helpers/portageq ++++ /dev/null +@@ -1,8 +0,0 @@ +-#!/usr/bin/env bash +-# Copyright 2009-2023 Gentoo Authors +-# Distributed under the terms of the GNU General Public License v2 +- +-source "${PORTAGE_BIN_PATH}"/isolated-functions.sh || exit 1 +- +-die "'${0##*/}' is not allowed in ebuild scope" +-exit 1 +diff --git a/bin/phase-helpers.sh b/bin/phase-helpers.sh +index 3f12b3707..6c2ecf0bc 100644 +--- a/bin/phase-helpers.sh ++++ b/bin/phase-helpers.sh +@@ -1006,6 +1006,10 @@ best_version() { + ___best_version_and_has_version_common "$@" + } + ++portageq() { ++ die "portageq is not allowed in ebuild scope" ++} ++ + if ___eapi_has_get_libdir; then + get_libdir() { + local libdir_var="LIBDIR_${ABI}" +diff --git a/bin/portageq-wrapper b/bin/portageq-wrapper +index afa2defe1..047d1d826 100755 +--- a/bin/portageq-wrapper ++++ b/bin/portageq-wrapper +@@ -9,7 +9,6 @@ IFS=":" + set -f # in case ${PATH} contains any shell glob characters + + for path in "${PORTAGE_BIN_PATH}" ${PATH}; do +- [[ ${path} == */portage/*/ebuild-helpers* ]] && continue + [[ -x ${path}/portageq ]] || continue + PYTHONPATH=${PORTAGE_PYTHONPATH:-${PORTAGE_PYM_PATH}} \ + exec "${PORTAGE_PYTHON:-/usr/bin/python}" "${path}/portageq" "$@" +-- +2.42.0 + diff --git a/sys-apps/portage/portage-3.0.54.ebuild b/sys-apps/portage/portage-3.0.54-r1.ebuild similarity index 98% rename from sys-apps/portage/portage-3.0.54.ebuild rename to sys-apps/portage/portage-3.0.54-r1.ebuild index 5bf30b190b87..e117706672e2 100644 --- a/sys-apps/portage/portage-3.0.54.ebuild +++ b/sys-apps/portage/portage-3.0.54-r1.ebuild @@ -111,6 +111,9 @@ pkg_pretend() { } src_prepare() { + local PATCHES=( + "${FILESDIR}/portage-3.0.54-Convert-portageq-helper-to-a-function.patch" + ) default if use prefix-guest; then
