diff options
-rw-r--r-- | net-p2p/qbittorrent/Manifest | 2 | ||||
-rw-r--r-- | net-p2p/qbittorrent/qbittorrent-4.6.5.ebuild | 145 |
2 files changed, 147 insertions, 0 deletions
diff --git a/net-p2p/qbittorrent/Manifest b/net-p2p/qbittorrent/Manifest index a3a8867cd88a..f668f4880a9e 100644 --- a/net-p2p/qbittorrent/Manifest +++ b/net-p2p/qbittorrent/Manifest @@ -4,3 +4,5 @@ DIST qbittorrent-4.6.3.tar.xz 4512004 BLAKE2B b97022d2380e4cc1c4fdd06e7365136978 DIST qbittorrent-4.6.3.tar.xz.asc 849 BLAKE2B 34f61400fd340dd3770c600e57be36a434c5fcfed1d2d8ad9e050e7112a141f7aec3e6f94d3bcd7a893a7969344f6d7120aa908a3c8ed9451a475bd25a98a53a SHA512 0d2420be78fd66a7f1e0e8797f73fcbe462f08640adbc0c681f9321423eefb7805d3267ab144e8934f00a7ebeac0931f16c9fef199196e222b57a0153916696e DIST qbittorrent-4.6.4.tar.xz 4517896 BLAKE2B e2fc721b25e4a8983e8b481061de38a74f84ef32e1b791d658284607b9555791af67424a9a53985514906cd07e66807d4c9020e927ff5f30124af581c6ca2095 SHA512 2c3c364ea9dd11b7230a568036f599e5aeb0a7f2bbaa109cb04a706c88e693b4b4a9df7166227c453315ac9945e0f56066664c216c78111b5671bb798f618181 DIST qbittorrent-4.6.4.tar.xz.asc 849 BLAKE2B 9eff44ee4bec81ee3064d8c8bccdf170144a4dc64c7bb56fb151a4effba5ba360190b7aeebbb284dc89ac888b82321457fd504cdddb6a722d57311cfb2c82f00 SHA512 817026a5695106a7f0a1ed60f221e52fb9c2244565d54ec43f21211dd3bffab89c8e02f2a71ff095e8a364dcfb44a13844af4d759a90d8133e7ef54021d2ab46 +DIST qbittorrent-4.6.5.tar.xz 4521852 BLAKE2B e988e73e2493d49a4f5e0ce64ac0d80ced288b9a324cbf8e31392e456aa8155a2d5d7109cd3aa0dd12e5d0332445fad2cc3b13b55e7c5844f53990a50f152e9a SHA512 a6e3c3c87eef6c547e602184105cb40da0b94d9887c61ba393bc71888943a9fa6a0fa990a7e6f69627b6d05208f7d39593ddf337125127985e90f859b6edc877 +DIST qbittorrent-4.6.5.tar.xz.asc 849 BLAKE2B c4ca92c7fc3ced048c068b9f0f805e0b511d86d30647e5310bc64ebbb186f35b6d3345436e9176e9e095ac9427d6a4b07b0bc3994e693098adfec07074e10b24 SHA512 b3c3d3740691346f3f48aa556e55702917b031d6f10802ca2a58c94097e096d2bc87d90cf2fefed30cd426f94fc108c7cbed44c95bf3cc0a0128dab0413c147b diff --git a/net-p2p/qbittorrent/qbittorrent-4.6.5.ebuild b/net-p2p/qbittorrent/qbittorrent-4.6.5.ebuild new file mode 100644 index 000000000000..534975068940 --- /dev/null +++ b/net-p2p/qbittorrent/qbittorrent-4.6.5.ebuild @@ -0,0 +1,145 @@ +# Copyright 2023-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake edo multibuild 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" +SLOT="0" +IUSE="+dbus +gui qt6 systemd test webui" +RESTRICT="!test? ( test )" +REQUIRED_USE="|| ( gui webui ) + dbus? ( gui ) +" + +RDEPEND=" + >=dev-libs/openssl-1.1.1:= + >=net-libs/libtorrent-rasterbar-1.2.19:= + >=sys-libs/zlib-1.2.11 + qt6? ( >=dev-qt/qtbase-6.2:6[network,ssl,sql,sqlite,xml] ) + !qt6? ( + dev-qt/qtcore:5 + dev-qt/qtnetwork:5[ssl] + dev-qt/qtsql:5[sqlite] + dev-qt/qtxml:5 + ) + gui? ( + !qt6? ( + dev-qt/qtgui:5 + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5 + dbus? ( dev-qt/qtdbus:5 ) + ) + qt6? ( + >=dev-qt/qtbase-6.2:6[dbus?,gui,widgets] + >=dev-qt/qtsvg-6.2:6 + ) + ) + webui? ( + acct-group/qbittorrent + acct-user/qbittorrent + ) +" +DEPEND=" + ${RDEPEND} + >=dev-libs/boost-1.71 + test? ( + !qt6? ( dev-qt/qttest:5 ) + )" +BDEPEND+=" + !qt6? ( dev-qt/linguist-tools:5 ) + qt6? ( >=dev-qt/qttools-6.2: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 ) + + 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 + -DQT6=$(usex qt6) + -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 +} |