3 %bcond_without ipv6 # without IPv6 support
5 Summary: An anonymous distributed secure network
6 Summary(pl): Anonimowa, rozproszona, bezpieczna sieæ
10 Group: Applications/Networking
12 Source0: http://www.ovmj.org/GNUnet/download/%{name}-%{version}.tar.bz2
13 # Source0-md5: 8bca32b55dccdb5bde7bd2b38df9df03
15 Patch0: %{name}-nolibs.patch
16 Patch1: %{name}-ipv6.patch
17 URL: http://www.gnu.org/software/GNUnet/
18 BuildRequires: autoconf >= 2.57
19 BuildRequires: automake
20 BuildRequires: db-devel
21 BuildRequires: gdbm-devel
22 BuildRequires: gettext-devel
23 BuildRequires: gmp-devel >= 4.0.0
24 BuildRequires: gtk+2-devel >= 2:2.4
25 BuildRequires: libextractor-devel >= 0.3.10
26 BuildRequires: libltdl-devel
27 BuildRequires: libtool >= 1:1.4.2-9
28 BuildRequires: mysql-devel >= 3.23.56
29 BuildRequires: openssl-devel >= 0.9.7d
30 BuildRequires: rpmbuild(macros) >= 1.159
31 BuildRequires: tdb-devel
33 Requires(pre): /bin/id
34 Requires(pre): /usr/bin/getgid
35 Requires(pre): /usr/sbin/groupadd
36 Requires(pre): /usr/sbin/useradd
37 Requires(postun): /usr/sbin/groupdel
38 Requires(postun): /usr/sbin/userdel
39 Requires(post,postun): /sbin/ldconfig
40 Requires(post,preun): /sbin/chkconfig
43 Requires: libextractor >= 0.3.10
44 Requires: openssl >= 0.9.7d
45 Provides: group(gnunet)
46 Provides: user(gnunet)
47 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
49 %define _gnunethomedir /var/lib/GNUnet
52 GNUnet is framework for secure peer-to-peer networking. The primary
53 application for GNUnet is anonymous file-sharing. GNUnet is part of
54 the GNU project (http://www.gnu.org/).
56 While GNUnet file-sharing provides anonymity for its users, it also
57 provides accounting to perform better resource allocation.
58 Contributing users are rewarded with better service. Peers monitor the
59 behavior of other peers and allocate resources for peers that are
60 economically trusted. The content encoding makes it hard for peers to
61 circumvent the reward system.
63 GNUnet supports multiple transport protocols, currently UDP, TCP and
64 SMTP. The framework automatically chooses a cheap transport that is
65 currently available by both peers for any given link. It is possible
66 to run GNUnet peers behind NAT boxes and almost all firewall
69 This is a beta version. The important features have been implemented
70 and tested. The security features are in place, but note that
71 anonymity may be limited due to the small number of active
74 For a more detailed description of GNUnet, see our webpages at:
76 http://www.gnu.org/software/GNUnet/ and http://www.ovmj.org/GNUnet/
78 Note that this RPM contains only plain directories database frontend;
79 bdb, gdbm, mysql and tdb frontends are in separate subpackages.
82 GNUnet stanowi szkielet bezpiecznej sieci typu peer-to-peer.
83 Podstawow± aplikacj± GNUnet jest anonimowe wspó³dzielenie plików.
84 GNUnet stanowi czê¶æ projektu GNU (http://www.gnu.org/).
86 Podczas gdy wspó³dzielenie plików za pomoc± GNUnet zapewnia
87 u¿ytkownikom anonimowo¶æ, umo¿liwia ono równie¿ ewidencjonowanie dla
88 zapewnienia lepszego gospodarowania zasobami. U¿ytkownicy wnosz±cy
89 co¶ s± nagradzani lepsz± jako¶ci± us³ugi. Ka¿dy z równorzêdnych
90 u¿ytkowników monitoruje zachowanie pozosta³ych i przydziela zasoby
91 u¿ytkownikom, którzy s± ekonomicznie wiarygodni. Kodowanie tre¶ci
92 czyni system nagród trudnym do przechytrzenia.
94 GNUnet wspiera wiele protoko³ów transportowych, aktualnie: UDP, TCP i
95 SMTP. Szkielet automatycznie wybiera tani± metodê transportu dostêpn±
96 w danej chwili dla obu u¿ytkowników przy dowolnym po³±czeniu. GNUnet
97 mo¿e dzia³aæ pomiêdzy dwiema maszynami znajduj±cymi siê za NAT i z
98 prawie wszystkimi konfiguracjami firewalli.
100 Jest to wersja beta. Najwa¿niejsze funkcje zosta³y zaimplementowane i
101 przetestowane. Funkcje zapewniaj±ce bezpieczeñstwo s± na swoim
102 miejscu, lecz nale¿y zauwa¿yæ, ¿e anonimowo¶æ mo¿e byæ ograniczona ze
103 wzglêdu na ma³± liczbê aktywnych uczestników.
105 Bardziej szczegó³owy opis GNUnet mo¿na znale¼æ na stronie:
107 http://www.gnu.org/software/GNUnet/ i http://www.ovmj.org/GNUnet/
109 Nale¿y te¿ zauwa¿yæ, ¿e ten pakiet zawiera tylko interfejs bazodanowy
110 dla zwyk³ych katalogów; wtyczki obs³uguj±ce bazy bdb, gdbm, mysql i
111 tdb znajduj± siê w osobnych podpakietach.
114 Summary: BerkeleyDB database support for GNUnet
115 Summary(pl): Obs³uga bazy BerkeleyDB dla GNUnet
116 Group: Applications/Network
117 Requires: %{name} = %{version}-%{release}
120 This package contains BerkeleyDB database frontend for GNUnet.
122 %description bdb -l pl
123 Pakiet ten zawiera interfejs bazy danych BerkeleyDB dla GNUnet.
126 Summary: GDBM database support for GNUnet
127 Summary(pl): Obs³uga bazy GDBM dla GNUnet
128 Group: Applications/Network
129 Requires: %{name} = %{version}-%{release}
132 This package contains GDBM database frontend for GNUnet.
134 %description gdbm -l pl
135 Pakiet ten zawiera interfejs bazy danych GDBM dla GNUnet.
138 Summary: MySQL database support for GNUnet
139 Summary(pl): Obs³uga bazy MySQL dla GNUnet
140 Group: Applications/Network
141 Requires: %{name} = %{version}-%{release}
142 Requires: mysql-libs >= 3.23.56
145 This package contains MySQL database frontend for GNUnet.
147 %description mysql -l pl
148 Pakiet ten zawiera interfejs bazy danych MySQL dla GNUnet.
151 Summary: TDB database support for GNUnet
152 Summary(pl): Obs³uga bazy TDB dla GNUnet
153 Group: Applications/Network
154 Requires: %{name} = %{version}-%{release}
157 This package contains TDB database frontend for GNUnet.
159 %description tdb -l pl
160 Pakiet ten zawiera interfejs bazy danych TDB dla GNUnet.
165 %{?with_ipv6:%patch1 -p1}
169 %{__libtoolize} --ltdl
180 %{?with_ipv6:--enable-ipv6}
185 rm -rf $RPM_BUILD_ROOT
188 DESTDIR=$RPM_BUILD_ROOT
190 install -d $RPM_BUILD_ROOT/etc/{skel/.gnunet,/rc.d/init.d} \
191 $RPM_BUILD_ROOT%{_gnunethomedir}/{state.sdb,data/{afs,credit,hosts}}
193 install contrib/gnunet.root $RPM_BUILD_ROOT%{_sysconfdir}/gnunet.conf
194 install contrib/gnunet.user $RPM_BUILD_ROOT%{_sysconfdir}/skel/.gnunet/gnunet.conf
195 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/gnunet
197 # these are normal, dynamically linked libraries - there is no -devel, so *.la not needed
198 rm -f $RPM_BUILD_ROOT%{_libdir}/{libgnunetutil,libgnunet_afs_esed2,libgnunetdht_api}.la \
199 $RPM_BUILD_ROOT%{_libdir}/{libgnunetdht_datastore_memory,libgnunetrpc_util}.la \
200 $RPM_BUILD_ROOT%{_includedir}/*.h
205 rm -rf $RPM_BUILD_ROOT
208 if [ -n "`/usr/bin/getgid gnunet`" ]; then
209 if [ "`/usr/bin/getgid gnunet`" != 115 ]; then
210 echo "Error: group gnunet doesn't have gid=115. Correct this before installing GNUnet." 1>&2
214 /usr/sbin/groupadd -g 115 gnunet 1>&2
216 if [ -n "`/bin/id -u gnunet 2>/dev/null`" ]; then
217 if [ "`/bin/id -u gnunet`" != 115 ]; then
218 echo "Error: user gnunet doesn't have uid=115. Correct this before installing GNUnet." 1>&2
222 /usr/sbin/useradd -o -u 115 -d /var/lib/GNUnet -s /bin/sh -g gnunet \
223 -c "GNUnet daemon" gnunet 1>&2
228 /sbin/chkconfig --add gnunet
229 if [ -f /var/lock/subsys/gnunet ]; then
230 /etc/rc.d/init.d/gnunet restart >&2
232 echo "Run \"/etc/rc.d/init.d/gnunet start\" to start GNUnet." >&2
236 if [ -f /var/lock/subsys/gnunet ]; then
237 /etc/rc.d/init.d/gnunet stop
239 /sbin/chkconfig --del gnunet
243 if [ "$1" = "0" ]; then
248 %files -f %{name}.lang
249 %defattr(644,root,root,755)
250 %doc AUTHORS ChangeLog NEWS PLATFORMS README UPDATING
251 %attr(755,root,root) %{_bindir}/gnunet-chat
252 %attr(755,root,root) %{_bindir}/gnunet-check
253 %attr(755,root,root) %{_bindir}/gnunet-convert
254 %attr(755,root,root) %{_bindir}/gnunet-delete
255 %attr(755,root,root) %{_bindir}/gnunet-dht-join
256 %attr(755,root,root) %{_bindir}/gnunet-dht-query
257 %attr(755,root,root) %{_bindir}/gnunet-directory
258 %attr(755,root,root) %{_bindir}/gnunet-download
259 #%attr(755,root,root) %{_bindir}/gnunet-download-manager.scm
260 %attr(755,root,root) %{_bindir}/gnunet-gtk
261 %attr(755,root,root) %{_bindir}/gnunet-insert
262 %attr(755,root,root) %{_bindir}/gnunet-peer-info
263 %attr(755,root,root) %{_bindir}/gnunet-pseudonym
264 %attr(755,root,root) %{_bindir}/gnunet-search
265 %attr(755,root,root) %{_bindir}/gnunet-setup
266 %attr(755,root,root) %{_bindir}/gnunet-stats
267 %attr(755,root,root) %{_bindir}/gnunet-tbench
268 %attr(755,root,root) %{_bindir}/gnunet-testbed
269 %attr(755,root,root) %{_bindir}/gnunet-tracekit
270 %attr(755,root,root) %{_bindir}/gnunet-transport-check
271 %attr(755,root,root) %{_bindir}/gnunet-update
272 %attr(755,root,root) %{_bindir}/gnunetd
274 # normal, dynamically linked libraries
275 %attr(755,root,root) %{_libdir}/libgnunet_afs_esed2.so.0.0.0
276 %attr(755,root,root) %{_libdir}/libgnunetdht_api.so.0.0.0
277 %attr(755,root,root) %{_libdir}/libgnunetdht_datastore_memory.so.0.0.0
278 %attr(755,root,root) %{_libdir}/libgnunetrpc_util.so.0.0.0
279 %attr(755,root,root) %{_libdir}/libgnunetutil.so.0.0.0
281 # ltdlopened plugins - these must have *.la
282 %attr(755,root,root) %{_libdir}/libgnunetafs_database_directory.so
283 %{_libdir}/libgnunetafs_database_directory.la
284 %attr(755,root,root) %{_libdir}/libgnunetafs_protocol.so
285 %{_libdir}/libgnunetafs_protocol.la
286 %attr(755,root,root) %{_libdir}/libgnunetchat_protocol.so
287 %{_libdir}/libgnunetchat_protocol.la
288 %attr(755,root,root) %{_libdir}/libgnunetdht_protocol.so
289 %{_libdir}/libgnunetdht_protocol.la
290 %attr(755,root,root) %{_libdir}/libgnunetrpc_protocol.so
291 %{_libdir}/libgnunetrpc_protocol.la
292 %attr(755,root,root) %{_libdir}/libgnunettbench_protocol.so
293 %{_libdir}/libgnunettbench_protocol.la
294 %attr(755,root,root) %{_libdir}/libgnunettestbed_protocol.so
295 %{_libdir}/libgnunettestbed_protocol.la
296 %attr(755,root,root) %{_libdir}/libgnunettracekit_protocol.so
297 %{_libdir}/libgnunettracekit_protocol.la
298 %attr(755,root,root) %{_libdir}/libgnunettransport_http.so
299 %{_libdir}/libgnunettransport_http.la
300 %attr(755,root,root) %{_libdir}/libgnunettransport_nat.so
301 %{_libdir}/libgnunettransport_nat.la
302 %attr(755,root,root) %{_libdir}/libgnunettransport_smtp.so
303 %{_libdir}/libgnunettransport_smtp.la
304 %attr(755,root,root) %{_libdir}/libgnunettransport_tcp.so
305 %{_libdir}/libgnunettransport_tcp.la
306 %attr(755,root,root) %{_libdir}/libgnunettransport_udp.so
307 %{_libdir}/libgnunettransport_udp.la
309 %attr(755,root,root) %{_libdir}/libgnunettransport_tcp6.so
310 %{_libdir}/libgnunettransport_tcp6.la
311 %attr(755,root,root) %{_libdir}/libgnunettransport_udp6.so
312 %{_libdir}/libgnunettransport_udp6.la
315 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/gnunet.conf
316 %{_sysconfdir}/skel/.gnunet
317 %attr(754,root,root) /etc/rc.d/init.d/gnunet
318 %{_mandir}/man1/gnunet-chat.1*
319 %{_mandir}/man1/gnunet-check.1*
320 %{_mandir}/man1/gnunet-convert.1*
321 %{_mandir}/man1/gnunet-delete.1*
322 %{_mandir}/man1/gnunet-directory.1*
323 %{_mandir}/man1/gnunet-download-manager.1*
324 %{_mandir}/man1/gnunet-download.1*
325 %{_mandir}/man1/gnunet-gtk.1*
326 %{_mandir}/man1/gnunet-insert.1*
327 %{_mandir}/man1/gnunet-peer-info.1*
328 %{_mandir}/man1/gnunet-pseudonym.1*
329 %{_mandir}/man1/gnunet-search.1*
330 %{_mandir}/man1/gnunet-stats.1*
331 %{_mandir}/man1/gnunet-tbench.1*
332 %{_mandir}/man1/gnunet-testbed.1*
333 %{_mandir}/man1/gnunet-tracekit.1*
334 %{_mandir}/man1/gnunet-transport-check.1*
335 %{_mandir}/man1/gnunet-update.1*
336 %{_mandir}/man1/gnunetd.1*
337 %{_mandir}/man5/gnunet.conf.5*
338 %attr(2770,gnunet,gnunet) %dir %{_gnunethomedir}
339 %attr(2770,gnunet,gnunet) %dir %{_gnunethomedir}/data
340 %attr(2770,gnunet,gnunet) %dir %{_gnunethomedir}/data/afs
341 %attr(2770,gnunet,gnunet) %dir %{_gnunethomedir}/data/credit
342 %attr(2770,gnunet,gnunet) %dir %{_gnunethomedir}/data/hosts
343 %attr(2770,gnunet,gnunet) %dir %{_gnunethomedir}/state.sdb
345 # these (and *.so for them) should be in -devel or /dev/null
346 #%{_libdir}/libgnunetutil.la
347 #%{_libdir}/libgnunet_afs_esed2.la
348 #%{_libdir}/libgnunetdht_api.la
349 #%{_libdir}/libgnunetdht_datastore_memory.la
350 #%{_libdir}/libgnunetrpc_util.la
353 %defattr(644,root,root,755)
354 %attr(755,root,root) %{_libdir}/libgnunetafs_database_bdb.so
355 %{_libdir}/libgnunetafs_database_bdb.la
358 %defattr(644,root,root,755)
359 %attr(755,root,root) %{_libdir}/libgnunetafs_database_gdbm.so
360 %{_libdir}/libgnunetafs_database_gdbm.la
363 %defattr(644,root,root,755)
364 %attr(755,root,root) %{_libdir}/libgnunetafs_database_mysql.so
365 %{_libdir}/libgnunetafs_database_mysql.la
368 %defattr(644,root,root,755)
369 %attr(755,root,root) %{_libdir}/libgnunetafs_database_tdb.so
370 %{_libdir}/libgnunetafs_database_tdb.la