aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLucio Sauer <watermanpaint@posteo.net>2024-08-16 03:31:33 +0200
committerLucio Sauer <watermanpaint@posteo.net>2024-08-16 03:32:29 +0200
commit1743d40a1f3911a846ab3ad69f339a05e7720902 (patch)
tree57106ce28149b225dedb29ba07a2a990a7c24876
parentapp-emulation/x48ng: add 0.38.0 (diff)
downloadguru-1743d40a1f3911a846ab3ad69f339a05e7720902.tar.gz
guru-1743d40a1f3911a846ab3ad69f339a05e7720902.tar.bz2
guru-1743d40a1f3911a846ab3ad69f339a05e7720902.zip
net-p2p/p2pool: reapply simplify verify-sig logic (5265984de)
Signed-off-by: Lucio Sauer <watermanpaint@posteo.net>
-rw-r--r--net-p2p/p2pool/Manifest2
-rw-r--r--net-p2p/p2pool/p2pool-4.1.ebuild52
2 files changed, 15 insertions, 39 deletions
diff --git a/net-p2p/p2pool/Manifest b/net-p2p/p2pool/Manifest
index d10a9a7b0..6214cb820 100644
--- a/net-p2p/p2pool/Manifest
+++ b/net-p2p/p2pool/Manifest
@@ -1,4 +1,4 @@
DIST p2pool-4.0.tar.xz 127772256 BLAKE2B 77de14bd19f43483fa7da0e65f8a27d5f6cf8c2daf5d8d5e07be373c752794bd35c421fd812b65328acd22004766ff235e9ad6e7e613d08ca3c27ac95153cbc3 SHA512 ea37993d13342b303902e6aa6acb090a908ba99ae304d9415480ff39a3647c84a963ab80b317c9c78a9f11631e0ca9547a08c6e0c23b83892037b63d4beef7a2
+DIST p2pool-4.1.tar.xz 127754740 BLAKE2B 6d46920d5fe116f65950bb9dd2fee7feed45f911817302a6c5047602431febac1abacd508fa6f64a84303014212426994a64a26db124501127aee5aed5da1825 SHA512 c0d90fa6b1390a9e0744772b574ab48f78a95980a263d03970adcf51bf7abdf40cefdcafb95daca16c004674b593647f48960bfc8c2630f4852d1c0a9c3b0bb0
DIST p2pool-4.0_shasums.asc 2038 BLAKE2B f8f20875a9fa4771753b1eade7c609be761f007ac32a0641109d87890bdd7f2123f11a203d56ffcca5b74b16667e0d8288479688938935434b86875c6c72959c SHA512 bf4a933a81ce9bd48bf293a26d3e4e75b82c67fcfd48d79c57dd86aaac2c2cd54def43b47b05222e0b93fd61623d2c116c403531500a93d45059bca4a0dd3cb4
DIST p2pool-4.1_shasums.asc 2007 BLAKE2B 29dfa3e0620f1ce88ed4a0dcad45f0d5b0eb00d2dd063fe83feb9d027e8e58b6e15cdc9244832a9d6f406a3ee3c8fe2b710554336b93d5af71d17b17acd3b0f5 SHA512 a17784e5ec3d181c0218016c2bb69b5b467f33eac3dea0a31e146703b02d6de202bc6f6628abda439aa9846b7e86773d0ae1440453d0a9a5532a097ad5d974f8
-DIST p2pool-4.1_source.tar.xz 127754740 BLAKE2B 6d46920d5fe116f65950bb9dd2fee7feed45f911817302a6c5047602431febac1abacd508fa6f64a84303014212426994a64a26db124501127aee5aed5da1825 SHA512 c0d90fa6b1390a9e0744772b574ab48f78a95980a263d03970adcf51bf7abdf40cefdcafb95daca16c004674b593647f48960bfc8c2630f4852d1c0a9c3b0bb0
diff --git a/net-p2p/p2pool/p2pool-4.1.ebuild b/net-p2p/p2pool/p2pool-4.1.ebuild
index fd912d246..0b1c5ce15 100644
--- a/net-p2p/p2pool/p2pool-4.1.ebuild
+++ b/net-p2p/p2pool/p2pool-4.1.ebuild
@@ -1,7 +1,6 @@
-# Copyright 2022 Gentoo Authors
+# Copyright 2022-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-#TODO: verify hell script is safe
#TODO: enable/fix GRPC dependency and add it as USE flag (https://github.com/SChernykh/p2pool/issues/313)
EAPI=8
@@ -11,7 +10,7 @@ inherit cmake verify-sig
DESCRIPTION="Decentralized pool for Monero mining"
HOMEPAGE="https://p2pool.io"
SRC_URI="
- https://github.com/SChernykh/p2pool/releases/download/v${PV}/p2pool_source.tar.xz -> ${P}_source.tar.xz
+ https://github.com/SChernykh/p2pool/releases/download/v${PV}/p2pool_source.tar.xz -> ${P}.tar.xz
verify-sig? ( https://github.com/SChernykh/p2pool/releases/download/v${PV}/sha256sums.txt.asc -> ${P}_shasums.asc )
"
@@ -28,44 +27,21 @@ BDEPEND="
verify-sig? ( sec-keys/openpgp-keys-schernykh )
"
-VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/SChernykh.asc
-
src_unpack() {
if use verify-sig; then
- #what we want to do is `verify-sig_verify_signed_checksums ${P}_shasums.asc sha512 p2pool_source.tar.xz`
- verify-sig_verify_message "${DISTDIR}/${P}_shasums.asc" "${WORKDIR}/p2pool_shasums.txt"
-
- #start of hell script
- hellscript_stage=0
- tr -d '\r' < p2pool_shasums.txt | while IFS='' read -r LINE; do
- if [ "$hellscript_stage" -eq 0 ] && [ "$LINE" = "Name: p2pool_source.tar.xz" ]; then
- hellscript_stage=1
- continue
- fi
- if [ "$hellscript_stage" -eq 1 ]; then
- hellscript_sizestring="Size: $(cat ${DISTDIR}/${P}_source.tar.xz | wc -c) bytes"
- if [ "${LINE:0:"${#hellscript_sizestring}"}" = "$hellscript_sizestring" ]; then
- hellscript_stage=2
- continue
- else
- die
- fi
- fi
- if [ "$hellscript_stage" -eq 2 ]; then
- hellscript_shaprefix="SHA256: "
- if [ "${LINE:0:"${#hellscript_shaprefix}"}" = "$hellscript_shaprefix" ]; then
- echo "$(echo "${LINE:"${#hellscript_shaprefix}"}" | tr '[:upper:]' '[:lower:]') ${DISTDIR}/${P}_source.tar.xz" \
- > "${WORKDIR}/src_shasum.txt"
- else
- die
- fi
- break
- fi
- done
- verify-sig_verify_unsigned_checksums "${WORKDIR}/src_shasum.txt" sha256 "${DISTDIR}/${P}_source.tar.xz"
- #end of hell script
+ local VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/SChernykh.asc
+ pushd "${DISTDIR}" > /dev/null || die
+ verify-sig_verify_message ${P}_shasums.asc - | \
+ tr \\r \\n | \
+ tr '[:upper:]' '[:lower:]' | \
+ sed -n '/p2pool_source/,$p' | \
+ grep -m 1 sha256: | \
+ sed "s/sha256: \(.*\)/\1 ${P}.tar.xz/" | \
+ verify-sig_verify_unsigned_checksums - sha256 ${P}.tar.xz
+ assert
+ popd || die
fi
- unpack ${P}_source.tar.xz
+ unpack ${P}.tar.xz
mv -T "${WORKDIR}"/${PN} "${WORKDIR}"/${P} || die
}