Package transmission: Specfile

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
%define _optlevel s
%def_disable wxgtk
%def_enable qt

%define rname Transmission
%define dname transmission-daemon

Name: transmission
Version: 2.82
Release: alt1

Group: Networking/File transfer
Summary: Llightweight BitTorrent client
License: GPLv2 + MIT
Url: http://www.transmissionbt.com/

Provides: %rname = %version-%release

Obsoletes: %name-benc2php
Obsoletes: %name-proxy

Requires: %name-gui = %version-%release
Requires: %name-cli = %version-%release
Requires: %name-remote = %version-%release
Requires: %name-daemon = %version-%release

Requires(post,postun): desktop-file-utils

Source: http://download.m0k.org/%name/files/%name-%version.tar
Patch0: %name-%version-%release.patch
Source1: %dname.init
Source2: %dname.logrotate

BuildPreReq: desktop-file-utils

BuildRequires: gcc-c++ glibc-devel intltool libcurl-devel libevent-devel libnotify-devel libcanberra-devel libdbus-glib-devel libgtk+3-devel
BuildRequires(pre): rpm-utils desktop-file-utils libalternatives-devel
%if "%(rpmvercmp '%{get_version glibc-core}' '2.9')" >= "0"
BuildRequires: libgio-devel
%endif
%if_enabled qt
BuildRequires: libqt4-devel
%endif

%if_enabled wxgtk
BuildRequires: wxGTK2u-devel
%endif

%description
Transmission has been built from the ground up to be a lightweight,
yet powerful BitTorrent client. Its simple, intuitive interface
strikes a balance between providing useful functionality without
feature bloat. Furthermore, it is free for anyone to use or modify.

%package common
Group: Networking/File transfer
Summary: Common files for %name
Conflicts: %name < 1.00-alt10
%description common
Common files for %name

%package gui-common
Group: Networking/File transfer
Summary: Common files for %name
Requires: %name-common = %version-%release
%description gui-common
Common files for %name

%package gtk
Group: Networking/File transfer
Summary: Graphical BitTorrent client
Provides: %name-gui = %version-%release
Requires: %name-common = %version-%release
Requires: %name-gui-common = %version-%release
%description gtk
GTK-based graphical BitTorrent client

%if_enabled qt
%package qt
Group: Networking/File transfer
Summary: Graphical BitTorrent client
Provides: %name-gui = %version-%release
Requires: %name-common = %version-%release
Requires: %name-gui-common = %version-%release
%description qt
Qt-based graphical BitTorrent client
%endif

%if_enabled wxgtk
%package wxgtk
Group: Networking/File transfer
Summary: Graphical BitTorrent client
Provides: %name-gui = %version-%release
Requires: %name-common = %version-%release
Requires: %name-gui-common = %version-%release
%description wxgtk
WxGTK-based graphical BitTorrent client
%endif

%package cli
Group: Networking/File transfer
Summary: Command line BitTorrent client
Requires: %name-common = %version-%release
%description cli
Command line BitTorrent client

%package remote
Group: Networking/Remote access
Summary: Command line remote interface to %name-daemon
Requires: %name-common = %version-%release
%description remote
Command line remote interface to %name-daemon

%package daemon
Group: Networking/File transfer
Summary: Daemonised BitTorrent client
Requires: %name-common = %version-%release
%description daemon
Daemonised BitTorrent client

%prep
%setup -q
%patch0 -p1
sed -i "s|\(^CONFIG.*\+=.*[[:space:]]\)debug\([[:space:]].*$\)|\1release\2|" qt/qtr.pro
sed -i "s|^LIBS.*\+=.*libevent\.a$|LIBS += -levent|" qt/qtr.pro

%build
./autogen.sh
%configure \
    --verbose \
    %{subst_enable wx} \
    --enable-libnotify \
    --enable-libcanberra \
    --enable-gtk

%if_enabled qt
pushd qt
qmake-qt4 "QMAKE_CXXFLAGS+=%optflags"
popd
%endif

%make_build

%if_enabled qt
pushd qt
%make_build
for f in translations/*.ts; do lrelease-qt4 $f; done
popd
%endif


%install
%make DESTDIR=%buildroot install

%if_enabled qt
%make install INSTALL_ROOT=%buildroot/%prefix -C qt
%endif

mv %buildroot/%_desktopdir/transmission-gtk.desktop \
    %buildroot/%_desktopdir/transmission.desktop

# made alternatives entries
mkdir -p %buildroot/%_altdir

%if_enabled wxgtk
cat >%buildroot/%_altdir/%name-wxgtk <<__EOF__
%_bindir/%name %_bindir/Xmission 10
__EOF__
%endif

cat >%buildroot/%_altdir/%name-gtk <<__EOF__
%_bindir/%name %_bindir/%name-gtk 30
__EOF__

%if_enabled qt
cat >%buildroot/%_altdir/%name-qt <<__EOF__
%_bindir/%name %_bindir/%name-qt 20
__EOF__
# install translations
mkdir -p %buildroot/%_datadir/qt4/translations/
for f in qt/translations/*.qm; do install -m 0644 $f %buildroot/%_datadir/qt4/translations/; done
%endif

%find_lang %name-gtk

# install daemonic stuff

install -pD -m640 %dname.logrotate %buildroot%_sysconfdir/logrotate.d/%dname
install -pD -m755 %dname.init %buildroot%_initdir/%dname
install -pD -m644 %dname.service %buildroot%systemd_unitdir/transmission-daemon.service

mkdir -p %buildroot/%_sysconfdir/transmission-daemon/
daemon/transmission-daemon -d 2> %buildroot/%_sysconfdir/transmission-daemon/settings.json
sed -i 's,/usr/src/,/var/lib/transmission-daemon/,' %buildroot/%_sysconfdir/transmission-daemon/settings.json

mkdir -p %buildroot/%_sysconfdir/sysconfig/
echo "TRANSMISSION_OPTIONS=\"-e %_logdir/%dname/%dname.log -g %_localstatedir/%dname\"" > %buildroot/%_sysconfdir/sysconfig/%dname

mkdir -p %buildroot/%_logdir/%dname
mkdir -p %buildroot/%_localstatedir/%dname

%pre daemon
/usr/sbin/groupadd -r -f _%dname
/usr/sbin/useradd -r -g _%dname -d %_localstatedir/%dname -s /dev/null -c 'The Transmission Torrent Client' _%dname >/dev/null 2>&1 ||:
if [ $1 -gt 1 ]; then
        /usr/sbin/usermod -d %_localstatedir/%dname _%dname
fi

%files

%files common
%dir %_datadir/%name
%_datadir/%name/web/

%files gui-common
%_iconsdir/hicolor/*/*/*
%_datadir/pixmaps/*
%_datadir/applications/%name.desktop

%files gtk -f %name-gtk.lang
%doc AUTHORS COPYING NEWS README ChangeLog
%_bindir/%name-gtk
%_altdir/%name-gtk
%_man1dir/%name-gtk.1*

%if_enabled qt
%files qt
%doc AUTHORS COPYING NEWS README ChangeLog
%_bindir/%name-qt
%_altdir/%name-qt
%_datadir/qt4/translations/%{name}_*.qm
%_man1dir/%name-qt.1*
%endif

%if_enabled wxgtk
%files wxgtk
%doc AUTHORS COPYING NEWS README ChangeLog
%_bindir/Xmission
%_altdir/%name-wxgtk
%endif

%files cli
%doc AUTHORS COPYING NEWS README ChangeLog
%_bindir/%name-cli
%_man1dir/%name-cli.*
%_bindir/%name-create
%_man1dir/%name-create.*
%_bindir/%name-edit
%_man1dir/%name-edit.*
%_bindir/%name-show
%_man1dir/%name-show.*

%files remote
%doc AUTHORS COPYING NEWS README ChangeLog
%_bindir/%name-remote
%_man1dir/%name-remote.*

%files daemon
%doc AUTHORS COPYING NEWS README ChangeLog
%_bindir/%name-daemon
%_man1dir/%name-daemon.*
%systemd_unitdir/transmission-daemon.service
%config(noreplace) %_sysconfdir/logrotate.d/%dname
%config(noreplace) %_sysconfdir/sysconfig/%dname
%config %_initdir/%dname
%attr(710,root,_%dname) %dir %_sysconfdir/%dname
%config(noreplace) %_sysconfdir/%dname/settings.json
%attr(770,root,_%dname) %dir %_localstatedir/%dname
%dir %_logdir/%dname

%changelog
* Mon Sep 02 2013 Anton Farygin <rider@altlinux.ru> 2.82-alt1
- new version

* Mon Jul 15 2013 Anton Farygin <rider@altlinux.ru> 2.80-alt1
- new version
- removed unsupported "Custom icon" feathure from QT frontend

* Tue Oct 02 2012 Anton Farygin <rider@altlinux.ru> 2.71-alt1
- new version

* Tue Aug 21 2012 Anton Farygin <rider@altlinux.ru> 2.61-alt1
- new version

* Wed May 30 2012 Anton Farygin <rider@altlinux.ru> 2.52-alt1
- new version

* Sat Oct 22 2011 Anton Farygin <rider@altlinux.ru> 2.42-alt1
- new version

* Wed Oct 12 2011 Anton Farygin <rider@altlinux.ru> 2.41-alt1
- new version

* Mon Aug 29 2011 Anton Farygin <rider@altlinux.ru> 2.33-alt1
- new version

* Tue Jul 05 2011 Anton Farygin <rider@altlinux.ru> 2.32-alt1
- new version

* Tue May 31 2011 Anton Farygin <rider@altlinux.ru> 2.31-alt2
- fixed Exec in desktop (closes: #25691)

* Mon May 30 2011 Anton Farygin <rider@altlinux.ru> 2.31-alt1
- new version
- build with dbus-glib (closes: #25684)

* Fri Apr 22 2011 Anton Farygin <rider@altlinux.ru> 2.22-alt2
- add systemd support (closes: #25438)

* Wed Mar 09 2011 Anton Farygin <rider@altlinux.ru> 2.22-alt1
- new version

* Thu Dec 16 2010 Anton Farygin <rider@altlinux.ru> 2.13-alt1
- new version

* Thu Dec 02 2010 Anton Farygin <rider@altlinux.ru> 2.12-alt1
- new version

* Wed Nov 03 2010 Anton Farygin <rider@altlinux.ru> 2.11-alt1
- new version

* Thu Sep 16 2010 Anton Farygin <rider@altlinux.ru> 2.04-alt2
- Build with libcanberra and libnotify
- remove daemon requires in transmission-remote package

* Tue Sep 14 2010 Anton Farygin <rider@altlinux.ru> 2.04-alt1
- new version

* Mon Jul 12 2010 Anton Farygin <rider@altlinux.ru> 1.93-alt2
- added initscript for transmission-daemon by Timur Batyrshin (Closes: 23751, 21190)

* Tue Jun 01 2010 Anton Farygin <rider@altlinux.ru> 1.93-alt1
- new version

* Wed Feb 24 2010 Anton Farygin <rider@altlinux.ru> 1.91-alt1
- new version

* Wed Feb 24 2010 Anton Farygin <rider@altlinux.ru> 1.76-alt3
- add patches from upstream 1.7x branch with fix for CVE-2010-0012 (closes: #23019)

* Mon Oct 26 2009 Sergey V Turchin <zerg@altlinux.org> 1.76-alt2
- qtr: accept close window event when application exiting

* Mon Oct 26 2009 Anton Farygin <rider@altlinux.ru> 1.76-alt1
- new version

* Wed Oct 21 2009 Sergey V Turchin <zerg@altlinux.org> 1.75-alt2
- qtr: allow customize application icon in session dialog

* Wed Sep 16 2009 Anton Farygin <rider@altlinux.ru> 1.75-alt1
- new version

* Tue Sep 01 2009 Anton Farygin <rider@altlinux.ru> 1.74-alt1
- new version

* Thu Aug 13 2009 Sergey V Turchin <zerg@altlinux.org> 1.73-alt2
- build qtr
- qtr: add russian translation
- qtr: close main window to tray
- qtr: fix raise main window

* Wed Aug 05 2009 Anton Farygin <rider@altlinux.ru> 1.73-alt1
- new version

* Tue Jun 30 2009 Anton Farygin <rider@altlinux.ru> 1.72-alt1
- new version

* Thu May 14 2009 Anton Farygin <rider@altlinux.ru> 1.61-alt2
- add patch from mainstream:
    - #2073: can't upload new torrent file in web ui

* Wed May 13 2009 Anton Farygin <rider@altlinux.ru> 1.61-alt1
- new version

* Wed May 06 2009 Anton Farygin <rider@altlinux.ru> 1.60-alt1
- new version

* Tue Apr 14 2009 Anton Farygin <rider@altlinux.ru> 1.52-alt1
- new version

* Thu Mar 05 2009 Anton Farygin <rider@altlinux.ru> 1.51-alt0.M40.1
- new version

* Mon Feb 16 2009 Anton Farygin <rider@altlinux.ru> 1.50-alt1
- new version
- fixed build from svn
- build with system libevent
- buildreq updated

* Thu Jan 15 2009 Yuri N. Sedunov <aris@altlinux.org> 1.42-alt1
- new version

* Sat Nov 08 2008 Yuri N. Sedunov <aris@altlinux.org> 1.34-alt2
- fix altbug #17817 (patch0)

* Mon Sep 22 2008 Yuri N. Sedunov <aris@altlinux.org> 1.34-alt1.1
- packaged builtin web-server

* Fri Sep 19 2008 Yuri N. Sedunov <aris@altlinux.org> 1.34-alt1
- new version for Sisyphus
- updated buildreqs
- removed {update,clean}_menus from post{,un}

* Tue Aug 05 2008 Sergey V Turchin <zerg at altlinux dot org> 1.22-alt0.M40.1
- new version

* Thu May 08 2008 Sergey V Turchin <zerg at altlinux dot org> 1.11-alt0.M40.1
- new version

* Tue Apr 01 2008 Sergey V Turchin <zerg at altlinux dot org> 1.10-alt0.M40.1
- new version

* Wed Mar 05 2008 Sergey V Turchin <zerg at altlinux dot org> 1.06-alt0.M40.1
- new version

* Tue Feb 19 2008 Sergey V Turchin <zerg at altlinux dot org> 1.05-alt0.M40.1
- new version

* Thu Feb 07 2008 Sergey V Turchin <zerg at altlinux dot org> 1.04-alt0.M40.1
- new version 

* Sat Jan 26 2008 Sergey V Turchin <zerg at altlinux dot org> 1.02-alt0.M40.1
- new version

* Tue Jan 15 2008 Sergey V Turchin <zerg at altlinux dot org> 1.01-alt0.M40.1
- new version
- split to subpackages

* Wed Jan 09 2008 Sergey V Turchin <zerg at altlinux dot org> 1.00-alt0.M40.1
- new version

* Wed Dec 12 2007 Sergey V Turchin <zerg at altlinux dot org> 0.96-alt0.M40.1
- new version

* Thu Dec 06 2007 Sergey V Turchin <zerg at altlinux dot org> 0.95-alt0.M40.1
- new version

* Wed Nov 28 2007 Sergey V Turchin <zerg at altlinux dot org> 0.94-alt0.M40.1
- new version

* Sat Sep 08 2007 Sergey V Turchin <zerg at altlinux dot org> 0.81-0.1.M40
- initial specfile