# Fragments requires latest *libtransmission* from master branch with # all submodules %global transmission_commit 3d9fd25269ccfc1dacf9c5cd23a3d232e0085150 %global transmission_shortcommit %(c=%{transmission_commit}; echo ${c:0:7}) %global libnatpmp_commit 4d3b9d87bbe7549830c212ce840600619abcf887 %global libnatpmp_shortcommit %(c=%{libnatpmp_commit}; echo ${c:0:7}) %global dht_commit 25e12bb39eea3d433602de6390796fec8a8f3620 %global dht_shortcommit %(c=%{dht_commit}; echo ${c:0:7}) %global libutp_commit fda9f4b3db97ccb243fcbed2ce280eb4135d705b %global libutp_shortcommit %(c=%{libutp_commit}; echo ${c:0:7}) %global appname Fragments %global filename de.haeckerfelix.%{appname} %global transmission_url https://github.com/transmission Name: fragments Version: 1.5 Release: 1%{?dist} Summary: Easy to use BitTorrent client which follows the GNOME HIG # The entire source code is GPLv3+ except: # BSD: libnatpmp # MIT: transmission License: GPLv3+ URL: https://gitlab.gnome.org/World/Fragments Source0: %{url}/-/archive/%{version}/%{appname}-%{version}.tar.gz Source1: %{transmission_url}/transmission/tarball/%{transmission_commit}#/transmission-%{transmission_shortcommit}.tar.gz Source2: %{transmission_url}/libnatpmp/tarball/%{libnatpmp_commit}#/libnatpmp-%{libnatpmp_shortcommit}.tar.gz Source3: %{transmission_url}/dht/tarball/%{dht_commit}#/dht-%{dht_shortcommit}.tar.gz Source4: %{transmission_url}/libutp/tarball/%{libutp_commit}#/libutp-%{libutp_shortcommit}.tar.gz BuildRequires: cmake BuildRequires: desktop-file-utils BuildRequires: gcc-c++ BuildRequires: intltool BuildRequires: libappstream-glib BuildRequires: libb64-devel BuildRequires: meson BuildRequires: vala BuildRequires: pkgconfig(gio-2.0) BuildRequires: pkgconfig(gio-unix-2.0) BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(gobject-2.0) BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(libcurl) BuildRequires: pkgconfig(libevent) >= 2.0.0 BuildRequires: pkgconfig(libhandy-1) BuildRequires: pkgconfig(miniupnpc) BuildRequires: pkgconfig(openssl) >= 0.9.7 BuildRequires: pkgconfig(zlib) Requires: hicolor-icon-theme Provides: bundled(dht) = 0.26.git%{dht_shortcommit} Provides: bundled(libnatpmp) = 0.git%{libnatpmp_shortcommit} Provides: bundled(libtransmission) = 0.94.git%{transmission_shortcommit} Provides: bundled(libutp) = 0.git%{libutp_shortcommit} %description Fragments is an easy to use BitTorrent client which follows the GNOME HIG and includes well thought-out features. %prep %autosetup -n %{appname}-%{version} %autosetup -n %{appname}-%{version} -D -T -a 1 %autosetup -n %{appname}-%{version} -D -T -a 2 %autosetup -n %{appname}-%{version} -D -T -a 3 %autosetup -n %{appname}-%{version} -D -T -a 4 mv transmission-libnatpmp-%{libnatpmp_shortcommit}/* \ transmission-transmission-%{transmission_shortcommit}/third-party/libnatpmp mv transmission-dht-%{dht_shortcommit}/* \ transmission-transmission-%{transmission_shortcommit}/third-party/dht mv transmission-libutp-%{libutp_shortcommit}/* \ transmission-transmission-%{transmission_shortcommit}/third-party/libutp # Just to be sure libtransmission not compiles with bundled openssl rm -r transmission-transmission-%{transmission_shortcommit}/third-party/openssl %build # First build bundled libtransmission pushd transmission-transmission-%{transmission_shortcommit} %cmake \ -DINSTALL_LIB=ON \ -DENABLE_DAEMON=OFF \ -DENABLE_UTILS=OFF \ -DENABLE_TESTS=OFF \ -DENABLE_GTK=OFF \ -DENABLE_QT=OFF \ -DINSTALL_DOC=OFF \ %{nil} %cmake_build %cmake_install popd # Set up env variables so that Fragments build can find libtransmission and its bundled dependencies export C_INCLUDE_PATH=%{buildroot}%{_includedir} export LIBRARY_PATH=`pwd`/transmission-transmission-%{transmission_shortcommit}/%{__cmake_builddir}/libtransmission:$LIBRARY_PATH export LIBRARY_PATH=`pwd`/transmission-transmission-%{transmission_shortcommit}/%{__cmake_builddir}/third-party/natpmp/lib:$LIBRARY_PATH export LIBRARY_PATH=`pwd`/transmission-transmission-%{transmission_shortcommit}/%{__cmake_builddir}/third-party/dht/lib:$LIBRARY_PATH export LIBRARY_PATH=`pwd`/transmission-transmission-%{transmission_shortcommit}/%{__cmake_builddir}/third-party/utp/lib:$LIBRARY_PATH # And finally, build Fragments %meson %meson_build %install %meson_install %find_lang %{name} %check appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/*.xml desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop %files -f %{name}.lang %doc README.md %license COPYING %{_bindir}/%{name} %{_datadir}/applications/*.desktop %{_datadir}/glib-2.0/schemas/*.gschema.xml %{_datadir}/icons/hicolor/*/*/* %{_metainfodir}/*.xml %changelog * Thu Feb 25 2021 Kalev Lember - 1.5-1 - Update to 1.5 - Switch to libhandy-1 * Tue Jan 26 2021 Fedora Release Engineering - 1.4-19 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Tue Sep 29 19:10:31 EEST 2020 Artem Polishchuk - 1.4-18 - Rebuild due libevent 2.1.12 with a soname bump 2 * Wed Sep 23 2020 Artem Polishchuk - 1.4-17 - Rebuild due libevent 2.1.12 with a soname bump - style: spec * Mon Jul 27 2020 Fedora Release Engineering - 1.4-16 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Tue Jan 28 2020 Fedora Release Engineering - 1.4-15 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Thu Jul 25 2019 Fedora Release Engineering - 1.4-14 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Sat Mar 16 2019 Artem Polishchuk - 1.4-13 - Initial package