commit:     c8e331071da74d11d651ebd32bbf4efbd25e0f8e
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Jun 20 07:25:07 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Jun 20 07:25:07 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c8e33107

sys-apps/util-linux: optimize src_unpack

See 7e4aeaf563a8d9b6997d872e9ce513e01b7ee022 and 
5cc8ea52655a502cf3f1bc818d163e5154c05b3d.

Note that as mgorny points out at 
https://github.com/gentoo/gentoo/pull/37220#discussion_r1646906325,
we still unpack twice, so we should look at that next.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/util-linux/util-linux-2.40.1-r3.ebuild | 14 +++-----------
 sys-apps/util-linux/util-linux-9999.ebuild      | 14 +++-----------
 2 files changed, 6 insertions(+), 22 deletions(-)

diff --git a/sys-apps/util-linux/util-linux-2.40.1-r3.ebuild 
b/sys-apps/util-linux/util-linux-2.40.1-r3.ebuild
index 340527c06ae4..ac289f40eb68 100644
--- a/sys-apps/util-linux/util-linux-2.40.1-r3.ebuild
+++ b/sys-apps/util-linux/util-linux-2.40.1-r3.ebuild
@@ -116,18 +116,10 @@ src_unpack() {
        fi
 
        if use verify-sig ; then
-               mkdir "${T}"/verify-sig || die
-               pushd "${T}"/verify-sig &>/dev/null || die
-
                # Upstream sign the decompressed .tar
-               # Let's do it separately in ${T} then cleanup to avoid external
-               # effects on normal unpack.
-               cp "${DISTDIR}"/${MY_P}.tar.xz . || die
-               xz -d ${MY_P}.tar.xz || die
-               verify-sig_verify_detached ${MY_P}.tar 
"${DISTDIR}"/${MY_P}.tar.sign
-
-               popd &>/dev/null || die
-               rm -r "${T}"/verify-sig || die
+               verify-sig_verify_detached \
+                       <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz) \
+                       "${DISTDIR}"/${MY_P}.tar.sign
        fi
 
        default

diff --git a/sys-apps/util-linux/util-linux-9999.ebuild 
b/sys-apps/util-linux/util-linux-9999.ebuild
index 90d69b34f877..c9f50b8ca79a 100644
--- a/sys-apps/util-linux/util-linux-9999.ebuild
+++ b/sys-apps/util-linux/util-linux-9999.ebuild
@@ -116,18 +116,10 @@ src_unpack() {
        fi
 
        if use verify-sig ; then
-               mkdir "${T}"/verify-sig || die
-               pushd "${T}"/verify-sig &>/dev/null || die
-
                # Upstream sign the decompressed .tar
-               # Let's do it separately in ${T} then cleanup to avoid external
-               # effects on normal unpack.
-               cp "${DISTDIR}"/${MY_P}.tar.xz . || die
-               xz -d ${MY_P}.tar.xz || die
-               verify-sig_verify_detached ${MY_P}.tar 
"${DISTDIR}"/${MY_P}.tar.sign
-
-               popd &>/dev/null || die
-               rm -r "${T}"/verify-sig || die
+               verify-sig_verify_detached \
+                       <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz) \
+                       "${DISTDIR}"/${MY_P}.tar.sign
        fi
 
        default

Reply via email to