add more cmake options, provide -cli and -qt subpackages [release 4.0.6-2mamba;Sun Aug 04 2024]

This commit is contained in:
Silvan Calarco 2024-08-04 22:24:29 +02:00
parent cfce117cae
commit dafd207700
4 changed files with 116 additions and 10 deletions

View File

@ -2,4 +2,5 @@
Transmission is a fast, easy, and free multi-platform BitTorrent client. Transmission is a fast, easy, and free multi-platform BitTorrent client.
Transmission is designed from the ground up to balance power with simplicity. We've set initial preferences so things "Just Work", while advanced features like watch directories, bad peer blocking, and the web interface can be configured with just a few clicks. When Ubuntu chose Transmission as its default BitTorrent client, one of the most-cited reasons was its easy learning curve. Transmission is designed from the ground up to balance power with simplicity. We've set initial preferences so things "Just Work", while advanced features like watch directories, bad peer blocking, and the web interface can be configured with just a few clicks. When Ubuntu chose Transmission as its default BitTorrent client, one of the most-cited reasons was its easy learning curve.
This package provides the Gtk interface.

View File

@ -0,0 +1 @@
u transmission - "Transmission BitTorrent Daemon" /var/lib/transmission

View File

@ -0,0 +1 @@
d /var/lib/transmission 0750 transmission transmission

View File

@ -1,6 +1,6 @@
Name: transmission Name: transmission
Version: 4.0.6 Version: 4.0.6
Release: 1mamba Release: 2mamba
Summary: Transmission is a fast, easy, and free multi-platform BitTorrent client Summary: Transmission is a fast, easy, and free multi-platform BitTorrent client
Group: Graphical Desktop/Applications/Internet Group: Graphical Desktop/Applications/Internet
Vendor: openmamba Vendor: openmamba
@ -8,19 +8,23 @@ Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it> Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: https://transmissionbt.com/ URL: https://transmissionbt.com/
Source: https://github.com/transmission/transmission.git/%{version}/transmission-%{version}.tar.bz2 Source: https://github.com/transmission/transmission.git/%{version}/transmission-%{version}.tar.bz2
Source1: transmission-cli.sysusers
Source2: transmission-cli.tmpfiles
Patch0: transmission-4.0.6-miniupnpc-2.2.8.patch Patch0: transmission-4.0.6-miniupnpc-2.2.8.patch
License: GPL2 License: GPL2
## AUTOBUILDREQ-BEGIN ## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel BuildRequires: glibc-devel
BuildRequires: libQt5Svg-devel BuildRequires: libb64-devel
BuildRequires: libcairo-devel BuildRequires: libcairo-devel
BuildRequires: libcairomm-devel BuildRequires: libcairomm-devel
BuildRequires: libcurl-devel BuildRequires: libcurl-devel
BuildRequires: libdeflate-devel
BuildRequires: libevent-devel BuildRequires: libevent-devel
BuildRequires: libgcc BuildRequires: libgcc
BuildRequires: libgdk-pixbuf-devel BuildRequires: libgdk-pixbuf-devel
BuildRequires: libglib-devel BuildRequires: libglib-devel
BuildRequires: libglibmm-devel BuildRequires: libglibmm-devel
BuildRequires: libglvnd-devel
BuildRequires: libgraphene-devel BuildRequires: libgraphene-devel
BuildRequires: libgtk-devel BuildRequires: libgtk-devel
BuildRequires: libgtkmm-devel BuildRequires: libgtkmm-devel
@ -35,22 +39,72 @@ BuildRequires: libsigc++-devel
BuildRequires: libstdc++6-devel BuildRequires: libstdc++6-devel
BuildRequires: libsystemd-devel BuildRequires: libsystemd-devel
BuildRequires: libvulkan-devel BuildRequires: libvulkan-devel
BuildRequires: qt5-qtbase-devel BuildRequires: qt6-qtbase-devel
BuildRequires: qt6-qtsvg-devel
## AUTOBUILDREQ-END ## AUTOBUILDREQ-END
BuildRequires: libdht-devel
BuildRequires: libminiupnpc-devel >= 0:2.2.8-1mamba BuildRequires: libminiupnpc-devel >= 0:2.2.8-1mamba
%description %description
Transmission is a fast, easy, and free multi-platform BitTorrent client. Transmission is a fast, easy, and free multi-platform BitTorrent client.
Transmission is designed from the ground up to balance power with simplicity. We've set initial preferences so things "Just Work", while advanced features like watch directories, bad peer blocking, and the web interface can be configured with just a few clicks. When Ubuntu chose Transmission as its default BitTorrent client, one of the most-cited reasons was its easy learning curve. Transmission is designed from the ground up to balance power with simplicity. We've set initial preferences so things "Just Work", while advanced features like watch directories, bad peer blocking, and the web interface can be configured with just a few clicks. When Ubuntu chose Transmission as its default BitTorrent client, one of the most-cited reasons was its easy learning curve.
This package provides the Gtk interface.
%package -n lib%{name}-devel
Group: Development/Libraries
Summary: Development files for %{name}
%description -n lib%{name}-devel
This package contains libraries and header files for developing applications that use %{name}.
%package cli
Summary: Cli interface for %{name}
Group: Applications/Communication
%description cli
Transmission is a fast, easy, and free multi-platform BitTorrent client.
Transmission is designed from the ground up to balance power with simplicity. We've set initial preferences so things "Just Work", while advanced features like watch directories, bad peer blocking, and the web interface can be configured with just a few clicks. When Ubuntu chose Transmission as its default BitTorrent client, one of the most-cited reasons was its easy learning curve.
This package provides the UI interface.
%package qt
Summary: Qt interface for %{name}
Group: Graphical Desktop/Applications/Internet
%description qt
Transmission is a fast, easy, and free multi-platform BitTorrent client.
Transmission is designed from the ground up to balance power with simplicity. We've set initial preferences so things "Just Work", while advanced features like watch directories, bad peer blocking, and the web interface can be configured with just a few clicks. When Ubuntu chose Transmission as its default BitTorrent client, one of the most-cited reasons was its easy learning curve.
This package provides the Qt interface.
%debug_package %debug_package
%prep %prep
%setup -q %setup -q
#-D -T
#:<< _EOF
%patch 0 -p1 %patch 0 -p1
%build %build
%cmake #:<< _EOF
%cmake \
-DENABLE_CLI=ON \
-DENABLE_DAEMON=ON \
-DENABLE_GTK=ON \
-DENABLE_MAC=OFF \
-DENABLE_QT=ON \
-DREBUILD_WEB=ON \
-DENABLE_TESTS=ON \
-DENABLE_UTILS=ON \
-DENABLE_UTP=ON \
-DINSTALL_LIB=ON \
-DUSE_SYSTEM_B64=ON \
-DUSE_SYSTEM_DEFLATE=ON \
-DUSE_SYSTEM_DHT=ON \
-DUSE_SYSTEM_EVENT2=ON \
-DUSE_SYSTEM_MINIUPNPC=ON \
-DUSE_SYSTEM_NATPMP=ON \
-DUSE_SYSTEM_PSL=ON \
-DUSE_SYSTEM_UTP=OFF \
-DWITH_CRYPTO=openssl
%cmake_build %cmake_build
@ -58,27 +112,76 @@ Transmission is designed from the ground up to balance power with simplicity. We
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" [ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%cmake_install %cmake_install
install -Dm644 daemon/transmission-daemon.service \
%{buildroot}%{_unitdir}/transmission.service
install -Dm644 %{SOURCE1} \
%{buildroot}%{_sysusersdir}/transmission.conf
install -Dm644 %{SOURCE2} \
%{buildroot}%{_tmpfilesdir}/transmission.conf
%find_lang %{name}-gtk %find_lang %{name}-gtk
%pre cli
%sysusers_create_package transmission %{SOURCE1}
%tmpfiles_create_package transmission %{SOURCE2}
:
%clean %clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" [ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%files -f %{name}-gtk.lang %files -f %{name}-gtk.lang
%defattr(-,root,root) %defattr(-,root,root)
%attr(755,root,root) %{_bindir}/transmission* %{_bindir}/transmission-gtk
%{_datadir}/applications/transmission-gtk.desktop %{_datadir}/applications/transmission-gtk.desktop
%{_datadir}/applications/transmission-qt.desktop
%{_metainfodir}/transmission-gtk.metainfo.xml %{_metainfodir}/transmission-gtk.metainfo.xml
%dir %{_datadir}/transmission %dir %{_datadir}/transmission
%{_datadir}/transmission/* %{_datadir}/icons/hicolor/scalable/apps/transmission*.svg
%{_datadir}/icons/* %{_datadir}/icons/hicolor/symbolic/apps/transmission-symbolic.svg
%{_mandir}/man?/* %{_mandir}/man1/transmission-gtk.1*
%dir %{_docdir}/transmission %dir %{_docdir}/transmission
%{_docdir}/transmission/* %{_docdir}/transmission/*
%doc AUTHORS COPYING %doc AUTHORS COPYING
#NEWS README
%files cli
%defattr(-,root,root)
%{_bindir}/transmission-cli
%{_bindir}/transmission-create
%{_bindir}/transmission-daemon
%{_bindir}/transmission-edit
%{_bindir}/transmission-remote
%{_bindir}/transmission-show
%{_unitdir}/transmission.service
%{_sysusersdir}/transmission.conf
%{_tmpfilesdir}/transmission.conf
%dir %{_datadir}/transmission/public_html
%{_datadir}/transmission/public_html/*
%{_mandir}/man1/transmission-cli.1*
%{_mandir}/man1/transmission-create.1*
%{_mandir}/man1/transmission-daemon.1*
%{_mandir}/man1/transmission-edit.1*
%{_mandir}/man1/transmission-remote.1*
%{_mandir}/man1/transmission-show.1*
%doc AUTHORS COPYING
%files qt
%defattr(-,root,root)
%{_bindir}/transmission-qt
%{_datadir}/applications/transmission-qt.desktop
%dir %{_datadir}/transmission/translations
%{_datadir}/transmission/translations/transmission_*.qm
%{_mandir}/man1/transmission-qt.1*
#%doc AUTHORS COPYING
%files -n lib%{name}-devel
%defattr(-,root,root)
%dir %{_includedir}/transmission
%{_includedir}/transmission/*
%{_libdir}/libtransmission.a
%changelog %changelog
* Sun Aug 04 2024 Silvan Calarco <silvan.calarco@mambasoft.it> 4.0.6-2mamba
- add more cmake options, provide -cli and -qt subpackages
* Wed Jun 26 2024 Silvan Calarco <silvan.calarco@mambasoft.it> 4.0.6-1mamba * Wed Jun 26 2024 Silvan Calarco <silvan.calarco@mambasoft.it> 4.0.6-1mamba
- update to 4.0.6 - update to 4.0.6