diff options
Diffstat (limited to 'community/transmission/APKBUILD')
-rw-r--r-- | community/transmission/APKBUILD | 176 |
1 files changed, 137 insertions, 39 deletions
diff --git a/community/transmission/APKBUILD b/community/transmission/APKBUILD index 7e18809a726..890565c4167 100644 --- a/community/transmission/APKBUILD +++ b/community/transmission/APKBUILD @@ -1,9 +1,9 @@ # Contributor: Rasmus Thomsen <oss@cogitri.dev> # Contributor: Carlo Landmeter <clandmeter@alpinelinux.org> -# Maintainer: Rasmus Thomsen <oss@cogitri.dev> +# Maintainer: Alex McGrath <amk@amk.ie> pkgname=transmission -pkgver=3.00 -pkgrel=3 +pkgver=4.0.5 +pkgrel=1 pkgdesc="Lightweight GTK BitTorrent client" url="https://transmissionbt.com/" install="transmission-daemon.pre-install transmission-daemon.post-upgrade" @@ -11,39 +11,94 @@ arch="all" license="GPL-2.0-or-later AND MIT" pkgusers="transmission" pkggroups="transmission" -makedepends="cmake bsd-compat-headers curl-dev dbus-glib-dev - gtk+3.0-dev intltool libevent-dev libnotify-dev openssl-dev tar" -options="!check" # no tests -source="https://github.com/transmission/transmission-releases/raw/master/transmission-$pkgver.tar.xz +makedepends=" + clang + cmake + curl-dev + dbus-glib-dev + gtkmm4-dev + libdeflate-dev + libevent-dev + libpsl-dev + llvm + miniupnpc-dev + openssl-dev + qt6-qtsvg-dev + qt6-qttools-dev + samurai + " +source="https://github.com/transmission/transmission/releases/download/$pkgver/transmission-$pkgver.tar.xz transmission-daemon.initd transmission-daemon.confd transmission-daemon.logrotate - disable-missing-lang.patch " -subpackages="$pkgname-cli $pkgname-daemon $pkgname-daemon-openrc $pkgname-doc $pkgname-lang $pkgname-static" +subpackages=" + $pkgname-lang-gtk:gtklang + $pkgname-gtk + $pkgname-lang-qt:qtlang + $pkgname-qt + $pkgname-base::noarch + $pkgname-cli + $pkgname-remote + $pkgname-extra + $pkgname-daemon + $pkgname-daemon-openrc + $pkgname-doc + " + +case "$CARCH" in +riscv64|s390x) + # lld broken on these + ;; +*) + makedepends="$makedepends lld" + export LDFLAGS="$LDFLAGS -fuse-ld=lld" + ;; +esac # secfixes: # 3.00-r0: # - CVE-2018-10756 build() { - cmake -B build \ + unset CI # https://github.com/transmission/transmission/blob/main/CMakeLists.txt#L224-L227 + CC=clang \ + CXX=clang++ \ + CXXFLAGS="$CXXFLAGS -flto -O2 -DNDEBUG" \ + CFLAGS="$CFLAGS -flto -O2 -DNDEBUG" \ + cmake -B build -G Ninja \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_INSTALL_LIBDIR=lib \ - -DBUILD_SHARED_LIBS=True \ -DCMAKE_BUILD_TYPE=None \ - -DCMAKE_CXX_FLAGS="$CXXFLAGS" \ - -DCMAKE_C_FLAGS="$CFLAGS" \ - -DENABLE_GTK=TRUE \ - -DENABLE_CLI=TRUE \ - -DENABLE_TESTS=FALSE \ - -DWITH_SYSTEMD=FALSE \ - -DINSTALL_LIB=TRUE - make -C build + -DBUILD_SHARED_LIBS=OFF \ + -DDISABLE_DEPRECATED=OFF \ + -DENABLE_CLI=ON \ + -DENABLE_GTK=ON \ + -DENABLE_NLS=ON \ + -DENABLE_QT=ON \ + -DENABLE_TESTS="$(want_check && echo ON || echo OFF)" \ + -DINSTALL_LIB=OFF \ + -DRUN_CLANG_TIDY=OFF \ + -DUSE_GTK_VERSION=4 \ + -DUSE_QT_VERSION=6 \ + -DUSE_SYSTEM_DEFLATE=ON \ + -DUSE_SYSTEM_EVENT2=ON \ + -DUSE_SYSTEM_MINIUPNPC=ON \ + -DUSE_SYSTEM_PSL=ON \ + -DWITH_CRYPTO="openssl" \ + -DWITH_SYSTEMD=OFF + cmake --build build +} + +check() { + # unstable + ctest --test-dir build --output-on-failure -j4 -E LT.DhtTest.usesBootstrapFile } package() { - make -C build DESTDIR="$pkgdir" install + # the base package used to be -gtk, so depend on it now. + depends="$pkgname-gtk=$pkgver-r$pkgrel" + DESTDIR="$pkgdir" cmake --install build install -D -m755 "$srcdir"/transmission-daemon.initd \ "$pkgdir"/etc/init.d/transmission-daemon @@ -52,35 +107,78 @@ package() { } daemon() { - pkgdesc="Lightweight BitTorrent client (daemon and webinterface)" + pkgdesc="$pkgdesc (daemon and webinterface)" - install -d "$subpkgdir"/usr/share \ - "$subpkgdir"/usr/bin install -d -o transmission -g transmission \ "$subpkgdir"/var/lib/transmission \ "$subpkgdir"/var/log/transmission - mv "$pkgdir"/usr/bin/transmission-daemon \ - "$subpkgdir"/usr/bin/ - mv "$pkgdir"/usr/share/transmission \ - "$subpkgdir"/usr/share/ + amove usr/bin/transmission-daemon \ + usr/share/transmission install -D -m644 "$srcdir"/transmission-daemon.logrotate \ "$subpkgdir"/etc/logrotate.d/transmission-daemon } cli() { - pkgdesc="Lightweight BitTorrent client (cli and remote)" - - install -d "$subpkgdir"/usr/bin - mv "$pkgdir"/usr/bin/transmission-cli \ - "$pkgdir"/usr/bin/transmission-create \ - "$pkgdir"/usr/bin/transmission-edit \ - "$pkgdir"/usr/bin/transmission-show \ - "$pkgdir"/usr/bin/transmission-remote \ - "$subpkgdir"/usr/bin/ + pkgdesc="$pkgdesc (cli)" + + amove usr/bin/transmission-cli +} + +remote() { + pkgdesc="$pkgdesc (remote client)" + + amove usr/bin/transmission-remote +} + +extra() { + pkgdesc="$pkgdesc (create/edit/show tools)" + + amove \ + usr/bin/transmission-create \ + usr/bin/transmission-edit \ + usr/bin/transmission-show +} + +base() { + pkgdesc="Base icons/data for $pkgname" + + amove usr/share/icons + amove usr/share/metainfo +} + +gtk() { + pkgdesc="$pkgdesc (GTK4 client)" + depends="$pkgname-base=$pkgver-r$pkgrel" + + amove usr/bin/transmission-gtk + amove usr/share/applications/transmission-gtk.desktop +} + +gtklang() { + pkgdesc="Translations for Transmission GTK" + install_if="$pkgname-gtk=$pkgver-r$pkgrel lang" + + amove usr/share/locale +} + +qt() { + pkgdesc="$pkgdesc (Qt6 client)" + depends="$pkgname-base=$pkgver-r$pkgrel qt6-qtsvg" + + amove usr/bin/transmission-qt + amove usr/share/applications/transmission-qt.desktop +} + +qtlang() { + pkgdesc="Translations for Transmission Qt" + install_if="$pkgname-qt=$pkgver-r$pkgrel lang" + + amove usr/share/transmission/translations } -sha512sums="eeaf7fe46797326190008776a7fa641b6341c806b0f1684c2e7326c1284832a320440013e42a37acda9fd0ee5dca695f215d6263c8acb39188c5d9a836104a61 transmission-3.00.tar.xz +sha512sums=" +9d3df965929ba18aa8186f89060aeacc8ead3df4a5acdc74a005dc62deadc5fa239af99c49ca2477cc5c1adfcd834481105f1dbc94e0efe210e9e6680bfec124 transmission-4.0.5.tar.xz d31275fba7eb322510f9667e66a186d626889a6e3143be2923aae87b9c35c5cf0c508639f1cb8c1b88b1e465bc082d80bb1101385ebde736a34d4eeeae0f6e15 transmission-daemon.initd -a3b9ac2b7bbe30e33060c8b6a693dc7072d3c6ac44f92ddd567969d8f57a0bfc1a561e781ae167703ccb4b2fd5b0e6d8f8a66c5ba14fe01d8d89a501d4501474 transmission-daemon.confd +dbc093fe00335bb207c28a4e810becc15e74b6f75e7579d561b160755d6b54bb23a45db39ee3480195a94a5e9bffdad692559d1b9662bba28119d18b713747a1 transmission-daemon.confd a0e770a46b916cde7ea13076a0e4646c43f3b4db4bc85c18d2fee7cdb5cab458a74897ffb4bf66327f35ce145e89f5320460034a1392cc0df66aa1a3c0d82f7b transmission-daemon.logrotate -a09db6628d618b75fe5688638256b87042987f3e3df2210a93ba0ddf5d7602150d28f2a9f85c1fbc7654b1e32be101871d24a466f2cccaf05b34abe07133edc9 disable-missing-lang.patch" +" |