From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 894171582EF for ; Sun, 02 Mar 2025 22:56:53 +0000 (UTC) Received: from lists.gentoo.org (bobolink.gentoo.org [140.211.166.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) (Authenticated sender: relay-lists.gentoo.org@gentoo.org) by smtp.gentoo.org (Postfix) with ESMTPSA id 73762340C7F for ; Sun, 02 Mar 2025 22:56:53 +0000 (UTC) Received: from bobolink.gentoo.org (localhost [127.0.0.1]) by bobolink.gentoo.org (Postfix) with ESMTP id 72A511102D0; Sun, 02 Mar 2025 22:56:52 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by bobolink.gentoo.org (Postfix) with ESMTPS id 66EE01102D0 for ; Sun, 02 Mar 2025 22:56:52 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 121AB340C7B for ; Sun, 02 Mar 2025 22:56:52 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id A0CEB1EA7 for ; Sun, 02 Mar 2025 22:56:50 +0000 (UTC) From: "Sam James" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" Message-ID: <1740956179.7364ff2bac09ca3adcbfd23ff63339cf6f49853a.sam@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: net-p2p/freenet/ X-VCS-Repository: repo/gentoo X-VCS-Files: net-p2p/freenet/Manifest net-p2p/freenet/freenet-0.7.5_p1501.ebuild X-VCS-Directories: net-p2p/freenet/ X-VCS-Committer: sam X-VCS-Committer-Name: Sam James X-VCS-Revision: 7364ff2bac09ca3adcbfd23ff63339cf6f49853a X-VCS-Branch: master Date: Sun, 02 Mar 2025 22:56:50 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 71300bee-84fa-42fd-8447-f64a337c8858 X-Archives-Hash: 5a7a61ffeda439651d429708ed535e6e commit: 7364ff2bac09ca3adcbfd23ff63339cf6f49853a Author: Volkmar W. Pogatzki pogatzki net> AuthorDate: Sun Feb 16 21:15:41 2025 +0000 Commit: Sam James gentoo org> CommitDate: Sun Mar 2 22:56:19 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7364ff2b net-p2p/freenet: add 0.7.5_p1501 Signed-off-by: Volkmar W. Pogatzki pogatzki.net> Closes: https://github.com/gentoo/gentoo/pull/40604 Signed-off-by: Sam James gentoo.org> net-p2p/freenet/Manifest | 2 + net-p2p/freenet/freenet-0.7.5_p1501.ebuild | 219 +++++++++++++++++++++++++++++ 2 files changed, 221 insertions(+) diff --git a/net-p2p/freenet/Manifest b/net-p2p/freenet/Manifest index ab8ca661cfa7..7a92219d1e14 100644 --- a/net-p2p/freenet/Manifest +++ b/net-p2p/freenet/Manifest @@ -1,3 +1,5 @@ DIST freenet-build01500-source.tar.bz2 6314667 BLAKE2B dc4a7333f030f6d53a5d734bd2b8dfd6712d555addadb2201a899118ad69414779db7d499884daf69ce687e57d510ebef76fdc6d9cb2cb3ae5fd649e5529ac10 SHA512 a7e67f91805b04d9e7cf56af12afd07d8cccedbed3a9977e4d5af938711ab4d9aee7ed85acad8f3e03c8ce4f35e4324fd6a607fc00f135ac1bfecd6ed3cbcb04 DIST freenet-build01500-source.tar.bz2.sig 566 BLAKE2B 69f05acb65b093c5d62160ef5933446a0383c2aaf9d42fa216df21106ac86b6e49d56c1223746c7d602717cdd2340bbf3834fdde9026b4765d4454decf7f5a31 SHA512 2028ba06cbf6cbf123b011365f32ef4fdeb1f61cf8bbfc0e92e7666a8a2f3eacadd5deff9d12e1952146cd3830f95bf5515ea71e20a2321a7e204286c77423bf +DIST freenet-build01501-source.tar.bz2 6314508 BLAKE2B 9c666481c10322cb95284b8e2e10c5a995c5f0e2d9054e774c30df737bda1c5ee75c918f1e4b6e901e04724e4c5a3b3118ba3f50f8929d5b9bfe6eea023317b4 SHA512 5ea5558d9b2698da29afe909180bec09739bfc8ca9888be9b97eaa0e7ae9bb055d81c9a957956a492fc1dd1774876f1be2c5835e2f65ac204af5a1adfd113c48 +DIST freenet-build01501-source.tar.bz2.sig 566 BLAKE2B 888365c8424a05222f644baab37abb90802f6443c3fe07a94d149ea4baebc3613865fc5a4f8d5691f755b56647cad0f47c358b3b549ff88fabd1d4643e210fa0 SHA512 fe121c84067d170b79faa643f625eaa8ef0a1b063eb08b972f1c5d6a3f4a6d3c55b372c0b2892abd72c4266b1c2dd3419068ccb8d413e6076e0c6913b0b36401 DIST seednodes-0.7.5_p1480.tar.gz 12364 BLAKE2B edb4e2a5c7424b51f0afb8234c7e486d56fe92e9201ab7ed7658366f070225f8def1b5412a31367e434ab4afae393caa16e7bdd7307f1d870607105fd5076638 SHA512 a2662a29f5721cd1523eb68b8787b074baec990327207b9ff444c91e644738a610e5216064aef00c62d6aca8ba66b2035a3175f63d45c1e0e8efc816b2a38660 diff --git a/net-p2p/freenet/freenet-0.7.5_p1501.ebuild b/net-p2p/freenet/freenet-0.7.5_p1501.ebuild new file mode 100644 index 000000000000..29085cb5336b --- /dev/null +++ b/net-p2p/freenet/freenet-0.7.5_p1501.ebuild @@ -0,0 +1,219 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source test" +JAVA_TESTING_FRAMEWORKS="junit-4" + +inherit java-pkg-2 java-pkg-simple systemd verify-sig + +DESCRIPTION="An encrypted network without censorship" +HOMEPAGE="https://www.hyphanet.org" +PEV="3.1.6" +SRC_URI="https://github.com/hyphanet/fred/releases/download/build0${PV#*p}/freenet-build0${PV#*p}-source.tar.bz2 + https://github.com/hyphanet/seedrefs/archive/build01480.tar.gz -> seednodes-0.7.5_p1480.tar.gz + verify-sig? ( + https://github.com/hyphanet/fred/releases/download/build0${PV#*p}/freenet-build0${PV#*p}-source.tar.bz2.sig + )" +S="${WORKDIR}/freenet-build0${PV#*p}" + +LICENSE="GPL-2+ GPL-2 MIT BSD-2 Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64" +IUSE="+nss" + +CP_DEPEND=" + dev-java/bcprov:0 + dev-java/commons-compress:0 + dev-java/commons-io:1 + dev-java/fec:0 + dev-java/freenet-ext:29 + dev-java/java-service-wrapper:0 + dev-java/jbitcollider-core:0 + dev-java/jna:4 + dev-java/lzma:0 + dev-java/lzmajio:0 + dev-java/mersennetwister:0 + dev-java/pebble:0 +" + +DEPEND=" + dev-java/unbescape:0 + >=virtual/jdk-1.8:* + ${CP_DEPEND} + test? ( + dev-java/hamcrest:0 + dev-java/mockito:0 + dev-java/objenesis:0 + net-libs/NativeThread:0 + ) +" +RDEPEND=" + acct-user/freenet + acct-group/freenet + >=virtual/jre-1.8:* + ${CP_DEPEND} + nss? ( dev-libs/nss ) +" +BDEPEND=" + app-arch/unzip + verify-sig? ( sec-keys/openpgp-keys-freenet ) +" +PDEPEND="net-libs/NativeThread:0" + +DOCS=( + AUTHORS + CONTRIBUTING.md + NEWS.md + README.md + SECURITY.md +) + +PATCHES=( + "${FILESDIR}/freenet-0.7.5_p1498-ignore-failing-tests.patch" +) + +JAVA_CLASSPATH_EXTRA=" + java-service-wrapper + unbescape +" +JAVA_RESOURCE_DIRS="res" +JAVA_SRC_DIR="src" +JAVA_TEST_GENTOO_CLASSPATH=" + hamcrest + junit-4 + mockito + objenesis +" +# Yes, both variables point to the same directory +# https://github.com/hyphanet/fred/blob/build01497/build.gradle#L169-L173 +JAVA_TEST_RESOURCE_DIRS="test" +JAVA_TEST_SRC_DIR="test" + +VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/freenetproject.org.asc" +src_unpack() { + if use verify-sig; then + verify-sig_verify_detached \ + "${DISTDIR}"/freenet-build0${PV#*p}-source.tar.bz2 \ + "${DISTDIR}"/freenet-build0${PV#*p}-source.tar.bz2.sig + fi + unpack freenet-build0${PV#*p}-source.tar.bz2 + unpack seednodes-0.7.5_p1480.tar.gz +} + +src_prepare() { + default + java-pkg-2_src_prepare + + # Could not get resource : freenet/l10n/freenet.l10n.pt-PT.properties + # https://github.com/hyphanet/fred/pull/500 + mv src/freenet/l10n/freenet.l10n.pt{_,-}PT.properties || die + + # java-pkg-simple wants resources in JAVA_RESOURCE_DIRS + mkdir res || die + pushd src > /dev/null || die + find -type f \ + ! -name '*.java' \ + ! -name 'package.html' \ + ! -path '*/simulator/readme.txt' \ + | xargs cp --parent -t ../res || die + popd > /dev/null || die + + mkdir "${JAVA_RESOURCE_DIRS}/META-INF" || die + cat > "${JAVA_RESOURCE_DIRS}/META-INF/MANIFEST.MF" <<- EOF || die + Add-opens: java.base/java.lang java.base/java.util java.base/java.io + EOF + + cat "${WORKDIR}"/seedrefs-build01480/* > "${S}"/seednodes.fref + cp "${FILESDIR}"/freenet-0.7.5_p1497-wrapper.conf freenet-wrapper.conf || die + cp "${FILESDIR}"/run.sh-20090501 run.sh || die + + sed -i -e "s:=/usr/lib:=/usr/$(get_libdir):g" \ + freenet-wrapper.conf || die "sed failed" + + echo "wrapper.java.classpath.1=/usr/share/freenet/lib/freenet.jar" >> freenet-wrapper.conf || die + if use nss; then + echo "wrapper.java.additional.11=-Dfreenet.jce.use.NSS=true" >> freenet-wrapper.conf || die + fi +} + +src_compile() { + java-pkg-simple_src_compile + + # Moved here because of using JAVA_GENTOO_CLASSPATH which is populated by java-pkg_gen-cp. + local i=2 pkg jars jar + local ifs_original=${IFS} + IFS="," + for pkg in ${JAVA_GENTOO_CLASSPATH} ; do + jars="$(java-pkg_getjars ${pkg})" + for jar in ${jars} ; do + echo "wrapper.java.classpath.$((i++))=${jar}" >> freenet-wrapper.conf || die + done + done + IFS=${ifs_original} + echo "wrapper.java.library.path.2=/usr/$(get_libdir)/java-service-wrapper" >> freenet-wrapper.conf || die + echo "wrapper.java.library.path.3=/usr/$(get_libdir)/jna-4" >> freenet-wrapper.conf || die +} + +src_test() { + JAVA_TEST_EXTRA_ARGS=( + -Djava.library.path="${EPREFIX}/usr/$(get_libdir)/jna-4/" + -Djna.nosys=false + -Dnetworkaddress.cache.negative.ttl=0 + -Dnetworkaddress.cache.ttl=0 + # https://github.com/hyphanet/fred/blob/build01497/build.gradle#L194-L196 + # "test.l10npath_main" reads from the JAR file. + -Dtest.l10npath_test="freenet/l10n/" + -Dtest.l10npath_main="freenet/l10n/" + ) + local vm_version="$(java-config -g PROVIDES_VERSION)" + if ver_test "${vm_version}" -ge 17; then + JAVA_TEST_EXTRA_ARGS+=( + --add-opens=java.base/java.io=ALL-UNNAMED + --add-opens=java.base/java.lang=ALL-UNNAMED + --add-opens=java.base/java.util=ALL-UNNAMED + ) + fi + + pushd test > /dev/null || die + local JAVA_TEST_RUN_ONLY=$(find * \ + -type f -name "*Test.java" \ + ) + JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}" + JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}" + popd > /dev/null || die + java-pkg-simple_src_test +} + +src_install() { + java-pkg-simple_src_install + + doinitd "${FILESDIR}"/freenet + + systemd_dounit "${FILESDIR}"/freenet.service + + insinto /etc + doins freenet-wrapper.conf + insinto /var/freenet + doins run.sh seednodes.fref + fperms +x /var/freenet/run.sh +} + +pkg_postinst() { + elog " " + elog "1. Start freenet with rc-service freenet start." + elog "2. Open localhost:8888 in your browser for the web interface." + #workaround for previously existing freenet user + [[ $(stat --format="%U" /var/freenet) == "freenet" ]] || chown \ + freenet:freenet /var/freenet +} + +pkg_postrm() { + if ! [[ -e /usr/share/freenet/lib/freenet.jar ]] ; then + elog " " + elog "If you dont want to use freenet any more" + elog "and dont want to keep your identity/other stuff" + elog "remember to do 'rm -rf /var/freenet' to remove everything" + fi +}