]> git.pld-linux.org Git - packages/GNUnet.git/blob - GNUnet.spec
- fixed libtool problem (regenerate ac/am/lt using fixed libtool)
[packages/GNUnet.git] / GNUnet.spec
1 Summary:        An anonymous distributed secure network
2 Summary(pl):    Anonimowa, rozproszona, bezpieczna sieæ
3 Name:           GNUnet
4 Version:        0.5.4a
5 Release:        0.1
6 Group:          Applications/Networking
7 License:        GPL
8 Source0:        http://www.ovmj.org/GNUnet/download/%{name}-%{version}.tar.gz
9 # Source0-md5:  0a22cadab0b33784d0d5344ce975a088
10 Source1:        gnunet.init
11 Patch0:         %{name}-nolibs.patch
12 URL:            http://www.gnu.org/software/GNUnet/
13 BuildRequires:  autoconf >= 2.57
14 BuildRequires:  automake
15 BuildRequires:  db-devel
16 BuildRequires:  gdbm-devel
17 BuildRequires:  gtk+-devel >= 1.2
18 BuildRequires:  libextractor-devel >= 0.2.3
19 BuildRequires:  libltdl-devel
20 BuildRequires:  libtool >= 1:1.4.2-9
21 BuildRequires:  mysql-devel >= 3.23.56
22 BuildRequires:  openssl-devel >= 0.9.5
23 BuildRequires:  tdb-devel
24 PreReq:         rc-scripts
25 Requires(pre):  /usr/bin/getgid
26 Requires(pre):  /bin/id
27 Requires(pre):  /usr/sbin/groupadd
28 Requires(pre):  /usr/sbin/useradd
29 Requires(postun):       /usr/sbin/userdel
30 Requires(postun):       /usr/sbin/groupdel
31 Requires(post,preun):   /sbin/chkconfig
32 Requires(post,postun):  /sbin/ldconfig
33 Requires:       gdbm
34 Requires:       gtk+ >= 1.2
35 Requires:       libextractor >= 0.2.3
36 Requires:       openssl >= 0.9.5
37 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
38
39 %define _gnunethomedir  /var/lib/GNUnet
40
41 %description
42 GNUnet is framework for secure peer-to-peer networking. The primary
43 application for GNUnet is anonymous file-sharing. GNUnet is part of
44 the GNU project (http://www.gnu.org/).
45
46 While GNUnet file-sharing provides anonymity for its users, it also
47 provides accounting to perform better resource allocation.
48 Contributing users are rewarded with better service. Peers monitor the
49 behavior of other peers and allocate resources for peers that are
50 economically trusted. The content encoding makes it hard for peers to
51 circumvent the reward system.
52
53 GNUnet supports multiple transport protocols, currently UDP, TCP and
54 SMTP. The framework automatically chooses a cheap transport that is
55 currently available by both peers for any given link. It is possible
56 to run GNUnet peers behind NAT boxes and almost all firewall
57 configurations.
58
59 This is a beta version. The important features have been implemented
60 and tested. The security features are in place, but note that
61 anonymity may be limited due to the small number of active
62 participants.
63
64 For a more detailed description of GNUnet, see our webpages at:
65
66 http://www.gnu.org/software/GNUnet/ and http://www.ovmj.org/GNUnet/
67
68 Note that this RPM does not build the database frontends for tdb and
69 mysql (only gdbm, bdb and plain directories are included).
70
71 %description -l pl
72 GNUnet stanowi szkielet bezpiecznej sieci typu peer-to-peer.
73 Podstawow± aplikacj± GNUnet jest anonimowe wspó³dzielenie plików.
74 GNUnet stanowi czê¶æ projektu GNU (http://www.gnu.org/).
75
76 Podczas gdy wspó³dzielenie plików za pomoc± GNUnet zapewnia
77 u¿ytkownikom anonimowo¶æ, umo¿liwia ono równie¿ ewidencjonowanie dla
78 zapewnienia lepszego gospodarowania zasobami. U¿ytkownicy wnosz±cy
79 co¶ s± nagradzani lepsz± jako¶ci± us³ugi. Ka¿dy z równorzêdnych
80 u¿ytkowników monitoruje zachowanie pozosta³ych i przydziela zasoby
81 u¿ytkownikom, którzy s± ekonomicznie wiarygodni. Kodowanie tre¶ci
82 czyni system nagród trudnym do przechytrzenia.
83
84 GNUnet wspiera wiele protoko³ów transportowych, aktualnie: UDP, TCP i
85 SMTP. Szkielet automatycznie wybiera tani± metodê transportu dostêpn±
86 w danej chwili dla obu u¿ytkowników przy dowolnym po³±czeniu. GNUnet
87 mo¿e dzia³aæ pomiêdzy dwoma maszynami znajduj±cymi siê za NAT i z
88 prawie wszystkimi konfiguracjami firewalli.
89
90 Jest to wersja beta. Najwa¿niejsze funkcje zosta³y zaimplementowane i
91 przetestowane. Funkcje zapewniaj±ce bezpieczeñstwo s± na swoim
92 miejscu, lecz nale¿y zauwa¿yæ, ¿e anonimowo¶æ mo¿e byæ ograniczona ze
93 wzglêdu na ma³± liczbê aktywnych uczestników.
94
95 Bardziej szczegó³owy opis GNUnet mo¿na znale¼æ na stronie:
96
97 http://www.gnu.org/software/GNUnet/ and http://www.ovmj.org/GNUnet/
98
99 Nale¿y te¿ zauwa¿yæ, ¿e ten pakiet nie wspiera interfejsu bazodanowego
100 dla tdb i mysql (a jedynie dla gdbm, bdb i katalogów).
101
102 %package bdb
103 Summary:        BerkeleyDB database support for GNUnet
104 Summary(pl):    Obs³uga bazy BerkeleyDB dla GNUnet
105 Group:          Applications/Network
106 Requires:       %{name} = %{version}
107
108 %description bdb
109 This package contains BerkeleyDB database frontend for GNUnet.
110
111 %description bdb -l pl
112 Pakiet ten zawiera interfejs bazy danych BerkeleyDB dla GNUnet.
113
114 %package gdbm
115 Summary:        GDBM database support for GNUnet
116 Summary(pl):    Obs³uga bazy GDBM dla GNUnet
117 Group:          Applications/Network
118 Requires:       %{name} = %{version}
119
120 %description gdbm
121 This package contains GDBM database frontend for GNUnet.
122
123 %description gdbm -l pl
124 Pakiet ten zawiera interfejs bazy danych GDBM dla GNUnet.
125
126 %package mysql
127 Summary:        MySQL database support for GNUnet
128 Summary(pl):    Obs³uga bazy MySQL dla GNUnet
129 Group:          Applications/Network
130 Requires:       %{name} = %{version}
131 Requires:       mysql-libs >= 3.23.56
132
133 %description mysql
134 This package contains MySQL database frontend for GNUnet.
135
136 %description mysql -l pl
137 Pakiet ten zawiera interfejs bazy danych MySQL dla GNUnet.
138
139 %package tdb
140 Summary:        TDB database support for GNUnet
141 Summary(pl):    Obs³uga bazy TDB dla GNUnet
142 Group:          Applications/Network
143 Requires:       %{name} = %{version}
144
145 %description tdb
146 This package contains TDB database frontend for GNUnet.
147
148 %description tdb -l pl
149 Pakiet ten zawiera interfejs bazy danych TDB dla GNUnet.
150
151 %prep
152 %setup -q
153 %patch -p1
154
155 %build
156 %{__libtoolize}
157 %{__aclocal}
158 %{__autoconf}
159 %{__autoheader}
160 %{__automake}
161 %configure \
162         --disable-static \
163         --with-gdbm=/usr \
164         --with-mysql=/usr \
165         --with-tdb=/usr \
166         --with-crypto=/usr
167 # no --enable-ipv6  -- some files missing
168
169 %{__make}
170
171 %install
172 rm -rf $RPM_BUILD_ROOT
173
174 %{__make} install \
175         DESTDIR=$RPM_BUILD_ROOT
176
177 install -D contrib/gnunet.conf.root $RPM_BUILD_ROOT%{_sysconfdir}/gnunet.conf
178 install -d $RPM_BUILD_ROOT%{_sysconfdir}/skel/.gnunet
179 install contrib/gnunet.conf $RPM_BUILD_ROOT%{_sysconfdir}/skel/.gnunet
180 install -D %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/gnunet
181 install -d $RPM_BUILD_ROOT%{_gnunethomedir}/data/hosts
182 install -d $RPM_BUILD_ROOT%{_gnunethomedir}/afs
183
184 # these are normal, dynamically linked libraries - there is no -devel, so *.la not needed
185 rm -f $RPM_BUILD_ROOT%{_libdir}/libgnunetafs_{blocks,database,decoding,delete,encoding,policy,search,util}.la \
186         $RPM_BUILD_ROOT%{_libdir}/libgnunet{common,util}.la
187
188 %clean
189 rm -rf $RPM_BUILD_ROOT
190
191 %pre
192 if [ -n "`getgid gnunet`" ]; then
193         if [ "`getgid gnunet`" != "115" ]; then
194                 echo "Error: group gnunet doesn't have gid=115. Correct this before installing GNUnet." 1>&2
195                 exit 1
196         fi
197 else
198         /usr/sbin/groupadd -g 115 -r -f gnunet
199 fi
200 if [ -n "`id -u gnunet 2>/dev/null`" ]; then
201         if [ "`id -u gnunet`" != "115" ]; then
202                 echo "Error: user gnunet doesn't have uid=115. Correct this before installing GNUnet." 1>&2
203                 exit 1
204         fi
205 else
206         /usr/sbin/useradd -o -r -u 115 \
207                 -d /var/lib/GNUnet -s /bin/sh -g gnunet \
208                 -c "GNUnet daemon" gnunet 1>&2
209 fi
210
211 %post
212 /sbin/ldconfig
213 /sbin/chkconfig --add gnunet
214 if [ -f /var/lock/subsys/gnunet ]; then
215          /etc/rc.d/init.d/gnunet restart >&2
216 else
217         echo "Run \"/etc/rc.d/init.d/gnunet start\" to start GNUnet." >&2
218 fi
219
220
221 %preun
222 if [ -f /var/lock/subsys/gnunet ]; then
223         /etc/rc.d/init.d/gnunet stop
224 fi
225 /sbin/chkconfig --del gnunet
226
227 %postun
228 /sbin/ldconfig
229 if [ "$1" = "0" ]; then
230         /usr/sbin/userdel gnunet 2>/dev/null
231         /usr/sbin/groupdel gnunet 2>/dev/null
232 fi
233
234 %files
235 %defattr(644,root,root,755)
236 %attr(755,root,root) %{_bindir}/gnunetd
237 %attr(755,root,root) %{_bindir}/gnunet-insert
238 %attr(755,root,root) %{_bindir}/gnunet-search
239 %attr(755,root,root) %{_bindir}/gnunet-download
240 %attr(755,root,root) %{_bindir}/gnunet-insert-multi
241 %attr(755,root,root) %{_bindir}/gnunet-gtk
242 %attr(755,root,root) %{_bindir}/gnunet-chat
243 %attr(755,root,root) %{_bindir}/gnunet-delete
244 %attr(755,root,root) %{_bindir}/gnunet-stats
245 %attr(755,root,root) %{_bindir}/gnunet-check
246 %attr(755,root,root) %{_bindir}/gnunet-convert
247 %attr(755,root,root) %{_bindir}/gnunet-transport-check
248 %attr(755,root,root) %{_bindir}/gnunet-tbench
249 %attr(755,root,root) %{_bindir}/gnunet-peer-info
250 %attr(755,root,root) %{_bindir}/gnunet-tracekit
251
252 # normal, dynamically linked libraries
253 %attr(755,root,root) %{_libdir}/libgnunetafs_blocks.so.0.0.0
254 %attr(755,root,root) %{_libdir}/libgnunetafs_database.so.0.0.0
255 %attr(755,root,root) %{_libdir}/libgnunetafs_decoding.so.0.0.0
256 %attr(755,root,root) %{_libdir}/libgnunetafs_delete.so.0.0.0
257 %attr(755,root,root) %{_libdir}/libgnunetafs_encoding.so.0.0.0
258 %attr(755,root,root) %{_libdir}/libgnunetafs_policy.so.0.0.0
259 %attr(755,root,root) %{_libdir}/libgnunetafs_search.so.0.0.0
260 %attr(755,root,root) %{_libdir}/libgnunetafs_util.so.0.0.0
261 %attr(755,root,root) %{_libdir}/libgnunetcommon.so.0.0.0
262 %attr(755,root,root) %{_libdir}/libgnunetutil.so.0.0.0
263
264 # ltdlopened plugins - these must have *.la
265 %attr(755,root,root) %{_libdir}/libextractor_lower.so.0.0.0
266 %{_libdir}/libextractor_lower.la
267 %attr(755,root,root) %{_libdir}/libgnunetafs_database_directory.so.0.0.0
268 %{_libdir}/libgnunetafs_database_directory.la
269 %attr(755,root,root) %{_libdir}/libgnunetafs_protocol.so.0.0.0
270 %{_libdir}/libgnunetafs_protocol.la
271 %attr(755,root,root) %{_libdir}/libgnunetchat_protocol.so.0.0.0
272 %{_libdir}/libgnunetchat_protocol.la
273 %attr(755,root,root) %{_libdir}/libgnunettbench_protocol.so.0.0.0
274 %{_libdir}/libgnunettbench_protocol.la
275 %attr(755,root,root) %{_libdir}/libgnunettracekit_protocol.so.0.0.0
276 %{_libdir}/libgnunettracekit_protocol.la
277 %attr(755,root,root) %{_libdir}/libgnunettransport_smtp.so.0.0.0
278 %{_libdir}/libgnunettransport_smtp.la
279 %attr(755,root,root) %{_libdir}/libgnunettransport_http.so.0.0.0
280 %{_libdir}/libgnunettransport_http.la
281 %attr(755,root,root) %{_libdir}/libgnunettransport_tcp.so.0.0.0
282 %{_libdir}/libgnunettransport_tcp.la
283 #%attr(755,root,root) %{_libdir}/libgnunettransport_tcp6.so.0.0.0
284 #%{_libdir}/libgnunettransport_tcp6.la
285 %attr(755,root,root) %{_libdir}/libgnunettransport_udp.so.0.0.0
286 %{_libdir}/libgnunettransport_udp.la
287 #%attr(755,root,root) %{_libdir}/libgnunettransport_udp6.so.0.0.0
288 #%{_libdir}/libgnunettransport_udp6.la
289
290 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/gnunet.conf
291 %{_sysconfdir}/skel/.gnunet
292 %attr(754,root,root) /etc/rc.d/init.d/gnunet
293 %{_mandir}/man1/gnunetd.1*
294 %{_mandir}/man1/gnunet-convert.1*
295 %{_mandir}/man1/gnunet-gtk.1*
296 %{_mandir}/man1/gnunet-insert-multi.1*
297 %{_mandir}/man1/gnunet-download.1*
298 %{_mandir}/man1/gnunet-delete.1*
299 %{_mandir}/man1/gnunet-insert.1*
300 %{_mandir}/man1/gnunet-search.1*
301 %{_mandir}/man1/gnunet-check.1*
302 %{_mandir}/man1/gnunet-transport-check.1*
303 %{_mandir}/man1/gnunet-chat.1*
304 %{_mandir}/man5/gnunet.conf.5*
305 %{_mandir}/man1/gnunet-tbench.1*
306 %{_mandir}/man1/gnunet-tracekit.1*
307 %{_mandir}/man1/gnunet-stats.1*
308 %{_mandir}/man1/gnunet-peer-info.1*
309 %attr(2770,gnunet,gnunet) %dir %{_gnunethomedir}
310 %attr(2770,gnunet,gnunet) %dir %{_gnunethomedir}/afs
311 %attr(2770,gnunet,gnunet) %dir %{_gnunethomedir}/data
312 %attr(2770,gnunet,gnunet) %dir %{_gnunethomedir}/data/hosts
313
314 # these (and *.so for them) should be in -devel or /dev/null
315 #%{_libdir}/libgnunetafs_blocks.la
316 #%{_libdir}/libgnunetafs_database.la
317 #%{_libdir}/libgnunetafs_decoding.la
318 #%{_libdir}/libgnunetafs_delete.la
319 #%{_libdir}/libgnunetafs_encoding.la
320 #%{_libdir}/libgnunetafs_policy.la
321 #%{_libdir}/libgnunetafs_search.la
322 #%{_libdir}/libgnunetafs_util.la
323 #%{_libdir}/libgnunetcommon.la
324 #%{_libdir}/libgnunetutil.la
325
326 %files bdb
327 %defattr(644,root,root,755)
328 %attr(755,root,root) %{_libdir}/libgnunetafs_database_bdb.so.0.0.0
329 %{_libdir}/libgnunetafs_database_bdb.la
330
331 %files gdbm
332 %defattr(644,root,root,755)
333 %attr(755,root,root) %{_libdir}/libgnunetafs_database_gdbm.so.0.0.0
334 %{_libdir}/libgnunetafs_database_gdbm.la
335
336 %files mysql
337 %defattr(644,root,root,755)
338 %attr(755,root,root) %{_libdir}/libgnunetafs_database_mysql.so.0.0.0
339 %{_libdir}/libgnunetafs_database_mysql.la
340
341 %files tdb
342 %defattr(644,root,root,755)
343 %attr(755,root,root) %{_libdir}/libgnunetafs_database_tdb.so.0.0.0
344 %{_libdir}/libgnunetafs_database_tdb.la
This page took 0.118416 seconds and 4 git commands to generate.