]> git.pld-linux.org Git - packages/GNUnet.git/blob - GNUnet.spec
- added init script
[packages/GNUnet.git] / GNUnet.spec
1 Name:           GNUnet
2 Release:        0.1
3 Summary:        An anonymous distributed secure network
4 Summary(pl):    Anonimowa, rozproszona, bezpieczna sieæ
5 License:        GPL
6 URL:            http://www.gnu.org/software/GNUnet/
7 Version:        0.5.4a
8 Source0:        http://www.ovmj.org/GNUnet/download/%{name}-%{version}.tar.gz
9 Source1:        gnunet.init
10 # Source0-md5:  0a22cadab0b33784d0d5344ce975a088
11 Group:          Applications/Network
12 ######          Unknown group!
13 Requires:       gtk+ >= 1.2
14 Requires:       libextractor >= 0.2.3
15 BuildRequires:  gtk+-devel >= 1.2
16 BuildRequires:  libextractor-devel >= 0.2.3
17 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
18 # Note that you can only build this RPM if the current GNUnet version
19 # is already installed in /usr. The reason is, that a GNUnet library
20 # (afsprotocol) is linked against another couple of libraries which
21 # are NOT found in BuildRoot in the "make install" stage when for some
22 # odd reason libtool decides to re-link the library :-(. I've spend 6h
23 # on this one, there does not seem to be a clean solution.  Note that
24 # without the RPM script foo around it, the build works just fine.
25
26 %define _gnunethomedir  /var/lib/GNUnet
27
28 %description
29 GNUnet is framework for secure peer-to-peer networking. The primary
30 application for GNUnet is anonymous file-sharing. GNUnet is part of
31 the GNU project (http://www.gnu.org/).
32
33 While GNUnet file-sharing provides anonymity for its users, it also
34 provides accounting to perform better resource allocation.
35 Contributing users are rewarded with better service. Peers monitor the
36 behavior of other peers and allocate resources for peers that are
37 economically trusted. The content encoding makes it hard for peers to
38 circumvent the reward system.
39
40 GNUnet supports multiple transport protocols, currently UDP, TCP and
41 SMTP. The framework automatically chooses a cheap transport that is
42 currently available by both peers for any given link. It is possible
43 to run GNUnet peers behind NAT boxes and almost all firewall
44 configurations.
45
46 This is a beta version. The important features have been implemented
47 and tested. The security features are in place, but note that
48 anonymity may be limited due to the small number of active
49 participants.
50
51 For a more detailed description of GNUnet, see our webpages at:
52
53 http://www.gnu.org/software/GNUnet/ and http://www.ovmj.org/GNUnet/
54
55 Note that this RPM does not build the database frontends for tdb and
56 mysql (only gdbm, bdb and plain directories are included).
57
58 %package mysql
59 Summary:        MySQL database support for GNUnet
60 Summary(pl):    Obs³uga bazy MySQL dla GNUnet
61 Group:          Applications/Network
62 Requires:       %{name} = %{version}
63 BuildRequires:  mysql-devel >= 3.23.56
64
65 %description mysql
66 This package contains MySQL database frontend for GNUnet.
67
68 #%package tdb
69 #Summary:       TDB database support for GNUnet
70 #Summary(pl):   Obs³uga bazy TDB dla GNUnet
71 #Group:         Applications/Network
72 #Requires:      %{name} = %{version}
73
74 #%description tdb
75 #This package contains TDB database frontend for GNUnet.
76
77 %prep
78 rm -rf $RPM_BUILD_ROOT
79 %setup -q
80
81 %build
82 %configure --with-mysql=/usr --with-tdb=/usr
83 %{__make}
84
85 %install
86 rm -rf $RPM_BUILD_ROOT
87 %makeinstall
88
89 rm -f $RPM_BUILD_ROOT/usr/lib/*.a
90 #rm -f $RPM_BUILD_ROOT/usr/lib/*_tdb.*
91 rm -f $RPM_BUILD_ROOT/usr/lib/*.a
92 mkdir -p $RPM_BUILD_ROOT/etc
93 cp contrib/gnunet.conf.root $RPM_BUILD_ROOT/etc/gnunet.conf
94 mkdir -p $RPM_BUILD_ROOT/etc/skel/.gnunet/
95 cp contrib/gnunet.conf $RPM_BUILD_ROOT/etc/skel/.gnunet/
96 mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d
97 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/gnunet
98 install -d $RPM_BUILD_ROOT%{_gnunethomedir}/data/hosts
99
100 %clean
101 rm -rf $RPM_BUILD_ROOT
102
103 %pre
104 if [ -n "`getgid gnunet`" ]; then
105         if [ "`getgid gnunet`" != "115" ]; then
106                 echo "Error: group gnunet doesn't have gid=115. Correct this before installing GNUnet." 1>&2
107                 exit 1
108         fi
109 else
110         /usr/sbin/groupadd -g 115 -r -f gnunet
111
112 if [ -n "`id -u gnunet 2>/dev/null`" ]; then
113         if [ "`id -u gnunet`" != "89" ]; then
114                 echo "Error: user gnunet doesn't have uid=115. Correct this before installing GNUnet." 1>&2
115                 exit 1
116         fi
117 else
118         /usr/sbin/useradd -o -r -u 115 \
119                 -d /var/lib/GNUnet -s /bin/sh -g gnunet \
120                 -c "GNUnet daemon" gnunet 1>&2
121 fi
122
123 %post
124 /sbin/ldconfig
125 if [ -f /var/lock/subsys/gnunet ]; then
126          /etc/rc.d/init.d/gnunet restart >&2
127 else
128         echo "Run \"/etc/rc.d/init.d/gnunet start\" to start GNUnet." >&2
129 fi
130
131 %preun
132 if [ -f /var/lock/subsys/gnunet ]; then
133         /etc/rc.d/init.d/gnunet stop
134 fi
135
136 %postun
137 /sbin/ldconfig
138 /usr/sbin/userdel gnunet &> /dev/null
139 /usr/sbin/groupdel gnunet &> /dev/null
140
141 %files
142 %defattr(644,root,root,755)
143 %attr(755,root,root) %{_bindir}/gnunetd
144 %attr(755,root,root) %{_bindir}/gnunet-insert
145 %attr(755,root,root) %{_bindir}/gnunet-search
146 %attr(755,root,root) %{_bindir}/gnunet-download
147 %attr(755,root,root) %{_bindir}/gnunet-insert-multi
148 %attr(755,root,root) %{_bindir}/gnunet-gtk
149 %attr(755,root,root) %{_bindir}/gnunet-chat
150 %attr(755,root,root) %{_bindir}/gnunet-delete
151 %attr(755,root,root) %{_bindir}/gnunet-stats
152 %attr(755,root,root) %{_bindir}/gnunet-check
153 %attr(755,root,root) %{_bindir}/gnunet-convert
154 %attr(755,root,root) %{_bindir}/gnunet-transport-check
155 %attr(755,root,root) %{_bindir}/gnunet-tbench
156 %attr(755,root,root) %{_bindir}/gnunet-peer-info
157 %attr(755,root,root) %{_bindir}/gnunet-tracekit
158 %{_libdir}/libgnunetafs_blocks.la
159 %{_libdir}/libgnunetafs_blocks.so
160 %{_libdir}/libgnunetafs_blocks.so.0
161 %attr(755,root,root) %{_libdir}/libgnunetafs_blocks.so.0.0.0
162 %{_libdir}/libgnunetafs_database.la
163 %{_libdir}/libgnunetafs_database.so
164 %{_libdir}/libgnunetafs_database.so.0
165 %attr(755,root,root) %{_libdir}/libgnunetafs_database.so.0.0.0
166 %{_libdir}/libgnunetafs_database_bdb.la
167 %{_libdir}/libgnunetafs_database_bdb.so
168 %{_libdir}/libgnunetafs_database_bdb.so.0
169 %attr(755,root,root) %{_libdir}/libgnunetafs_database_bdb.so.0.0.0
170 #%{_libdir}/libgnunetafs_database_gdbm.la
171 #%{_libdir}/libgnunetafs_database_gdbm.so
172 #%{_libdir}/libgnunetafs_database_gdbm.so.0
173 #%attr(755,root,root) %{_libdir}/libgnunetafs_database_gdbm.so.0.0.0
174 %{_libdir}/libgnunetafs_database_directory.la
175 %{_libdir}/libgnunetafs_database_directory.so
176 %{_libdir}/libgnunetafs_database_directory.so.0
177 %attr(755,root,root) %{_libdir}/libgnunetafs_database_directory.so.0.0.0
178 %{_libdir}/libgnunetafs_decoding.la
179 %{_libdir}/libgnunetafs_decoding.so
180 %{_libdir}/libgnunetafs_decoding.so.0
181 %attr(755,root,root) %{_libdir}/libgnunetafs_decoding.so.0.0.0
182 %{_libdir}/libgnunetafs_delete.la
183 %{_libdir}/libgnunetafs_delete.so
184 %{_libdir}/libgnunetafs_delete.so.0
185 %attr(755,root,root) %{_libdir}/libgnunetafs_delete.so.0.0.0
186 %{_libdir}/libgnunetafs_encoding.la
187 %{_libdir}/libgnunetafs_encoding.so
188 %{_libdir}/libgnunetafs_encoding.so.0
189 %attr(755,root,root) %{_libdir}/libgnunetafs_encoding.so.0.0.0
190 %{_libdir}/libgnunetafs_policy.la
191 %{_libdir}/libgnunetafs_policy.so
192 %{_libdir}/libgnunetafs_policy.so.0
193 %attr(755,root,root) %{_libdir}/libgnunetafs_policy.so.0.0.0
194 %{_libdir}/libgnunetafs_protocol.la
195 %{_libdir}/libgnunetafs_protocol.so
196 %{_libdir}/libgnunetafs_protocol.so.0
197 %attr(755,root,root) %{_libdir}/libgnunetafs_protocol.so.0.0.0
198 %{_libdir}/libgnunetafs_search.la
199 %{_libdir}/libgnunetafs_search.so
200 %{_libdir}/libgnunetafs_search.so.0
201 %attr(755,root,root) %{_libdir}/libgnunetafs_search.so.0.0.0
202 %{_libdir}/libgnunetafs_util.la
203 %{_libdir}/libgnunetafs_util.so
204 %{_libdir}/libgnunetafs_util.so.0
205 %attr(755,root,root) %{_libdir}/libgnunetafs_util.so.0.0.0
206 %{_libdir}/libgnunetchat_protocol.la
207 %{_libdir}/libgnunetchat_protocol.so
208 %{_libdir}/libgnunetchat_protocol.so.0
209 %attr(755,root,root) %{_libdir}/libgnunetchat_protocol.so.0.0.0
210 %{_libdir}/libgnunetcommon.la
211 %{_libdir}/libgnunetcommon.so
212 %{_libdir}/libgnunetcommon.so.0
213 %attr(755,root,root) %{_libdir}/libgnunetcommon.so.0.0.0
214 %{_libdir}/libgnunettbench_protocol.la
215 %{_libdir}/libgnunettbench_protocol.so
216 %{_libdir}/libgnunettbench_protocol.so.0
217 %attr(755,root,root) %{_libdir}/libgnunettbench_protocol.so.0.0.0
218 %{_libdir}/libgnunettracekit_protocol.la
219 %{_libdir}/libgnunettracekit_protocol.so
220 %{_libdir}/libgnunettracekit_protocol.so.0
221 %attr(755,root,root) %{_libdir}/libgnunettracekit_protocol.so.0.0.0
222 %{_libdir}/libgnunettransport_smtp.la
223 %{_libdir}/libgnunettransport_smtp.so
224 %{_libdir}/libgnunettransport_smtp.so.0
225 %attr(755,root,root) %{_libdir}/libgnunettransport_smtp.so.0.0.0
226 %{_libdir}/libgnunettransport_tcp.la
227 %{_libdir}/libgnunettransport_tcp.so
228 %{_libdir}/libgnunettransport_tcp.so.0
229 %attr(755,root,root) %{_libdir}/libgnunettransport_tcp.so.0.0.0
230 %{_libdir}/libgnunettransport_udp.la
231 %{_libdir}/libgnunettransport_udp.so
232 %{_libdir}/libgnunettransport_udp.so.0
233 %attr(755,root,root) %{_libdir}/libgnunettransport_udp.so.0.0.0
234 %{_libdir}/libgnunetutil.la
235 %{_libdir}/libgnunetutil.so
236 %{_libdir}/libgnunetutil.so.0
237 %attr(755,root,root) %{_libdir}/libgnunetutil.so.0.0.0
238 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/gnunet.conf
239 %{_sysconfdir}/skel/.gnunet
240 %attr(755,root,root) %{_sysconfdir}/rc.d/init.d/gnunetd
241 %doc %{_mandir}/man1/gnunetd.1.gz
242 %doc %{_mandir}/man1/gnunet-convert.1.gz
243 %doc %{_mandir}/man1/gnunet-gtk.1.gz
244 %doc %{_mandir}/man1/gnunet-insert-multi.1.gz
245 %doc %{_mandir}/man1/gnunet-download.1.gz
246 %doc %{_mandir}/man1/gnunet-delete.1.gz
247 %doc %{_mandir}/man1/gnunet-insert.1.gz
248 %doc %{_mandir}/man1/gnunet-search.1.gz
249 %doc %{_mandir}/man1/gnunet-check.1.gz
250 %doc %{_mandir}/man1/gnunet-transport-check.1.gz
251 %doc %{_mandir}/man1/gnunet-chat.1.gz
252 %doc %{_mandir}/man5/gnunet.conf.5.gz
253 %doc %{_mandir}/man1/gnunet-tbench.1.gz
254 %doc %{_mandir}/man1/gnunet-tracekit.1.gz
255 %doc %{_mandir}/man1/gnunet-stats.1.gz
256 %doc %{_mandir}/man1/gnunet-peer-info.1.gz
257 %attr(750,gnunet,gnunet) %dir %{_gnunethomedir}
258 %attr(750,gnunet,gnunet) %dir %{_gnunethomedir}/data/hosts
259
260 %files mysql
261 %defattr(644,root,root,755)
262 %{_libdir}/libgnunetafs_database_mysql.*
263
264 #%files tdb
265 #%defattr(644,root,root,755)
266 #%{_libdir}/libgnunetafs_database_tdb.*
This page took 0.073995 seconds and 3 git commands to generate.