]> git.pld-linux.org Git - packages/GNUnet.git/blob - GNUnet.spec
- typo, added %%doc
[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.6.2a
5 Release:        0.1
6 Group:          Applications/Networking
7 License:        GPL
8 Source0:        http://www.ovmj.org/GNUnet/download/%{name}-%{version}.tar.bz2
9 # Source0-md5:  5b318dc50ca3f410ec7ef4cea0cc3c96
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.6
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.7d
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 contains only plain directories database frontend;
69 bdb, gdbm, mysql and tdb frontends are in separate subpackages.
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 dwiema 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/ i http://www.ovmj.org/GNUnet/
98
99 Nale¿y te¿ zauwa¿yæ, ¿e ten pakiet zawiera tylko interfejs bazodanowy
100 dla zwyk³ych katalogów; wtyczki obs³uguj±ce bazy bdb, gdbm, mysql i
101 tdb znajduj± siê w osobnych podpakietach.
102
103 %package bdb
104 Summary:        BerkeleyDB database support for GNUnet
105 Summary(pl):    Obs³uga bazy BerkeleyDB dla GNUnet
106 Group:          Applications/Network
107 Requires:       %{name} = %{version}
108
109 %description bdb
110 This package contains BerkeleyDB database frontend for GNUnet.
111
112 %description bdb -l pl
113 Pakiet ten zawiera interfejs bazy danych BerkeleyDB dla GNUnet.
114
115 %package gdbm
116 Summary:        GDBM database support for GNUnet
117 Summary(pl):    Obs³uga bazy GDBM dla GNUnet
118 Group:          Applications/Network
119 Requires:       %{name} = %{version}
120
121 %description gdbm
122 This package contains GDBM database frontend for GNUnet.
123
124 %description gdbm -l pl
125 Pakiet ten zawiera interfejs bazy danych GDBM dla GNUnet.
126
127 %package mysql
128 Summary:        MySQL database support for GNUnet
129 Summary(pl):    Obs³uga bazy MySQL dla GNUnet
130 Group:          Applications/Network
131 Requires:       %{name} = %{version}
132 Requires:       mysql-libs >= 3.23.56
133
134 %description mysql
135 This package contains MySQL database frontend for GNUnet.
136
137 %description mysql -l pl
138 Pakiet ten zawiera interfejs bazy danych MySQL dla GNUnet.
139
140 %package tdb
141 Summary:        TDB database support for GNUnet
142 Summary(pl):    Obs³uga bazy TDB dla GNUnet
143 Group:          Applications/Network
144 Requires:       %{name} = %{version}
145
146 %description tdb
147 This package contains TDB database frontend for GNUnet.
148
149 %description tdb -l pl
150 Pakiet ten zawiera interfejs bazy danych TDB dla GNUnet.
151
152 %prep
153 %setup -q
154 %patch0 -p1
155
156 %build
157 %{__libtoolize}
158 %{__aclocal}
159 %{__autoconf}
160 %{__autoheader}
161 %{__automake}
162 %configure \
163         --disable-static \
164         --with-gdbm=/usr \
165         --with-mysql=/usr \
166         --with-tdb=/usr \
167         --with-crypto=/usr \
168         --enable-ipv6
169
170 %{__make}
171
172 %install
173 rm -rf $RPM_BUILD_ROOT
174
175 %{__make} install \
176         DESTDIR=$RPM_BUILD_ROOT
177
178 install -d $RPM_BUILD_ROOT/etc/{skel/.gnunet,/rc.d/init.d} \
179         $RPM_BUILD_ROOT%{_gnunethomedir}/{state.sdb,data/{afs,credit,hosts}}
180
181 install contrib/gnunet.root $RPM_BUILD_ROOT%{_sysconfdir}/gnunet.conf
182 install contrib/gnunet.user $RPM_BUILD_ROOT%{_sysconfdir}/skel/.gnunet/gnunet.conf
183 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/gnunet
184
185 # these are normal, dynamically linked libraries - there is no -devel, so *.la not needed
186 rm -f $RPM_BUILD_ROOT%{_libdir}/{libgnunetutil,libgnunet_afs_esed2}.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 %doc AUTHORS ChangeLog NEWS PLATFORMS README UPDATING
237 %attr(755,root,root) %{_bindir}/gnunetd
238 %attr(755,root,root) %{_bindir}/gnunet-insert
239 %attr(755,root,root) %{_bindir}/gnunet-search
240 %attr(755,root,root) %{_bindir}/gnunet-download
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 %attr(755,root,root) %{_bindir}/gnunet-directory
252 %attr(755,root,root) %{_bindir}/gnunet-pseudonym
253 %attr(755,root,root) %{_bindir}/gnunet-setup
254 %attr(755,root,root) %{_bindir}/gnunet-testbed
255
256 # normal, dynamically linked libraries
257 %attr(755,root,root) %{_libdir}/libgnunetutil.so.0.0.0
258 %attr(755,root,root) %{_libdir}/libgnunet_afs_esed2.so.0.0.0
259
260 # ltdlopened plugins - these must have *.la
261 %attr(755,root,root) %{_libdir}/libgnunetafs_database_directory.so
262 %{_libdir}/libgnunetafs_database_directory.la
263 %attr(755,root,root) %{_libdir}/libgnunetafs_protocol.so
264 %{_libdir}/libgnunetafs_protocol.la
265 %attr(755,root,root) %{_libdir}/libgnunettestbed_protocol.so
266 %{_libdir}/libgnunettestbed_protocol.la
267 %attr(755,root,root) %{_libdir}/libgnunettransport_nat.so
268 %{_libdir}/libgnunettransport_nat.la
269 %attr(755,root,root) %{_libdir}/libgnunetchat_protocol.so
270 %{_libdir}/libgnunetchat_protocol.la
271 %attr(755,root,root) %{_libdir}/libgnunettbench_protocol.so
272 %{_libdir}/libgnunettbench_protocol.la
273 %attr(755,root,root) %{_libdir}/libgnunettracekit_protocol.so
274 %{_libdir}/libgnunettracekit_protocol.la
275 %attr(755,root,root) %{_libdir}/libgnunettransport_smtp.so
276 %{_libdir}/libgnunettransport_smtp.la
277 %attr(755,root,root) %{_libdir}/libgnunettransport_http.so
278 %{_libdir}/libgnunettransport_http.la
279 %attr(755,root,root) %{_libdir}/libgnunettransport_tcp.so
280 %{_libdir}/libgnunettransport_tcp.la
281 %attr(755,root,root) %{_libdir}/libgnunettransport_tcp6.so
282 %{_libdir}/libgnunettransport_tcp6.la
283 %attr(755,root,root) %{_libdir}/libgnunettransport_udp.so
284 %{_libdir}/libgnunettransport_udp.la
285 %attr(755,root,root) %{_libdir}/libgnunettransport_udp6.so
286 %{_libdir}/libgnunettransport_udp6.la
287
288 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/gnunet.conf
289 %{_sysconfdir}/skel/.gnunet
290 %attr(754,root,root) /etc/rc.d/init.d/gnunet
291 %{_mandir}/man1/gnunetd.1*
292 %{_mandir}/man1/gnunet-convert.1*
293 %{_mandir}/man1/gnunet-gtk.1*
294 %{_mandir}/man1/gnunet-download.1*
295 %{_mandir}/man1/gnunet-delete.1*
296 %{_mandir}/man1/gnunet-insert.1*
297 %{_mandir}/man1/gnunet-search.1*
298 %{_mandir}/man1/gnunet-check.1*
299 %{_mandir}/man1/gnunet-transport-check.1*
300 %{_mandir}/man1/gnunet-chat.1*
301 %{_mandir}/man1/gnunet-tbench.1*
302 %{_mandir}/man1/gnunet-tracekit.1*
303 %{_mandir}/man1/gnunet-stats.1*
304 %{_mandir}/man1/gnunet-peer-info.1*
305 %{_mandir}/man1/gnunet-directory.1*
306 %{_mandir}/man1/gnunet-pseudonym.1*
307 %{_mandir}/man1/gnunet-testbed.1*
308 %{_mandir}/man5/gnunet.conf.5*
309 %attr(2770,gnunet,gnunet) %dir %{_gnunethomedir}
310 %attr(2770,gnunet,gnunet) %dir %{_gnunethomedir}/data
311 %attr(2770,gnunet,gnunet) %dir %{_gnunethomedir}/data/afs
312 %attr(2770,gnunet,gnunet) %dir %{_gnunethomedir}/data/credit
313 %attr(2770,gnunet,gnunet) %dir %{_gnunethomedir}/data/hosts
314 %attr(2770,gnunet,gnunet) %dir %{_gnunethomedir}/state.sdb
315
316 # these (and *.so for them) should be in -devel or /dev/null
317 #%{_libdir}/libgnunetutil.la
318 #%{_libdir}/libgnunet_afs_esed2.la
319
320 %files bdb
321 %defattr(644,root,root,755)
322 %attr(755,root,root) %{_libdir}/libgnunetafs_database_bdb.so
323 %{_libdir}/libgnunetafs_database_bdb.la
324
325 %files gdbm
326 %defattr(644,root,root,755)
327 %attr(755,root,root) %{_libdir}/libgnunetafs_database_gdbm.so
328 %{_libdir}/libgnunetafs_database_gdbm.la
329
330 %files mysql
331 %defattr(644,root,root,755)
332 %attr(755,root,root) %{_libdir}/libgnunetafs_database_mysql.so
333 %{_libdir}/libgnunetafs_database_mysql.la
334
335 %files tdb
336 %defattr(644,root,root,755)
337 %attr(755,root,root) %{_libdir}/libgnunetafs_database_tdb.so
338 %{_libdir}/libgnunetafs_database_tdb.la
This page took 0.06417 seconds and 3 git commands to generate.