]> git.pld-linux.org Git - packages/mldonkey.git/blob - mldonkey.spec
- distfiles friendly sf url
[packages/mldonkey.git] / mldonkey.spec
1 # TODO
2 # - it creates file: .mldonkey/mlnet_strings.C
3 # - initscript broken with start-stop-daemon mode:
4 #   /etc/rc.d/init.d/mldonkey[149]: [: ~mldonkey: unexpected operator/operand
5 #   /sbin/start-stop-daemon: stat cd ~mldonkey && exec /usr/sbin/mlnetd > /var/log/mldonkey.log 2>&1: No such file or directory                  
6 #   MLDonkey could not be started! Check logfile: /var/log/mldonkey.log
7 #
8 # Conditional build:
9 %bcond_without  gnutella        # without Gnutella LimeWire support
10 %bcond_without  gnutella2       # without Gnutella2 support
11 %bcond_without  fasttrack       # without FastTrack support
12 %bcond_with     directconnect   # with Direct Connect support
13 %bcond_without  donkey          # without eDonkey support
14 %bcond_without  bittorrent      # without BitTorrent support
15 %bcond_without  filetp          # without fileTP support
16 %bcond_without  gui             # with mlgui
17
18 Summary:        eDonkey 2000 p2p network client
19 Summary(pl.UTF-8):      Klient sieci p2p eDonkey 2000
20 Name:           mldonkey
21 Version:        3.1.3
22 Release:        1
23 License:        GPL
24 Group:          Applications/Networking
25 Source0:        http://download.sourceforge.net/mldonkey/%{name}-%{version}.tar.bz2
26 # Source0-md5:  671f60467a918a9b7c2affef63ff5c25
27 Source1:        %{name}.init
28 Source2:        %{name}.sysconfig
29 Source3:        %{name}.sh
30 Source4:        %{name}.png
31 Source5:        %{name}-gui.desktop
32 Patch0:         %{name}-configwin.patch
33 Patch1:         %{name}-newgtk.patch
34 URL:            http://mldonkey.sourceforge.net/Main_Page
35 BuildRequires:  autoconf
36 BuildRequires:  automake
37 BuildRequires:  bzip2-devel
38 BuildRequires:  cpp
39 BuildRequires:  gd-devel >= 2.0.35-3
40 %{?with_gui:BuildRequires:      gtk+2-devel >= 2:2.4.0}
41 BuildRequires:  libmagic-devel
42 BuildRequires:  libpng-devel
43 %{?with_gui:BuildRequires:      librsvg-devel >= 2.0}
44 BuildRequires:  libstdc++-devel
45 BuildRequires:  ncurses-devel
46 BuildRequires:  ocaml-camlp4 >= 1:3.10.0
47 %{?with_gui:BuildRequires:      ocaml-lablgtk2-devel >= 2.6.0}
48 %{?with_gui:BuildRequires:      ocaml-lablgtk2-rsvg-devel >= 2.6.0}
49 BuildRequires:  perl-base
50 %{?with_gui:BuildRequires:      pkgconfig}
51 BuildRequires:  rpmbuild(macros) >= 1.268
52 BuildRequires:  zlib-devel
53 Requires(post): sed >= 4.0
54 Requires(post,preun):   /sbin/chkconfig
55 Requires(postun):       /usr/sbin/groupdel
56 Requires(postun):       /usr/sbin/userdel
57 Requires(pre):  /bin/id
58 Requires(pre):  /usr/bin/getgid
59 Requires(pre):  /usr/sbin/groupadd
60 Requires(pre):  /usr/sbin/useradd
61 Requires(triggerpostun):        grep
62 Requires(triggerpostun):        sed >= 4.0
63 Requires:       nc
64 Requires:       procps
65 Requires:       rc-scripts >= 0.4.0.10
66 Requires:       wget
67 Provides:       group(mldonkey)
68 Provides:       user(mldonkey)
69 # http://caml.inria.fr/mantis/view.php?id=3072
70 # http://buildlogs.pld-linux.org/index.php?idx=15&ok=0&ns=0&cnt=16&off=16&id=415a7e23dca873a5fa0f1811e5c2503b
71 ExcludeArch:    alpha
72 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
73
74 %description
75 MLDonkey is a door to the 'donkey' network, a decentralized network
76 used to exchange big files on the Internet. It is written in a
77 wonderful language, called Objective-Caml, and present most features
78 of the basic Windows donkey client, plus some more:
79 - It should work on most UNIX-compatible platforms.
80 - You can remotely command your client, either by telnet, on a WEB
81   browser, or with the GTK+ interface.
82 - You can connect to several servers, and each search will query all
83   the connected servers.
84 - You can select MP3s by bitrates in queries (useful ?).
85 - You can select the name of a downloaded file before moving it to
86   your incoming directory.
87 - You can have several queries in the graphical user interface at the
88   same time.
89 - You can remember your old queries results in the command-line
90   interface.
91 - You can search in the history of all files you have seen on the
92   network.
93
94 It can also access other peer-to-peer networks:
95 - Direct Connect
96 - Open Napster
97 - Gnutella LimeWire
98
99 %description -l pl.UTF-8
100 mldonkey jest nowym klientem do eDonkey 2000, zdecentralizowanej sieci
101 peer-to-peer bardzo wydajnej przy przesyłaniu dużych plików dzięki
102 protokołowi pobierania danych z wielu źródeł. Klient ten został
103 napisany w języku Objective-Caml i ma większość cech podstawowego
104 klienta windowsowego, a ponadto:
105 - działa na większości platform uniksowych,
106 - pozwala zdalnie sterować klientem przez interfejs telnet, WWW lub
107   GTK+,
108 - można łączyć się z kilkoma serwerami, wtedy każde przeszukiwanie
109   odpyta połączone serwery,
110 - można wybierać pliki MP3 po bitrate w zapytaniach,
111 - można wybierać nazwę pliku do ściągnięcia przed przejściem do
112   katalogu incoming,
113 - można jednocześnie wykonywać kilka zapytań w graficznym interfejsie,
114 - można zapamiętać wyniki zapytań w interfejsie z linii poleceń,
115 - można przeszukiwać historię wszystkich plików widzianych w sieci.
116
117 Klient umożliwia także dostęp do innych sieci peer-to-peer:
118 - Direct Connect,
119 - Open Napster,
120 - Gnutella LimeWire.
121
122 %package gui
123 Summary:        Graphical frontend for mldonkey based on GTK+
124 Summary(pl.UTF-8):      Graficzny interfejs użytkownika GTK+ dla mldonkey
125 Group:          X11/Applications/Networking
126
127 %description gui
128 The GTK+ interface for mldonkey provides a convenient way of managing
129 all mldonkey operations. It gives details about connected servers,
130 downloaded files, friends and lets one search for files in a pleasing
131 way.
132
133 %description gui -l pl.UTF-8
134 Interfejs użytkownika GTK+ dla mldonkey daje wygodny sposób
135 zarządzania wszystkimi operacjami mldonkey. Udostępnia szczegóły
136 dotyczące połączonych serwerów, ściąganych plików, znajomych oraz
137 pozwala wyszukiwać pliki w przyjemny sposób.
138
139 %package submit
140 Summary:        This tool gives you an easy way to add a ed2k-link
141 Summary(pl.UTF-8):      Narzędzie pozwalające łatwo dodać odnośniki ed2k
142 Group:          X11/Applications
143 Requires:       perl-libwww
144
145 %description submit
146 This tool gives you an easy way to add a ed2k-link (like
147 ed2k://|file|filename.exe|21352658|72b0b287cab7d875ccc1d89ebe910b9g|)
148 with a single click to your mldonkey download queue.
149
150 You need to edit /etc/sysconfig/mldonkey_submit.
151
152 %description submit -l pl.UTF-8
153 To narzędzie pozwala łatwo dodać odnośnik ed2k (w rodzaju
154 ed2k://|file|filename.exe|21352658|72b0b287cab7d875ccc1d89ebe910b9g|)
155 pojedynczym kliknięciem na kolejkę ściągania mldonkey.
156
157 Trzeba zmodyfikować plik /etc/sysconfig/mldonkey_submit.
158
159 %package utils
160 Summary:        Misc utils for mldonkey
161 Summary(pl.UTF-8):      Różne narzędzia dla mldonkeya
162 Group:          Applications/Networking
163
164 %description utils
165 This package includes misc utils for mldonkey eg.: mld_hash,
166 make_torent, get_range, copysource, subconv, svg_converter.
167
168 %description utils -l pl.UTF-8
169 Ten pakiet zawiera następujące narzędzia dla mldonkeya: mld_hash,
170 make_torent, get_range, copysource, subconv, svg_converter.
171
172 %prep
173 %setup -q
174 %patch0 -p1
175 %patch1 -p1
176
177 %build
178 cp -f /usr/share/automake/config.sub config
179
180 cd config
181 %{__autoconf}
182 %configure \
183         --enable-ocamlver=$(rpm -q --qf %{V} ocaml-camlp4) \
184         --enable-pthread \
185         %{?with_gnutella:--en}%{!?with_gnutella:--dis}able-gnutella \
186         %{?with_gnutella2:--en}%{!?with_gnutella2:--dis}able-gnutella2 \
187         %{?with_fasttrack:--en}%{!?with_fasttrack:--dis}able-fasttrack \
188         %{?with_directconnect:--en}%{!?with_directconnect:--dis}able-directconnect \
189         %{?with_donkey:--en}%{!?with_donkey:--dis}able-donkey \
190         %{?with_bittorrent:--en}%{!?with_bittorrent:--dis}able-bittorrent \
191         %{?with_filetp:--en}%{!?with_filetp:--dis}able-filetp \
192         %{?with_gui:--en}%{!?with_gui:--dis}able-gui%{?with_gui:=newgui2}
193
194 cd ..
195 %{__make} -j1
196 %{__make} -j1 utils
197
198 %install
199 rm -rf $RPM_BUILD_ROOT
200 install -d $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir}/mldonkey,/etc/rc.d/init.d,/etc/sysconfig} \
201         $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_datadir}/services,/var/log}
202
203 # core
204 install mlnet $RPM_BUILD_ROOT%{_sbindir}/mlnetd
205 install distrib/mldonkey_command $RPM_BUILD_ROOT%{_bindir}/mldonkey_command
206
207 %if %{with gui}
208 install mlgui $RPM_BUILD_ROOT%{_bindir}/mlgui
209 install mlnet+gui $RPM_BUILD_ROOT%{_bindir}/mlnet+gui
210 install mlguistarter $RPM_BUILD_ROOT%{_bindir}/mlguistarter
211 install distrib/mldonkey_previewer $RPM_BUILD_ROOT%{_bindir}/mldonkey_previewer
212 %endif
213
214 # util
215 install make_torrent $RPM_BUILD_ROOT%{_bindir}
216 install get_range $RPM_BUILD_ROOT%{_bindir}
217 install mld_hash $RPM_BUILD_ROOT%{_bindir}
218 install copysources $RPM_BUILD_ROOT%{_bindir}
219 install subconv $RPM_BUILD_ROOT%{_bindir}
220 install svg_converter $RPM_BUILD_ROOT%{_bindir}
221
222 install distrib/ed2k_submit/mldonkey_submit $RPM_BUILD_ROOT%{_bindir}/mldonkey_submit
223 install distrib/ed2k_submit/mldonkey $RPM_BUILD_ROOT/etc/sysconfig/mldonkey_submit
224 install distrib/ed2k_submit/ed2k.protocol $RPM_BUILD_ROOT%{_datadir}/services/ed2k.protocol
225
226 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/mldonkey
227 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/mldonkey
228 install %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/mlnet
229 %if %{with gui}
230 install %{SOURCE4} $RPM_BUILD_ROOT%{_pixmapsdir}
231 install %{SOURCE5} $RPM_BUILD_ROOT%{_desktopdir}
232 %endif
233
234 > $RPM_BUILD_ROOT/var/log/mldonkey.log
235
236 %clean
237 rm -rf $RPM_BUILD_ROOT
238
239 %pre
240 %groupadd -g 33 mldonkey
241 %useradd -m -u 47 -d /home/services/mldonkey -s /bin/sh -g mldonkey -c "mldonkey" mldonkey
242
243 %post
244 if [ ! -f /var/log/mldonkey.log ]; then
245         touch /var/log/mldonkey.log
246         chmod 000 /var/log/mldonkey.log
247         chown mldonkey:mldonkey /var/log/mldonkey.log
248         chmod 640 /var/log/mldonkey.log
249 fi
250
251 /sbin/chkconfig --add mldonkey
252 %service mldonkey restart
253
254 %preun
255 if [ "$1" = "0" ]; then
256         %service mldonkey stop
257         /sbin/chkconfig --del mldonkey
258 fi
259
260 %postun
261 if [ "$1" = "0" ]; then
262         %userremove mldonkey
263         %groupremove mldonkey
264 fi
265
266 %triggerpostun -- mldonkey < 2.5.28-0.4
267 if [ -f /etc/sysconfig/mldonkey.rpmnew ]; then
268         # new sysconfig, with lots of vars
269         # we copy from old one just $SERVICE_RUN_NICE_LEVEL
270         a=$(grep ^SERVICE_RUN_NICE_LEVEL /etc/sysconfig/mldonkey)
271         if [ "$a" ]; then
272                 sed -i -e "s/^SERVICE_RUN_NICE_LEVEL.*/$a/" /etc/sysconfig/mldonkey.rpmnew
273         fi
274         cp -f /etc/sysconfig/mldonkey{,.rpmsave}
275         mv -f /etc/sysconfig/mldonkey{.rpmnew,}
276 fi
277 chmod 640 /etc/sysconfig/mldonkey
278
279 %files
280 %defattr(644,root,root,755)
281 %doc docs/* distrib/{Authors.txt,Bugs.txt,ChangeLog,ed2k_links.txt,Todo.txt}
282 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mldonkey
283 %attr(754,root,root) /etc/rc.d/init.d/mldonkey
284 %attr(755,root,root) %{_bindir}/mlnet
285 %attr(755,root,root) %{_bindir}/mldonkey_command
286 %attr(755,root,root) %{_sbindir}/mlnetd
287 %attr(640,mldonkey,mldonkey) %ghost /var/log/mldonkey.log
288
289 %if %{with gui}
290 %files gui
291 %defattr(644,root,root,755)
292 %attr(755,root,root) %{_bindir}/mlgui
293 %attr(755,root,root) %{_bindir}/mlnet+gui
294 %attr(755,root,root) %{_bindir}/mlguistarter
295 %attr(755,root,root) %{_bindir}/mldonkey_previewer
296 %{_pixmapsdir}/*
297 %{_desktopdir}/*.desktop
298 %endif
299
300 %files submit
301 %defattr(644,root,root,755)
302 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mldonkey_submit
303 %attr(755,root,root) %{_bindir}/mldonkey_submit
304 %{_datadir}/services/ed2k.protocol
305
306 %files utils
307 %defattr(644,root,root,755)
308 %attr(755,root,root) %{_bindir}/get_range
309 %attr(755,root,root) %{_bindir}/copysources
310 %attr(755,root,root) %{_bindir}/make_torrent
311 %attr(755,root,root) %{_bindir}/mld_hash
312 %attr(755,root,root) %{_bindir}/subconv
313 %attr(755,root,root) %{_bindir}/svg_converter
This page took 0.075538 seconds and 3 git commands to generate.