public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/proj/libressl:master commit in: net-p2p/qbittorrent/, net-p2p/qbittorrent/files/
@ 2024-10-03 16:33 orbea
  0 siblings, 0 replies; only message in thread
From: orbea @ 2024-10-03 16:33 UTC (permalink / raw
  To: gentoo-commits

commit:     cb5296a1671cf67101c402349f9257acf7ab28e9
Author:     orbea <orbea <AT> riseup <DOT> net>
AuthorDate: Thu Oct  3 16:31:43 2024 +0000
Commit:     orbea <orbea <AT> riseup <DOT> net>
CommitDate: Thu Oct  3 16:32:03 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/libressl.git/commit/?id=cb5296a1

net-p2p/qbittorrent: new package, add 5.0.0

Closes: https://github.com/gentoo/libressl/issues/572
Signed-off-by: orbea <orbea <AT> riseup.net>

 net-p2p/qbittorrent/Manifest                 |   2 +
 net-p2p/qbittorrent/files/qbittorrent.confd  |  20 ++++
 net-p2p/qbittorrent/files/qbittorrent.initd  |  27 ++++++
 net-p2p/qbittorrent/metadata.xml             |  25 +++++
 net-p2p/qbittorrent/qbittorrent-5.0.0.ebuild | 138 +++++++++++++++++++++++++++
 5 files changed, 212 insertions(+)

diff --git a/net-p2p/qbittorrent/Manifest b/net-p2p/qbittorrent/Manifest
new file mode 100644
index 0000000..5aca384
--- /dev/null
+++ b/net-p2p/qbittorrent/Manifest
@@ -0,0 +1,2 @@
+DIST qbittorrent-5.0.0.tar.xz 4512592 BLAKE2B 156a2aae2c45d877197d50ec0c42b003dcb290d2e612b93d94f10c1c1b55fb24d6bc37cfd489b70f545bb4f390ee35634a808992441ce49e7e27de5ecb508943 SHA512 ab480c181f3a43a3e248daa35d3d3e0b121eb80bfd8a4a4d63fd504ba26441a31e7ca563fe80bc520ad1219104cf929460cfc0a5cfdad13ad61a5a316deeb695
+DIST qbittorrent-5.0.0.tar.xz.asc 849 BLAKE2B c3fee4711f51491c26ca7669ce8746853b886334454b1b6a7ae0fb61e2634cfe3172c00f3b0ac2c1ca498b23969c3d6ac3095fbb380e9a3626a1923705a40fb3 SHA512 60589122b9030f17afa766a757992134430f7bb32ee97acc5f544dcac99f82a0fc00411d46a11c52f350790f86fa686158e06c74cc53dbabcfc96ebb5f4af09e

diff --git a/net-p2p/qbittorrent/files/qbittorrent.confd b/net-p2p/qbittorrent/files/qbittorrent.confd
new file mode 100644
index 0000000..21e2e42
--- /dev/null
+++ b/net-p2p/qbittorrent/files/qbittorrent.confd
@@ -0,0 +1,20 @@
+# /etc/conf.d/qbittorrent: config file for /etc/init.d/qbittorrent
+
+# User and group as which to run
+#QBITTORRENT_USER="qbittorrent"
+#QBITTORRENT_GROUP="qbittorrent"
+
+# Directory where qBittorrent saves its logs (and maybe downloads)
+#QBITTORRENT_DIRECTORY="/var/lib/qbittorrent"
+
+# umask used to create files
+#QBITTORRENT_UMASK=0022
+
+# I/O nice level of qBittorrent
+#QBITTORRENT_IONICE=0
+
+# Nice level of qBittorrent
+#QBITTORRENT_NICE=0
+
+# Extra opts given to qBittorrent
+#QBITTORRENT_OPTS=""

diff --git a/net-p2p/qbittorrent/files/qbittorrent.initd b/net-p2p/qbittorrent/files/qbittorrent.initd
new file mode 100644
index 0000000..a04de6a
--- /dev/null
+++ b/net-p2p/qbittorrent/files/qbittorrent.initd
@@ -0,0 +1,27 @@
+#!/sbin/openrc-run
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+QBITTORRENT_USER=${QBITTORRENT_USER:-qbittorrent}
+QBITTORRENT_GROUP=${QBITTORRENT_GROUP:-qbittorrent}
+QBITTORRENT_DIRECTORY=${QBITTORRENT_DIRECTORY:-/var/lib/qbittorrent}
+QBITTORRENT_UMASK=${QBITTORRENT_UMASK:-0022}
+QBITTORRENT_IONICE=${QBITTORRENT_IONICE:-0}
+QBITTORRENT_NICE=${QBITTORRENT_NICE:-0}
+
+description="BitTorrent client in C++ and Qt"
+command="/usr/bin/qbittorrent-nox"
+command_args="${QBITTORRENT_OPTS}"
+pidfile="/run/${RC_SVCNAME}.pid"
+command_background="yes"
+command_user="${QBITTORRENT_USER}:${QBITTORRENT_GROUP}"
+umask="${QBITTORRENT_UMASK}"
+start_stop_daemon_args="--ionice ${QBITTORRENT_IONICE} --nicelevel ${QBITTORRENT_NICE}"
+
+depend() {
+    need localmount net
+}
+
+start_pre() {
+    checkpath -q -d -o ${QBITTORRENT_USER}:${QBITTORRENT_GROUP} ${QBITTORRENT_DIRECTORY}
+}

diff --git a/net-p2p/qbittorrent/metadata.xml b/net-p2p/qbittorrent/metadata.xml
new file mode 100644
index 0000000..f62d481
--- /dev/null
+++ b/net-p2p/qbittorrent/metadata.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<maintainer type="person">
+		<email>eschwartz@gentoo.org</email>
+		<name>Eli Schwartz</name>
+	</maintainer>
+	<maintainer type="person" proxied="yes">
+		<email>fkobi@pm.me</email>
+		<name>Filip Kobierski</name>
+	</maintainer>
+	<use>
+		<flag name="webui">
+			Install qBittorrent Web UI (qbittorrent-nox) and systemd/OpenRC service
+		</flag>
+	</use>
+	<upstream>
+		<bugs-to>https://github.com/qbittorrent/qBittorrent/issues</bugs-to>
+		<changelog>https://www.qbittorrent.org/news</changelog>
+		<doc>https://github.com/qbittorrent/qBittorrent/wiki</doc>
+		<remote-id type="github">qbittorrent/qBittorrent</remote-id>
+		<!-- Sourceforge hosts the distfiles.
+		Ignore the "redirection" and "missing remote-id" warnings -->
+	</upstream>
+</pkgmetadata>

diff --git a/net-p2p/qbittorrent/qbittorrent-5.0.0.ebuild b/net-p2p/qbittorrent/qbittorrent-5.0.0.ebuild
new file mode 100644
index 0000000..d89451c
--- /dev/null
+++ b/net-p2p/qbittorrent/qbittorrent-5.0.0.ebuild
@@ -0,0 +1,138 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake edo multibuild optfeature systemd verify-sig xdg
+
+DESCRIPTION="BitTorrent client in C++ and Qt"
+HOMEPAGE="https://www.qbittorrent.org"
+
+if [[ ${PV} == *9999 ]]; then
+	EGIT_REPO_URI="https://github.com/qbittorrent/qBittorrent.git"
+	inherit git-r3
+else
+	SRC_URI="
+		https://downloads.sourceforge.net/qbittorrent/${P}.tar.xz
+		verify-sig? ( https://downloads.sourceforge.net/qbittorrent/${P}.tar.xz.asc )
+	"
+	KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+	BDEPEND="verify-sig? ( sec-keys/openpgp-keys-qbittorrent )"
+	VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/qBittorrent.asc
+fi
+
+LICENSE="GPL-2+ GPL-3+"
+SLOT="0"
+IUSE="+dbus +gui systemd test webui"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="
+	|| ( gui webui )
+	dbus? ( gui )
+"
+
+RDEPEND="
+	>=dev-libs/openssl-3.0.2:=
+	>=net-libs/libtorrent-rasterbar-1.2.19:=
+	>=sys-libs/zlib-1.2.11
+	>=dev-qt/qtbase-6.5:6[network,ssl,sql,sqlite,xml]
+	gui? (
+		>=dev-qt/qtbase-6.5:6[dbus?,gui,widgets]
+		>=dev-qt/qtsvg-6.5:6
+	)
+	webui? (
+		acct-group/qbittorrent
+		acct-user/qbittorrent
+	)
+"
+DEPEND="
+	${RDEPEND}
+	>=dev-libs/boost-1.76
+"
+BDEPEND+="
+	>=dev-qt/qttools-6.5:6[linguist]
+	virtual/pkgconfig
+"
+
+DOCS=( AUTHORS Changelog CONTRIBUTING.md README.md )
+
+src_prepare() {
+	MULTIBUILD_VARIANTS=()
+	use gui && MULTIBUILD_VARIANTS+=( gui )
+	use webui && MULTIBUILD_VARIANTS+=( nogui )
+
+	# Detect LibreSSL
+	sed -e 's/minOpenSSLVersion 3.0.2/minOpenSSLVersion 2.0.0/' -i CMakeLists.txt || die
+
+	cmake_src_prepare
+}
+
+src_configure() {
+	my_src_configure() {
+		local mycmakeargs=(
+			# musl lacks execinfo.h
+			-DSTACKTRACE=$(usex !elibc_musl)
+			# More verbose build logs are preferable for bug reports
+			-DVERBOSE_CONFIGURE=ON
+			-DWEBUI=$(usex webui)
+			-DTESTING=$(usex test)
+		)
+
+		if [[ ${MULTIBUILD_VARIANT} == "gui" ]]; then
+			# We do this in multibuild, see bug #839531 for why.
+			# Fedora has to do the same thing.
+			mycmakeargs+=(
+				-DGUI=ON
+				-DDBUS=$(usex dbus)
+				-DSYSTEMD=OFF
+			)
+		else
+			mycmakeargs+=(
+				-DGUI=OFF
+				-DDBUS=OFF
+			)
+
+			use systemd && mycmakeargs+=(
+				# The systemd service calls qbittorrent-nox, which is only
+				# installed when GUI=OFF.
+				-DSYSTEMD=ON
+				-DSYSTEMD_SERVICES_INSTALL_DIR="$(systemd_get_systemunitdir)"
+			)
+		fi
+
+		cmake_src_configure
+	}
+
+	multibuild_foreach_variant my_src_configure
+}
+
+src_compile() {
+	multibuild_foreach_variant cmake_src_compile
+}
+
+src_test() {
+	my_src_test() {
+		# cmake does not detect tests by default, if you use enable_testing
+		# in a subdirectory instead of the root CMakeLists.txt
+		cd "${BUILD_DIR}"/test || die
+		edo ctest .
+	}
+
+	multibuild_foreach_variant my_src_test
+}
+
+src_install() {
+	multibuild_foreach_variant cmake_src_install
+	einstalldocs
+
+	if use webui; then
+		newconfd "${FILESDIR}/${PN}.confd" "${PN}"
+		newinitd "${FILESDIR}/${PN}.initd" "${PN}"
+	fi
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+
+	optfeature "I2P anonymyzing network support" net-vpn/i2pd net-vpn/i2p
+}


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2024-10-03 16:33 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-03 16:33 [gentoo-commits] repo/proj/libressl:master commit in: net-p2p/qbittorrent/, net-p2p/qbittorrent/files/ orbea

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox