net-p2p/qbittorrent-5.1.2

This commit is contained in:
TheK0tYaRa 2025-09-12 22:06:42 +03:00
parent 2ba044d6cd
commit 1e1b0255e1
5 changed files with 199 additions and 0 deletions

View file

@ -0,0 +1,2 @@
DIST qbittorrent-5.1.2.tar.xz 4631900 BLAKE2B 5cf21619c29878f1cecc08d66df27289c8f8541fe03bc4593384394921ad13891fc89f5846a9828b927ea08b51c0123d17d02952fee0b5ddac6dd259a9b0030b SHA512 8817c0136892373257b4c89983121af1d2c33ab93b248678949775c3b0e5e6b299cefd1ad3c7ab9b88c56a618ee3837a984872f781bb4ace9769c92a42908cab
DIST qbittorrent-5.1.2.tar.xz.asc 849 BLAKE2B 2d023dd2dc922da973f26094349c2262e8f29227b615debc4a8f04c511bb513bfa56c0ac78e8e351e5b6c5f1a003c29d3a1860cd31e7d3dcbb006367b41e7d3e SHA512 69be899ed521da551ebcf0961c494ae828d2143fea9bc253f17ed81df61c4989124a8b231226c83c433314059e292ee3bf58422d861166eaa4272597bb8643c6

View file

@ -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=""

View file

@ -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}
}

View file

@ -0,0 +1,24 @@
<?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="dbus">Enable support for notifications and power-management features via D-Bus</flag>
<flag name="webui">Install qBittorrent Web UI (qbittorrent-nox)</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>

View file

@ -0,0 +1,126 @@
# Copyright 2023-2025 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+-with-openssl-exception GPL-3+-with-openssl-exception"
SLOT="0"
IUSE="+dbus +gui test webui"
RESTRICT="!test? ( test )"
REQUIRED_USE="
|| ( gui webui )
dbus? ( gui )
"
RDEPEND="
>=dev-libs/openssl-3.0.2:=
>=dev-qt/qtbase-6.5:6[network,ssl,sql,sqlite,xml]
>=net-libs/libtorrent-rasterbar-2.0.10:=
>=sys-libs/zlib-1.2.11
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,README}.md )
src_configure() {
MULTIBUILD_VARIANTS=(
$(usev gui)
$(usev webui nogui)
)
my_src_configure() {
local mycmakeargs=(
-DVERBOSE_CONFIGURE=ON # for bug reports
-DSTACKTRACE=$(usex !elibc_musl) # musl lacks execinfo.h
-DTESTING=$(usex test)
-DWEBUI=$(usex webui)
)
# upstream supports building just gui or nogui
# so we build the project twice (see #839531 for details)
# Fedora does the same: https://src.fedoraproject.org/rpms/qbittorrent
if [[ ${MULTIBUILD_VARIANT} == "gui" ]]; then
mycmakeargs+=(
-DGUI=ON
-DDBUS=$(usex dbus)
-DSYSTEMD=OFF
)
else
mycmakeargs+=(
-DGUI=OFF
-DDBUS=OFF
# The systemd service calls qbittorrent-nox, built only 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
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
}