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 EED501581FD for ; Fri, 05 Sep 2025 07:58:39 +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) (No client certificate requested) (Authenticated sender: relay-lists.gentoo.org@gentoo.org) by smtp.gentoo.org (Postfix) with ESMTPSA id D7C97340D5A for ; Fri, 05 Sep 2025 07:58:39 +0000 (UTC) Received: from bobolink.gentoo.org (localhost [127.0.0.1]) by bobolink.gentoo.org (Postfix) with ESMTP id 24477110578; Fri, 05 Sep 2025 07:58:25 +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) (No client certificate requested) by bobolink.gentoo.org (Postfix) with ESMTPS id 1C2E0110578 for ; Fri, 05 Sep 2025 07:58:25 +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) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id C857C335D21 for ; Fri, 05 Sep 2025 07:58:24 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 43BD338CD for ; Fri, 05 Sep 2025 07:58:22 +0000 (UTC) From: "Florian Schmaus" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Florian Schmaus" Message-ID: <1757059030.6f047e3b9ea36cc26161389c618fd41502a02018.flow@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: net-p2p/biglybt/ X-VCS-Repository: repo/gentoo X-VCS-Files: net-p2p/biglybt/Manifest net-p2p/biglybt/biglybt-3.9.0.0.ebuild X-VCS-Directories: net-p2p/biglybt/ X-VCS-Committer: flow X-VCS-Committer-Name: Florian Schmaus X-VCS-Revision: 6f047e3b9ea36cc26161389c618fd41502a02018 X-VCS-Branch: master Date: Fri, 05 Sep 2025 07:58:22 +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: c201f376-09fd-40d5-90b3-34a13c478e1b X-Archives-Hash: 5c7842567a4df7c9d5259ab8f4e699c8 commit: 6f047e3b9ea36cc26161389c618fd41502a02018 Author: Volkmar W. Pogatzki pogatzki net> AuthorDate: Thu Sep 4 08:35:39 2025 +0000 Commit: Florian Schmaus gentoo org> CommitDate: Fri Sep 5 07:57:10 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6f047e3b net-p2p/biglybt: add 3.9.0.0 with tests enabled Bug: https://bugs.gentoo.org/902111 Signed-off-by: Volkmar W. Pogatzki pogatzki.net> Part-of: https://github.com/gentoo/gentoo/pull/43626 Closes: https://github.com/gentoo/gentoo/pull/43626 Signed-off-by: Florian Schmaus gentoo.org> net-p2p/biglybt/Manifest | 1 + net-p2p/biglybt/biglybt-3.9.0.0.ebuild | 146 +++++++++++++++++++++++++++++++++ 2 files changed, 147 insertions(+) diff --git a/net-p2p/biglybt/Manifest b/net-p2p/biglybt/Manifest index 803b796e58b5..21b49be7ae6a 100644 --- a/net-p2p/biglybt/Manifest +++ b/net-p2p/biglybt/Manifest @@ -1,2 +1,3 @@ DIST biglybt-3.7.0.0.tar.gz 44021778 BLAKE2B 9ce54062b298d2e47f9fcc88a3fa8da935c7d3c4ad24f28cf2975300b78140b547e3e43c377cae50fd1276d49d53a43bc77e36957133dc6fe1fa7e301ebe80fe SHA512 815ce2f2b327de266650d9650dcbc539247dca2a8bce727ca0a4fc6eb7dfbcee770ffce04dd3b96aef458df1ee20ce39229f6a3d409725a532d081c82d4504bd DIST biglybt-3.8.0.2.tar.gz 46676464 BLAKE2B d78f07cfc0d71ef29bc17c75c4dc834001ed91f6c4e0ae1e4be80f6a175c55fcba05c802a2739fd4636df3b28c7feda2e127cd99554acca9a8820338cf4eac12 SHA512 3679a153cdaaf861f0e5c3ead1164358435f2031999f2fd14fe6944d162bdd0e88ca253f053c94b4958f5a8550e3a89a923857d09ad022b6c1b9e6d17f089698 +DIST biglybt-3.9.0.0.tar.gz 53470140 BLAKE2B 7bd12cb42cb6a31fd672140db8b768b0d2fb955082aec1732033c86d79f16ad6b5324c8b2e420d58bc9789e2badab901efaa33b9a132d7d85a93ff64d6be19e8 SHA512 f1605b8f77442f94b6cb4144287efb9fa241f89a03b15ee5926b28ff839d23bbc3131997185900ab5779be9882ac0e89f196435ec2f0d8f2d0626ad99e84874e diff --git a/net-p2p/biglybt/biglybt-3.9.0.0.ebuild b/net-p2p/biglybt/biglybt-3.9.0.0.ebuild new file mode 100644 index 000000000000..73821034f8e8 --- /dev/null +++ b/net-p2p/biglybt/biglybt-3.9.0.0.ebuild @@ -0,0 +1,146 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# for 3.8.0.2 USE=doc produces 2 errors: +# uis/src/com/biglybt/ui/swt/plugin/net/buddy/swt/BuddyPluginView.java:68: +# uis/src/com/biglybt/ui/swt/plugin/net/buddy/swt/BuddyPluginViewChat.java:45: +# error: package com.biglybt.ui.swt.plugin.net.buddy does not exist +JAVA_PKG_IUSE="source test" +JAVA_TESTING_FRAMEWORKS="junit-jupiter" +MAVEN_PROVIDES="com.${PN}:${PN}-core:${PV} com.${PN}:${PN}-ui:${PV}" + +inherit desktop java-pkg-2 java-pkg-simple junit5 optfeature xdg + +DESCRIPTION="Feature-filled Bittorrent client based on Azureus" +HOMEPAGE="https://www.biglybt.com" +SRC_URI="https://github.com/BiglySoftware/BiglyBT/archive/v${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/BiglyBT-${PV}" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc64" + +CP_DEPEND=" + >=dev-java/bcprov-1.80:0 + dev-java/commons-cli:0 + dev-java/swt:0[cairo] +" + +# Due to removal of AENameServiceDescriptor it would fail to start under jdk:1.8 +# StartServer ERROR: unable to bind to 127.0.0.1:6880 listening for passed torrent info: \ +# sun.net.spi.nameservice.NameServiceDescriptor: Provider com.biglybt.core.util.spi.AENameServiceDescriptor not found +# +# NOTE: BiglyBT works with [headless-awt] +DEPEND=" + ${CP_DEPEND} + >=virtual/jdk-11:* + test? ( dev-java/assertj-core:3 ) +" + +RDEPEND=" + ${CP_DEPEND} + >=virtual/jre-1.8:* +" + +DOCS=( README.md ChangeLog.txt ) + +PATCHES=( + "${FILESDIR}"/biglybt-3.2.0.0-disable-SWTUpdateChecker.patch + "${FILESDIR}"/biglybt-3.2.0.0-disable-shared-plugins.patch + "${FILESDIR}"/biglybt-3.5.0.0-Entities.javadoc.patch + "${FILESDIR}"/biglybt-3.6.0.0-disable-PluginUpdatePlugin.patch + "${FILESDIR}"/biglybt-3.6.0.0-fix-ambiguous.patch + "${FILESDIR}"/biglybt-3.8.0.2-unbundle-bcprov.patch #936549 +) + +JAVA_GENTOO_CLASSPATH_EXTRA="target/classes" +JAVA_JAR_FILENAME="BiglyBT.jar" +JAVA_MAIN_CLASS="com.${PN}.ui.Main" +JAVA_RESOURCE_DIRS=( {core,uis}/resources ) # both are needed +JAVA_SRC_DIR="uis/src" # we compile core manually to avoid bloating the jar + +# source: MethodSource [className = 'com.biglybt.core.internat.PropertyFilesTest', methodName = 'noSplitlinesInPropertyFilesForLocalizations', methodParameterTypes = ''] +# caught: java.lang.NullPointerException: Resource not found: com/biglybt/internat/MessagesBundle_he_IL.properties +# at org.assertj.core.util.Preconditions.checkNotNull(Preconditions.java:92) +# at com.biglybt.core.internat.PropertyFilesTest.noSplitlinesInPropertyFilesForLocalizations(PropertyFilesTest.java:36) +# at java.base/java.lang.reflect.Method.invoke(Method.java:565) +# at java.base/java.util.ArrayList.forEach(ArrayList.java:1604) +# at java.base/java.util.ArrayList.forEach(ArrayList.java:1604) +#duration: 144 ms +# status: ✘ FAILED +JAVA_TEST_EXCLUDES=( + com.biglybt.core.internat.PropertyFilesTest + com.biglybt.core.WikiTest +) + +JAVA_TEST_GENTOO_CLASSPATH="assertj-core-3 junit-5" +JAVA_TEST_SRC_DIR="core/src.test" + +declare -r ASSET_DIR="${S}"/assets/linux +src_prepare() { + default #780585 + rm -r core/src/org/gudy || die "removing bundled bouncycastle failed" #936549 + java-pkg-2_src_prepare + + find -type f -name ".editorconfig" -o -name ".gitignore" -delete \ + || die "Cleaning distfile artifacts failed" + + # AENameServiceDescriptor fails to compile with jdk >= 11 + # "error: package sun.net.spi.nameservice does not exist" + # https://github.com/BiglySoftware/BiglyBT/pull/2611 + rm -r core/src/com/biglybt/core/util/spi || die "deleting spi failed" + + # java-pkg-simple.eclass expects resources in a separate directory + # REVIEW: instead of copying all and deleting it would be better to copy selectively + local module + for module in core uis; do + cp -r ${module}/{src,resources} || die "copying source for resources failed" + find ${module}/resources -type f -name "*.java" -delete || die "deleting java files failed" + done + rm -r core/resources/META-INF || die "deleting copied META-INF failed" + + # patch the desktop file + sed -i \ + -e '/#!/d' \ + -e 's|${installer:dir.main}/||' \ + -e 's|.svg||' \ + "${ASSET_DIR}"/${PN}.desktop || die "patching desktop file failed" + + # https://github.com/BiglySoftware/BiglyBT/pull/3523 + sed -i 's/Application;//g' "${ASSET_DIR}"/${PN}.desktop || die +} + +src_compile() { + # build core classes, needed for compiling uis + ejavac -d target/classes \ + -cp "$(java-pkg_getjars commons-cli):$(java-pkg_getjars swt):$(java-pkg_getjars bcprov)" \ + $(find core/src -type f -name "*.java") + + java-pkg-simple_src_compile + + # see top comment + # use doc && JAVA_SRC_DIR=( {core,uis}/src ) ejavadoc +} + +src_install() { + java-pkg-simple_src_install + + doicon -s 256 "${ASSET_DIR}"/${PN}.png + doicon -s scalable "${ASSET_DIR}"/${PN}.svg + domenu "${ASSET_DIR}"/${PN}.desktop + + if use source; then + java-pkg_dosrc "core/src/*" + java-pkg_dosrc "uis/src/*" + fi +} + +pkg_postinst() { + xdg_pkg_postinst + + optfeature_header "If you are using plugin proxies, you might want to swap them for these native packages:" + optfeature "I2P SOCKS proxy" net-vpn/i2p net-vpn/i2pd + optfeature "Tor SOCKS proxy" net-vpn/tor +}