3 %bcond_without tests # testsuite on build
4 %bcond_without dirmngr # dirmngr packages build
5 %bcond_without default_gpg # install as gpg/gpgv instead of gpg2/gpgv2
6 %bcond_with gnutls # GnuTLS instead of NTBTLS
7 %bcond_with selinux # "SELinux hacks"
9 Summary: GNU Privacy Guard - tool for secure communication and data storage - enhanced version
10 Summary(pl.UTF-8): GnuPG - narzędzie do bezpiecznej komunikacji i bezpiecznego przechowywania danych - wersja rozszerzona
15 Group: Applications/File
16 Source0: ftp://ftp.gnupg.org/gcrypt/gnupg/gnupg-%{version}.tar.bz2
17 # Source0-md5: fc13424af7747a5dd6edb6086ec0cb2f
18 Source1: gnupg-agent.sh
19 Patch0: %{name}-info.patch
20 Patch1: %{name}-nogit.patch
21 Patch2: %{name}-disable_tests.patch
22 Patch3: %{name}-pl.po-update.patch
23 Patch4: %{name}-am.patch
24 URL: http://www.gnupg.org/
25 BuildRequires: autoconf >= 2.61
26 BuildRequires: automake >= 1:1.14
27 BuildRequires: bzip2-devel
28 BuildRequires: curl-devel >= 7.10
29 BuildRequires: gettext-tools >= 0.17
30 %{?with_gnutls:BuildRequires: gnutls-devel >= 3.0}
31 BuildRequires: libassuan-devel >= 1:2.5.0
32 BuildRequires: libgcrypt-devel >= 1.7.0
33 BuildRequires: libgpg-error-devel >= 1.24
34 BuildRequires: libksba-devel >= 1.3.4
35 BuildRequires: libusb-devel >= 1.0
36 BuildRequires: npth-devel >= 1.2
37 %{!?with_gnutls:BuildRequires: ntbtls-devel >= 0.1.0}
38 %{?with_dirmngr:BuildRequires: openldap-devel >= 2.4.6}
39 BuildRequires: pkgconfig
40 BuildRequires: readline-devel
41 BuildRequires: rpmbuild(macros) >= 1.177
42 BuildRequires: texinfo
43 BuildRequires: zlib-devel
44 Requires: gnupg2-common = %{version}-%{release}
45 Requires: sqlite3 >= 3.7
46 %if %{with default_gpg}
48 Obsoletes: gnupg-plugin-keys_curl < 2
49 Obsoletes: gnupg-plugin-keys_hkp < 2
50 Provides: gnupg = %{version}-%{release}
53 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
55 %define pkglibexecdir %{_libexecdir}/gnupg2
58 GnuPG is GNU's tool for secure communication and data storage. It can
59 be used to encrypt data and to create digital signatures. It includes
60 an advanced key management facility and is compliant with the proposed
61 OpenPGP Internet standard as described in RFC2440.
63 This is enhanced version.
65 %description -l pl.UTF-8
66 GnuPG (GNU Privacy Guard) jest narzędziem do bezpiecznej komunikacji i
67 bezpiecznego przechowywania danych. Może być używany do szyfrowania
68 oraz podpisywania danych. Umożliwia zaawansowane zarządzanie kluczami
69 i spełnia normy zdefiniowane w standardzie OpenPGP, który jest opisany
72 To jest wersja rozszerzona.
75 Summary: GnuPG - common files
76 Summary(pl.UTF-8): GnuPG - pliki wspólne
77 Group: Applications/File
78 Requires: libassuan >= 1:2.5.0
79 Requires: libgcrypt >= 1.7.0
80 Requires: libgpg-error >= 1.24
81 Requires: libksba >= 1.3.4
83 Obsoletes: gnupg2-plugin-keys_curl
84 Obsoletes: gnupg2-plugin-keys_finger
85 Obsoletes: gnupg2-plugin-keys_hkp
86 Obsoletes: gnupg2-plugin-keys_kdns
87 Obsoletes: gnupg2-plugin-keys_ldap
88 Conflicts: gnupg < 1.4.18-2
89 Conflicts: gnupg-agent < 1.9.14-2
92 Common files used by tools from GnuPG project.
94 %description common -l pl.UTF-8
95 Pliki wspólne używane przez różne narzędzia z projektu GnuPG.
97 %package plugin-keys_curl
98 Summary: GnuPG 2 plugin for allow talk to a HTTP/FTP keyserver
99 Summary(pl.UTF-8): Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy HTTP/FTP
100 Group: Applications/File
101 Requires: %{name}-common = %{version}-%{release}
102 Requires: curl-libs >= 7.10
104 %description plugin-keys_curl
105 GnuPG 2 plugin for allow talk to a HTTP(S)/FTP(S) keyserver.
107 %description plugin-keys_curl -l pl.UTF-8
108 Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy
111 %package plugin-keys_finger
112 Summary: GnuPG 2 plugin for allow talk to a FINGER keyserver
113 Summary(pl.UTF-8): Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy FINGER
114 Group: Applications/File
115 Requires: %{name}-common = %{version}-%{release}
117 %description plugin-keys_finger
118 GnuPG 2 plugin for allow talk to a FINGER keyserver.
120 %description plugin-keys_finger -l pl.UTF-8
121 Wtyczka 2 GnuPG pozwalająca komunikować się z serwerem kluczy FINGER.
123 %package plugin-keys_hkp
124 Summary: GnuPG 2 plugin for allow talk to a HKP keyserver
125 Summary(pl.UTF-8): Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy HKP
126 Group: Applications/File
127 Requires: %{name}-common = %{version}-%{release}
129 %description plugin-keys_hkp
130 GnuPG 2 plugin for allow talk to a HKP keyserver.
132 %description plugin-keys_hkp -l pl.UTF-8
133 Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy HKP.
135 %package plugin-keys_kdns
136 Summary: GnuPG 2 plugin for allow talk to a KDNS keyserver
137 Summary(pl.UTF-8): Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy KDNS
138 Group: Applications/File
139 Requires: %{name}-common = %{version}-%{release}
141 %description plugin-keys_kdns
142 GnuPG 2 plugin for allow talk to a KDNS keyserver.
144 %description plugin-keys_kdns -l pl.UTF-8
145 Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy KDNS.
147 %package plugin-keys_ldap
148 Summary: GnuPG 2 plugin for allow talk to a LDAP keyserver
149 Summary(pl.UTF-8): Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy LDAP
150 Group: Applications/File
151 Requires: %{name}-common = %{version}-%{release}
153 %description plugin-keys_ldap
154 GnuPG 2 plugin for allow talk to a LDAP keyserver.
156 %description plugin-keys_ldap -l pl.UTF-8
157 Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy LDAP.
159 %package -n gnupg-agent
160 Summary: GnuPG extension - agent
161 Summary(pl.UTF-8): Rozszerzenie GnuPG - agent
162 Group: Applications/File
163 Requires: %{name}-common = %{version}-%{release}
164 Requires: pinentry >= 0.7.5-2
167 %description -n gnupg-agent
168 GnuPG extension - agent.
170 %description -n gnupg-agent -l pl.UTF-8
171 Rozszerzenie GnuPG - agent.
173 %package -n gnupg-agent-profile_d
174 Summary: gnupg-agent start script for text mode
175 Summary(pl.UTF-8): Skrypt startowy gnupg-agenta dla trybu tekstowego
176 Group: Applications/File
177 Requires: gnupg-agent = %{version}-%{release}
179 %description -n gnupg-agent-profile_d
180 gnupg-agent start script for text mode.
182 %description -n gnupg-agent-profile_d -l pl.UTF-8
183 Skrypt startowy gnupg-agenta dla trybu tekstowego.
185 %package -n gnupg-agent-xinitrc
186 Summary: gnupg-agent start script for X-Window mode
187 Summary(pl.UTF-8): Skrypt startowy gnupg-agenta dla trybu X-Window
188 Group: Applications/File
189 Requires: gnupg-agent = %{version}-%{release}
192 %description -n gnupg-agent-xinitrc
193 gnupg-agent start script for X-Window mode.
195 %description -n gnupg-agent-xinitrc -l pl.UTF-8
196 Skrypt startowy gnupg-agenta dla trybu X-Window.
198 %package -n gnupg-smime
199 Summary: GnuPG extension - S/MIME support
200 Summary(pl.UTF-8): Rozszerzenie GnuPG - obsługa S/MIME
201 Group: Applications/File
202 Requires: %{name}-common = %{version}-%{release}
203 Conflicts: gnupg-agent < 1.9.14-2
205 %description -n gnupg-smime
206 GnuPG extension - S/MIME support.
208 %description -n gnupg-smime -l pl.UTF-8
209 Rozszerzenie GnuPG - obsługa S/MIME.
212 Summary: X509/LDAP certificate and revocation list client
213 Summary(pl.UTF-8): Klient certyfikatów i list anulujących X509/LDAP
215 Requires: %{name}-common = %{version}-%{release}
217 %description -n dirmngr
218 DirMngr is a client for managing and downloading certificate
219 revocation lists (CRLs) for X509 certificates and for downloading the
220 certificates themselves. DirMngr is usually invoked by gpgsm and in
221 general not used directly.
223 %description -n dirmngr -l pl.UTF-8
224 DirMngr to klient do zarządzania i pobierania list anulujących
225 certyfikaty (CRLs - certificate revocation lists) dla certyfikatów
226 X509 oraz do pobierania samych certyfikatów. DirMngr jest zwykle
227 wywoływany przez gpgsm i nie używany bezpośrednio.
230 %setup -q -n gnupg-%{version}
234 %{!?with_tests:%patch2 -p1}
242 %{__aclocal} -I m4 -I gl/m4
246 if (grep -q ^development_version=yes configure); then
247 echo "configure incorrectly rebuild with messed up development status and likely version and revision." >&2
248 echo "Consider fixing nogit.patch" >&2
253 --libexecdir=%{pkglibexecdir} \
254 %{!?with_dirmngr:--disable-dirmngr} \
256 %{!?with_default_gpg:--enable-gpg-is-gpg2} \
257 %{?with_gnutls:--disable-ntbtls} \
258 %{?with_selinux:--enable-selinux-support} \
259 --enable-symcryptrun \
261 --with-capabilities \
262 --with-pinentry-pgm=%{_bindir}/pinentry \
263 --with-mailprog=/usr/lib/sendmail
268 rm -rf $RPM_BUILD_ROOT
271 DESTDIR=$RPM_BUILD_ROOT \
272 pkglibdir=%{_libexecdir}
274 install -D %{SOURCE1} $RPM_BUILD_ROOT/etc/profile.d/gnupg-agent.sh
275 install -D %{SOURCE1} $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d/gnupg-agent.sh
277 %if %{without dirmngr}
278 %{__rm} $RPM_BUILD_ROOT%{_mandir}/{man1/dirmngr-client.1,man8/dirmngr.8}
281 %{__rm} -f $RPM_BUILD_ROOT%{_datadir}/info/dir
283 # files useful for users packaged as %doc
284 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/gnupg
287 rm -f $RPM_BUILD_ROOT%{_datadir}/info/dir
290 rm -rf $RPM_BUILD_ROOT
292 %post -p /sbin/postshell
293 -/usr/sbin/fix-info-dir -c %{_infodir}
295 %postun -p /sbin/postshell
296 -/usr/sbin/fix-info-dir -c %{_infodir}
298 %triggerpostun -n gnupg-agent -- gnupg-agent < 1.9.16-2
299 %banner gnupg-agent-1.9.16-2 << EOF
300 Scripts for starting gnupg-agent have been moved to separate
301 subpackages: gnupg-agent-profile_d and gnupg-agent-xinitrc.
305 %defattr(644,root,root,755)
306 %if %{with default_gpg}
307 %attr(755,root,root) %{_bindir}/gpg
308 %attr(755,root,root) %{_bindir}/gpgv
309 %{_mandir}/man1/gpg.1*
310 %{_mandir}/man1/gpgv.1*
312 %attr(755,root,root) %{_bindir}/gpg2
313 %attr(755,root,root) %{_bindir}/gpgv2
314 %{_mandir}/man1/gpg2.1*
315 %{_mandir}/man1/gpgv2.1*
318 %files common -f gnupg2.lang
319 %defattr(644,root,root,755)
320 %doc AUTHORS ChangeLog ChangeLog-2011 NEWS README THANKS TODO
321 %attr(755,root,root) %{_bindir}/gpg-connect-agent
322 %attr(755,root,root) %{_bindir}/gpgconf
323 %attr(755,root,root) %{_bindir}/gpgkey2ssh
324 %attr(755,root,root) %{_bindir}/gpgparsemail
325 %attr(755,root,root) %{_bindir}/kbxutil
326 %attr(755,root,root) %{_bindir}/watchgnupg
327 %attr(755,root,root) %{_sbindir}/addgnupghome
328 %attr(755,root,root) %{_sbindir}/applygnupgdefaults
329 %attr(755,root,root) %{_sbindir}/g13-syshelp
330 %dir %{pkglibexecdir}
333 %{_mandir}/man1/gpg-connect-agent.1*
334 %{_mandir}/man1/gpgconf.1*
335 %{_mandir}/man1/gpgparsemail.1*
336 %{_mandir}/man1/gpgtar.1*
337 %{_mandir}/man1/watchgnupg.1*
338 %{_mandir}/man8/addgnupghome.8*
339 %{_mandir}/man8/applygnupgdefaults.8*
340 %{_infodir}/gnupg.info*
342 %files plugin-keys_curl
343 %defattr(644,root,root,755)
344 %attr(755,root,root) %{_libexecdir}/gpg2keys_curl
346 %files plugin-keys_finger
347 %defattr(644,root,root,755)
348 %attr(755,root,root) %{_libexecdir}/gpg2keys_finger
350 %files plugin-keys_hkp
351 %defattr(644,root,root,755)
352 %attr(755,root,root) %{_libexecdir}/gpg2keys_hkp
354 %files plugin-keys_kdns
355 %defattr(644,root,root,755)
356 %attr(755,root,root) %{_libexecdir}/gpg2keys_kdns
358 %files plugin-keys_ldap
359 %defattr(644,root,root,755)
360 %attr(755,root,root) %{_libexecdir}/gpg2keys_ldap
362 %files -n gnupg-smime
363 %defattr(644,root,root,755)
364 %attr(755,root,root) %{_bindir}/gpgsm
365 %attr(755,root,root) %{_bindir}/gpgsm-gencert.sh
366 %{_mandir}/man1/gpgsm.1*
367 %{_mandir}/man1/gpgsm-gencert.sh.1*
369 %files -n gnupg-agent
370 %defattr(644,root,root,755)
371 %attr(755,root,root) %{_bindir}/gpg-agent
372 %attr(755,root,root) %{_bindir}/gpg-wks-server
373 %attr(755,root,root) %{_bindir}/symcryptrun
374 %attr(755,root,root) %{pkglibexecdir}/gpg-check-pattern
375 %attr(755,root,root) %{pkglibexecdir}/gpg-protect-tool
376 %attr(755,root,root) %{pkglibexecdir}/gpg-preset-passphrase
377 %attr(755,root,root) %{pkglibexecdir}/gpg-wks-client
378 %attr(755,root,root) %{pkglibexecdir}/scdaemon
379 %{_mandir}/man1/gpg-agent.1*
380 %{_mandir}/man1/gpg-preset-passphrase.1*
381 %{_mandir}/man1/gpg-wks-client.1*
382 %{_mandir}/man1/gpg-wks-server.1*
383 %{_mandir}/man1/scdaemon.1*
384 %{_mandir}/man1/symcryptrun.1*
386 %files -n gnupg-agent-profile_d
387 %defattr(644,root,root,755)
388 %attr(755,root,root) /etc/profile.d/gnupg-agent.sh
390 %files -n gnupg-agent-xinitrc
391 %defattr(644,root,root,755)
392 %attr(755,root,root) /etc/X11/xinit/xinitrc.d/gnupg-agent.sh
396 %defattr(644,root,root,755)
397 %attr(755,root,root) %{_bindir}/dirmngr
398 %attr(755,root,root) %{_bindir}/dirmngr-client
399 %attr(755,root,root) %{pkglibexecdir}/dirmngr_ldap
400 %{_mandir}/man1/dirmngr-client.1*
401 %{_mandir}/man8/dirmngr.8*