commit: 0e81c262674615ff95a7918106b0e9031dbf3739 Author: whoisxy <whoisxy <AT> users <DOT> noreply <DOT> github <DOT> com> AuthorDate: Sat Apr 26 12:08:52 2025 +0000 Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org> CommitDate: Tue Apr 29 08:09:37 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0e81c262
dev-libs/nss: fix calling shlibsign from pkg_postinst As shlibsign relies on shared objects from dev-libs/nspr which may not be available to the loader when installing to a custom $ROOT Closes: https://bugs.gentoo.org/954224 Signed-off-by: whoisxy <whoisxy <AT> users.noreply.github.com> Closes: https://github.com/gentoo/gentoo/pull/41790 Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org> dev-libs/nss/nss-3.101.2.ebuild | 16 +++++++++++++++- dev-libs/nss/nss-3.101.3.ebuild | 14 ++++++++++++++ dev-libs/nss/nss-3.110.ebuild | 14 ++++++++++++++ 3 files changed, 43 insertions(+), 1 deletion(-) diff --git a/dev-libs/nss/nss-3.101.2.ebuild b/dev-libs/nss/nss-3.101.2.ebuild index d9a31b93cc12..a984fcb1b70e 100644 --- a/dev-libs/nss/nss-3.101.2.ebuild +++ b/dev-libs/nss/nss-3.101.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -395,6 +395,20 @@ multilib_src_install() { } pkg_postinst() { + if [[ -n "${ROOT}" ]]; then + elog "You appear to to be installing in a seperate \$ROOT" + elog "to complete the setup and re-sign libraries please run:" + elog "emerge --config '=${CATEGORY}/${PF}'" + else + sign_libraries + fi +} + +pkg_config() { + sign_libraries +} + +sign_libraries() { multilib_pkg_postinst() { # We must re-sign the libraries AFTER they are stripped. local shlibsign="${EROOT}/usr/bin/shlibsign" diff --git a/dev-libs/nss/nss-3.101.3.ebuild b/dev-libs/nss/nss-3.101.3.ebuild index b503dd707478..f7cc2359e1bd 100644 --- a/dev-libs/nss/nss-3.101.3.ebuild +++ b/dev-libs/nss/nss-3.101.3.ebuild @@ -396,6 +396,20 @@ multilib_src_install() { } pkg_postinst() { + if [[ -n "${ROOT}" ]]; then + elog "You appear to to be installing in a seperate \$ROOT" + elog "to complete the setup and re-sign libraries please run:" + elog "emerge --config '=${CATEGORY}/${PF}'" + else + sign_libraries + fi +} + +pkg_config() { + sign_libraries +} + +sign_libraries() { multilib_pkg_postinst() { # We must re-sign the libraries AFTER they are stripped. local shlibsign="${EROOT}/usr/bin/shlibsign" diff --git a/dev-libs/nss/nss-3.110.ebuild b/dev-libs/nss/nss-3.110.ebuild index 08646b518be0..b70f8aef5c6c 100644 --- a/dev-libs/nss/nss-3.110.ebuild +++ b/dev-libs/nss/nss-3.110.ebuild @@ -406,6 +406,20 @@ multilib_src_install() { } pkg_postinst() { + if [[ -n "${ROOT}" ]]; then + elog "You appear to to be installing in a seperate \$ROOT" + elog "to complete the setup and re-sign libraries please run:" + elog "emerge --config '=${CATEGORY}/${PF}'" + else + sign_libraries + fi +} + +pkg_config() { + sign_libraries +} + +sign_libraries() { multilib_pkg_postinst() { # We must re-sign the libraries AFTER they are stripped. local shlibsign="${EROOT}/usr/bin/shlibsign"
