]> git.pld-linux.org Git - packages/transmission.git/blame - transmission.spec
package translations dir
[packages/transmission.git] / transmission.spec
CommitLineData
00900554 1#
a1d9536a 2# Conditional build:
7b5e04bd 3%bcond_without gtk # without GTK GUI
058ef471 4%bcond_with gtk4 # use GTK4 for GTK GUI
7b5e04bd 5%bcond_without qt # without Qt GUI
058ef471 6%bcond_with qt6 # use Qt6 for Qt GUI
b04b9fcb 7%bcond_without systemd # without systemd unit
45cd44dc 8
058ef471 9%define qtver 5.6
c72d551a 10
0f16bf9a 11Summary: A versatile and multi-platform BitTorrent client
f2dfe381 12Summary(hu.UTF-8): Egy sokoldalú és multiplatformos BitTorrent kliens
bb59eb4f 13Summary(pl.UTF-8): Wszechstronny i wieloplatformowy klient BitTorrenta
905dacdd 14Name: transmission
058ef471
JP
15Version: 4.0.0
16Release: 1
0f16bf9a
PZ
17License: MIT
18Group: Applications/Communications
058ef471
JP
19Source0: https://github.com/transmission/transmission/releases/download/%{version}/%{name}-%{version}.tar.xz
20# Source0-md5: d73915000cf2871404b45a64969cea83
9232dd57
PG
21Source1: %{name}.sysconfig
22Source2: %{name}.init
058ef471 23Patch0: werror.patch
ec12ede2 24URL: http://transmissionbt.com/
058ef471
JP
25BuildRequires: cmake >= 3.12
26BuildRequires: curl-devel >= 7.28.0
9bafbf8d 27BuildRequires: gettext-tools
7b5e04bd 28%if %{with gtk}
058ef471
JP
29%if %{with gtk4}
30BuildRequires: glibmm2.68-devel >= 2.60.0
31BuildRequires: gtkmm4-devel >= 3.24.0
32%else
33BuildRequires: glibmm-devel >= 2.60.0
34BuildRequires: gtkmm3-devel >= 3.24.0
35BuildRequires: libayatana-appindicator-gtk3-devel
7b5e04bd 36%endif
058ef471
JP
37%endif
38BuildRequires: libb64-devel
39BuildRequires: libdeflate-devel >= 1.10
40BuildRequires: libevent-devel >= 2.1.0
c72d551a 41BuildRequires: libnatpmp-devel
058ef471
JP
42BuildRequires: libpsl-devel >= 0.21.1
43BuildRequires: libstdc++-devel >= 6:5
4c544984 44BuildRequires: lsb-release
c72d551a 45BuildRequires: miniupnpc-devel >= 1.7
07b38397 46BuildRequires: openssl-devel >= 0.9.7
0f16bf9a 47BuildRequires: pkgconfig
bddc269c 48BuildRequires: rpm-build >= 4.6
058ef471
JP
49BuildRequires: rpmbuild(macros) >= 1.742
50%{?with_systemd:BuildRequires: systemd-devel}
05606945 51BuildRequires: tar >= 1:1.22
071083d3 52BuildRequires: xfsprogs-devel
05606945 53BuildRequires: xz
7b5e04bd 54%if %{with qt}
058ef471
JP
55%if %{with qt6}
56BuildRequires: Qt6Core-devel >= %{qtver}
57BuildRequires: Qt6DBus-devel >= %{qtver}
58BuildRequires: Qt6Gui-devel >= %{qtver}
59BuildRequires: Qt6Network-devel >= %{qtver}
60BuildRequires: Qt6Svg-devel >= %{qtver}
61BuildRequires: Qt6Widgets-devel >= %{qtver}
62BuildRequires: qt6-build >= %{qtver}
63BuildRequires: qt6-linguist >= %{qtver}
64%else
7b5e04bd
JP
65BuildRequires: Qt5Core-devel >= %{qtver}
66BuildRequires: Qt5DBus-devel >= %{qtver}
67BuildRequires: Qt5Gui-devel >= %{qtver}
68BuildRequires: Qt5Network-devel >= %{qtver}
058ef471 69BuildRequires: Qt5Svg-devel >= %{qtver}
7b5e04bd
JP
70BuildRequires: Qt5Widgets-devel >= %{qtver}
71BuildRequires: qt5-build >= %{qtver}
058ef471
JP
72BuildRequires: qt5-linguist >= %{qtver}
73%endif
7b5e04bd 74%endif
b4dc7e64 75BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
0f16bf9a
PZ
76
77%description
78Transmission has been built from the ground up to be a lightweight,
79yet powerful BitTorrent client. Its simple, intuitive interface is
80designed to integrate tightly with whatever computing environment you
81choose to use. Transmission strikes a balance between providing useful
82functionality without feature bloat.
83
f2dfe381 84%description -l hu.UTF-8
d8e696e8 85Transmission egy könnyűsúlyú, de mégis egy erőteljes BitTorrent
86kliens. Egyszerű, intuitív felülete szorosan illeszkedik bármilyen
f2dfe381
ZU
87számítógépes környezetbe, amit csak választasz. A Transmission célja
88megtalálni a használható funkcionalitást lehetőségek áradata nélkül.
89
bb59eb4f
JB
90%description -l pl.UTF-8
91Transmission został stworzony od podstaw, aby być lekkim lecz mającym
92duże możliwości klientem BitTorrenta. Jego prosty, intuicyjny
93interfejs jest zaprojektowany spójnie z dowolnym środowiskiem wybranym
94przez użytkownika. Transmission stawia na równowagę zapewnienia
95przydatnej funkcjonalności bez nadmiaru opcji.
96
35de15cb
JP
97%package cli
98Summary: Command line implementation for BitTorrent client
99Summary(pl.UTF-8): Implementacja w wierszu poleceń dla klienta BitTorrenta
100Group: Applications/Networking
101Requires: %{name}-common = %{version}-%{release}
058ef471
JP
102Requires: curl-libs >= 7.28.0
103Requires: libdeflate >= 1.10
104Requires: libevent >= 2.1.0
105Requires: libpsl >= 0.21.1
35de15cb
JP
106Requires: miniupnpc >= 1.7
107Requires: openssl >= 0.9.7
35de15cb
JP
108
109%description cli
110Transmission has been built from the ground up to be a lightweight,
111yet powerful BitTorrent client. Its simple, intuitive interface is
112designed to integrate tightly with whatever computing environment you
113choose to use. Transmission strikes a balance between providing useful
114functionality without feature bloat.
115
116Command line implementation for BitTorrent client.
117
118%description cli -l hu.UTF-8
119Transmission egy könnyűsúlyú, de mégis egy erőteljes BitTorrent
120kliens. Egyszerű, intuitív felülete szorosan illeszkedik bármilyen
121számítógépes környezetbe, amit csak választasz. A Transmission célja
122megtalálni a használható funkcionalitást lehetőségek áradata nélkül.
123
124%description cli -l pl.UTF-8
125Transmission został stworzony od podstaw, aby być lekkim lecz mającym
126duże możliwości klientem BitTorrenta. Jego prosty, intuicyjny
127interfejs jest zaprojektowany spójnie z dowolnym środowiskiem wybranym
128przez użytkownika. Transmission stawia na równowagę zapewnienia
129przydatnej funkcjonalności bez nadmiaru opcji.
130
131Implementacja w wierszu poleceń dla klienta BitTorrenta.
132
133%package common
134Summary: Common files for Transmission BitTorrent client
135Summary(pl.UTF-8): Pliki wspólne dla klienta BitTorrenta Transmission
136Group: Applications/Networking
d42be15d 137BuildArch: noarch
35de15cb
JP
138
139%description common
140Common files for Transmission BitTorrent client.
141
142%description common -l pl.UTF-8
143Pliki wspólne dla klienta BitTorrenta Transmission.
144
145%package daemon
00900554
JB
146Summary: Daemon package for BitTorrent client
147Summary(pl.UTF-8): Pakiet demona dla klienta BitTorrenta
4c544984 148Group: Networking/Daemons
35de15cb 149Requires: %{name}-common = %{version}-%{release}
058ef471
JP
150Requires: curl-libs >= 7.28.0
151Requires: libdeflate >= 1.10
152Requires: libevent >= 2.1.0
153Requires: libpsl >= 0.21.1
35de15cb
JP
154Requires: miniupnpc >= 1.7
155Requires: openssl >= 0.9.7
b04b9fcb 156%{?with_systemd:Requires: systemd-units >= 38}
6cdf40a0
JP
157Provides: group(transmission)
158Provides: user(transmission)
35de15cb
JP
159Obsoletes: Transmission <= 1.05
160Obsoletes: transmission < 3.00-2
161Obsoletes: transmission-init < 3.00-2
162
163%description daemon
164Transmission has been built from the ground up to be a lightweight,
165yet powerful BitTorrent client. Its simple, intuitive interface is
166designed to integrate tightly with whatever computing environment you
167choose to use. Transmission strikes a balance between providing useful
168functionality without feature bloat.
9232dd57 169
00900554
JB
170Daemon package for BitTorrent client.
171
35de15cb
JP
172%description daemon -l hu.UTF-8
173Transmission egy könnyűsúlyú, de mégis egy erőteljes BitTorrent
174kliens. Egyszerű, intuitív felülete szorosan illeszkedik bármilyen
175számítógépes környezetbe, amit csak választasz. A Transmission célja
176megtalálni a használható funkcionalitást lehetőségek áradata nélkül.
177
178%description daemon -l pl.UTF-8
179Transmission został stworzony od podstaw, aby być lekkim lecz mającym
180duże możliwości klientem BitTorrenta. Jego prosty, intuicyjny
181interfejs jest zaprojektowany spójnie z dowolnym środowiskiem wybranym
182przez użytkownika. Transmission stawia na równowagę zapewnienia
183przydatnej funkcjonalności bez nadmiaru opcji.
184
00900554 185Pakiet demona dla klienta BitTorrenta.
9232dd57 186
f237c99d
KK
187%package gui
188Summary: A versatile and multi-platform BitTorrent client
189Summary(pl.UTF-8): Wszechstronny i wieloplatformowy klient BitTorrenta
4c544984 190Group: X11/Applications/Networking
a29d91d7 191Requires(post,postun): gtk-update-icon-cache
4c544984 192Requires(post,postun): hicolor-icon-theme
35de15cb 193Requires: %{name}-common = %{version}-%{release}
058ef471
JP
194Requires: curl-libs >= 7.28.0
195%if %{with gtk4}
196Requires: glibmm2.68 >= 2.60.0
197Requires: gtkmm4 >= 3.24.0
198%else
199Requires: glibmm >= 2.60.0
200Requires: gtkmm3 >= 3.24.0
201%endif
c72d551a 202Requires: libcanberra-gtk3
058ef471
JP
203Requires: libdeflate >= 1.10
204Requires: libevent >= 2.1.0
205Requires: libpsl >= 0.21.1
35de15cb
JP
206Requires: miniupnpc >= 1.7
207Requires: openssl >= 0.9.7
f237c99d
KK
208
209%description gui
210Transmission has been built from the ground up to be a lightweight,
211yet powerful BitTorrent client. Its simple, intuitive interface is
212designed to integrate tightly with whatever computing environment you
213choose to use. Transmission strikes a balance between providing useful
214functionality without feature bloat.
215
216%description gui -l hu.UTF-8
217Transmission egy könnyűsúlyú de mégis egy erőteljes BitTorrent kliens.
218Egyszerű, intuitív felülete szorosan illeszkedik bármilyen
219számítógépes környezetbe, amit csak választasz. A Transmission célja
220megtalálni a használható funkcionalitást lehetőségek áradata nélkül.
221
222%description gui -l pl.UTF-8
223Transmission został stworzony od podstaw, aby być lekkim lecz mającym
224duże możliwości klientem BitTorrenta. Jego prosty, intuicyjny
225interfejs jest zaprojektowany spójnie z dowolnym środowiskiem wybranym
226przez użytkownika. Transmission stawia na równowagę zapewnienia
227przydatnej funkcjonalności bez nadmiaru opcji.
228
820ff2df 229%package gui-qt
00900554
JB
230Summary: A GUI to Transmission based on Qt 5
231Summary(pl.UTF-8): Graficzny interfejs do Transmission oparty na Qt 5
4c544984 232Group: X11/Applications/Networking
35de15cb 233Requires: %{name}-common = %{version}-%{release}
058ef471
JP
234%if %{with qt6}
235Requires: Qt6Core >= %{qtver}
236Requires: Qt6DBus >= %{qtver}
237Requires: Qt6Gui >= %{qtver}
238Requires: Qt6Network >= %{qtver}
239Requires: Qt6Svg >= %{qtver}
240Requires: Qt6Widgets >= %{qtver}
241%else
c72d551a
JP
242Requires: Qt5Core >= %{qtver}
243Requires: Qt5DBus >= %{qtver}
244Requires: Qt5Gui >= %{qtver}
245Requires: Qt5Network >= %{qtver}
058ef471 246Requires: Qt5Svg >= %{qtver}
c72d551a 247Requires: Qt5Widgets >= %{qtver}
058ef471
JP
248%endif
249Requires: curl-libs >= 7.28.0
c72d551a 250Requires: libcanberra-gtk3
058ef471
JP
251Requires: libdeflate >= 1.10
252Requires: libevent >= 2.1.0
253Requires: libpsl >= 0.21.1
35de15cb
JP
254Requires: miniupnpc >= 1.7
255Requires: openssl >= 0.9.7
820ff2df
ZU
256
257%description gui-qt
00900554
JB
258A GUI to Transmission based on Qt 5.
259
260%description gui-qt -l pl.UTF-8
261Graficzny interfejs do Transmission oparty na Qt 5.
820ff2df 262
35de15cb
JP
263%package utils
264Summary: Utilities for Transmission BitTorrent client
265Summary(pl.UTF-8): Narzędzia dla klienta BitTorrenta Transmission
266Group: Applications/Networking
267
268%description utils
269Utilities for Transmission BitTorrent client.
270
271%description utils -l pl.UTF-8
272Narzędzia dla klienta BitTorrenta Transmission.
273
0f16bf9a 274%prep
8f94c0ac 275%setup -q
058ef471 276%patch0 -p1
0f16bf9a
PZ
277
278%build
058ef471
JP
279install -d build
280cd build
281%cmake .. \
282 -DENABLE_CLI:BOOL=ON \
283 -DENABLE_WEB:BOOL=OFF \
284 %{cmake_on_off gtk ENABLE_GTK} \
285 -DUSE_GTK_VERSION=%{?with_gtk4:4}%{!?with_gtk4:3} \
286 %{cmake_on_off qt ENABLE_QT} \
287 -DUSE_QT_VERSION=%{?with_qt6:6}%{!?with_qt6:5} \
288 %{cmake_on_off systemd ENABLE_SYSTEMD} \
289 -DUSE_SYSTEM_UTP:BOOL=OFF
0f16bf9a 290
820ff2df
ZU
291%{__make}
292
0f16bf9a
PZ
293%install
294rm -rf $RPM_BUILD_ROOT
4c544984 295install -d $RPM_BUILD_ROOT/etc/{sysconfig,rc.d/init.d} \
296 $RPM_BUILD_ROOT%{_sysconfdir}/%{name} \
b04b9fcb
JP
297 $RPM_BUILD_ROOT/var/lib/%{name} \
298 %{?with_systemd:$RPM_BUILD_ROOT%{systemdunitdir}}
0f16bf9a 299
058ef471 300%{__make} -C build install \
0f16bf9a
PZ
301 DESTDIR=$RPM_BUILD_ROOT
302
9232dd57 303install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
61330340 304install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
9232dd57 305
b04b9fcb
JP
306%if %{with systemd}
307cp -p daemon/transmission-daemon.service $RPM_BUILD_ROOT%{systemdunitdir}
308%endif
309
7b5e04bd 310%if %{with gtk}
486422d6 311%{__rm} -r $RPM_BUILD_ROOT%{_localedir}/{ceb,jbo}
65730317
ZU
312
313%find_lang %{name} --all-name --with-gnome
7b5e04bd 314%endif
ec12ede2 315
058ef471
JP
316%if %{with qt}
317%find_lang %{name} --with-qm -o %{name}-qt.lang
318%endif
319
ec12ede2 320# copy of GPLv2 not needed
058ef471 321%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/public_html/transmission-app.js.LICENSE.txt
ec12ede2 322
0f16bf9a
PZ
323%clean
324rm -rf $RPM_BUILD_ROOT
325
6cdf40a0
JP
326%triggerpostun daemon -- transmission < 3.00-2
327if [ -d /var/lib/transmission ] ; then
328 chown -R transmission:transmission /var/lib/transmission || :
329fi
330
331%pre daemon
332%groupadd -g 339 transmission
333%useradd -u 339 -r -d /var/lib/transmission -s /bin/false -c "Transmission user" -g transmission transmission
334
35de15cb 335%post daemon
9232dd57
PG
336/sbin/chkconfig --add transmission
337%service transmission restart
b04b9fcb 338%{?with_systemd:%systemd_post transmission-daemon.service}
9232dd57 339
35de15cb 340%preun daemon
9232dd57
PG
341if [ "$1" = "0" ]; then
342 %service transmission stop
343 /sbin/chkconfig --del transmission
344fi
b04b9fcb
JP
345%{?with_systemd:%systemd_preun transmission-daemon.service}
346
347%postun daemon
6cdf40a0
JP
348if [ "$1" = "0" ]; then
349 %userremove transmission
350 %groupremove transmission
351fi
b04b9fcb 352%{?with_systemd:%systemd_reload}
9232dd57 353
f237c99d 354%post gui
0f16bf9a 355%update_desktop_database_post
e65cafbb 356%update_icon_cache hicolor
0f16bf9a 357
f237c99d 358%postun gui
0f16bf9a 359%update_desktop_database_postun
e65cafbb 360%update_icon_cache hicolor
0f16bf9a 361
35de15cb 362%files cli
0f16bf9a 363%defattr(644,root,root,755)
fccbf9d7 364%attr(755,root,root) %{_bindir}/transmission-cli
fccbf9d7 365%{_mandir}/man1/transmission-cli.1*
35de15cb
JP
366
367%files common
368%defattr(644,root,root,755)
058ef471 369%doc AUTHORS README.md
147f3fba 370%dir %{_datadir}/%{name}
058ef471 371%{_datadir}/%{name}/public_html
f237c99d 372
35de15cb 373%files daemon
9232dd57 374%defattr(644,root,root,755)
4c544984 375%attr(751,root,daemon) %dir %{_sysconfdir}/%{name}
9232dd57 376%attr(640,root,daemon) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
61330340 377%attr(754,root,root) /etc/rc.d/init.d/%{name}
35de15cb 378%attr(755,root,root) %{_bindir}/transmission-daemon
b04b9fcb 379%{?with_systemd:%{systemdunitdir}/transmission-daemon.service}
35de15cb 380%{_mandir}/man1/transmission-daemon.1*
6cdf40a0 381%attr(750,transmission,transmission) %dir /var/lib/%{name}
9232dd57 382
7b5e04bd 383%if %{with gtk}
b911b3bd 384%files gui -f %{name}.lang
c1ca1d17 385%defattr(644,root,root,755)
fccbf9d7
CM
386%attr(755,root,root) %{_bindir}/transmission-gtk
387%{_mandir}/man1/transmission-gtk.1*
388%{_desktopdir}/transmission-gtk.desktop
058ef471
JP
389%{_iconsdir}/hicolor/scalable/apps/transmission.svg
390%{_iconsdir}/hicolor/scalable/apps/transmission-devel.svg
b8fbc1de 391%{_iconsdir}/hicolor/symbolic/apps/transmission-symbolic.svg
058ef471 392%{_datadir}/metainfo/transmission-gtk.metainfo.xml
7b5e04bd 393%endif
820ff2df 394
7b5e04bd 395%if %{with qt}
058ef471 396%files gui-qt -f %{name}-qt.lang
820ff2df 397%defattr(644,root,root,755)
67a32c48 398%attr(755,root,root) %{_bindir}/transmission-qt
6f24f938 399%dir %{_datadir}/%{name}/translations
67a32c48 400%{_desktopdir}/transmission-qt.desktop
058ef471 401%{_mandir}/man1/transmission-qt.1*
7b5e04bd 402%endif
35de15cb
JP
403
404%files utils
405%defattr(644,root,root,755)
406%attr(755,root,root) %{_bindir}/transmission-create
407%attr(755,root,root) %{_bindir}/transmission-edit
408%attr(755,root,root) %{_bindir}/transmission-remote
409%attr(755,root,root) %{_bindir}/transmission-show
410%{_mandir}/man1/transmission-create.1*
411%{_mandir}/man1/transmission-edit.1*
412%{_mandir}/man1/transmission-remote.1*
413%{_mandir}/man1/transmission-show.1*
This page took 1.096322 seconds and 4 git commands to generate.