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
12 # 2.1.x is development version unfortunately (see gpg2 --version)
16 Group: Applications/File
17 Source0: ftp://ftp.gnupg.org/gcrypt/gnupg/gnupg-%{version}.tar.bz2
18 # Source0-md5: fc13424af7747a5dd6edb6086ec0cb2f
19 Source1: gnupg-agent.sh
20 Patch0: %{name}-info.patch
21 Patch1: %{name}-nogit.patch
22 Patch2: %{name}-disable_tests.patch
23 Patch3: %{name}-pl.po-update.patch
24 Patch4: %{name}-am.patch
25 URL: http://www.gnupg.org/
26 BuildRequires: autoconf >= 2.61
27 BuildRequires: automake >= 1:1.14
28 BuildRequires: bzip2-devel
29 BuildRequires: curl-devel >= 7.10
30 BuildRequires: gettext-tools >= 0.17
31 %{?with_gnutls:BuildRequires: gnutls-devel >= 3.0}
32 BuildRequires: libassuan-devel >= 1:2.5.0
33 BuildRequires: libgcrypt-devel >= 1.7.0
34 BuildRequires: libgpg-error-devel >= 1.24
35 BuildRequires: libksba-devel >= 1.3.4
36 BuildRequires: libusb-devel >= 1.0
37 BuildRequires: npth-devel >= 1.2
38 %{!?with_gnutls:BuildRequires: ntbtls-devel >= 0.1.0}
39 %{?with_dirmngr:BuildRequires: openldap-devel >= 2.4.6}
40 BuildRequires: pkgconfig
41 BuildRequires: readline-devel
42 BuildRequires: rpmbuild(macros) >= 1.177
43 BuildRequires: texinfo
44 BuildRequires: zlib-devel
45 Requires: gnupg2-common = %{version}-%{release}
46 Requires: sqlite3 >= 3.7
47 %if %{with default_gpg}
49 Obsoletes: gnupg-plugin-keys_curl < 2
50 Obsoletes: gnupg-plugin-keys_hkp < 2
51 Provides: gnupg = %{version}-%{release}
54 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
56 %define pkglibexecdir %{_libexecdir}/gnupg2
59 GnuPG is GNU's tool for secure communication and data storage. It can
60 be used to encrypt data and to create digital signatures. It includes
61 an advanced key management facility and is compliant with the proposed
62 OpenPGP Internet standard as described in RFC2440.
64 This is enhanced version.
66 %description -l pl.UTF-8
67 GnuPG (GNU Privacy Guard) jest narzędziem do bezpiecznej komunikacji i
68 bezpiecznego przechowywania danych. Może być używany do szyfrowania
69 oraz podpisywania danych. Umożliwia zaawansowane zarządzanie kluczami
70 i spełnia normy zdefiniowane w standardzie OpenPGP, który jest opisany
73 To jest wersja rozszerzona.
76 Summary: GnuPG - common files
77 Summary(pl.UTF-8): GnuPG - pliki wspólne
78 Group: Applications/File
79 Requires: libassuan >= 1:2.5.0
80 Requires: libgcrypt >= 1.7.0
81 Requires: libgpg-error >= 1.24
82 Requires: libksba >= 1.3.4
84 Obsoletes: gnupg2-plugin-keys_curl
85 Obsoletes: gnupg2-plugin-keys_finger
86 Obsoletes: gnupg2-plugin-keys_hkp
87 Obsoletes: gnupg2-plugin-keys_kdns
88 Obsoletes: gnupg2-plugin-keys_ldap
89 Conflicts: gnupg < 1.4.18-2
90 Conflicts: gnupg-agent < 1.9.14-2
93 Common files used by tools from GnuPG project.
95 %description common -l pl.UTF-8
96 Pliki wspólne używane przez różne narzędzia z projektu GnuPG.
98 %package plugin-keys_curl
99 Summary: GnuPG 2 plugin for allow talk to a HTTP/FTP keyserver
100 Summary(pl.UTF-8): Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy HTTP/FTP
101 Group: Applications/File
102 Requires: %{name}-common = %{version}-%{release}
103 Requires: curl-libs >= 7.10
105 %description plugin-keys_curl
106 GnuPG 2 plugin for allow talk to a HTTP(S)/FTP(S) keyserver.
108 %description plugin-keys_curl -l pl.UTF-8
109 Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy
112 %package plugin-keys_finger
113 Summary: GnuPG 2 plugin for allow talk to a FINGER keyserver
114 Summary(pl.UTF-8): Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy FINGER
115 Group: Applications/File
116 Requires: %{name}-common = %{version}-%{release}
118 %description plugin-keys_finger
119 GnuPG 2 plugin for allow talk to a FINGER keyserver.
121 %description plugin-keys_finger -l pl.UTF-8
122 Wtyczka 2 GnuPG pozwalająca komunikować się z serwerem kluczy FINGER.
124 %package plugin-keys_hkp
125 Summary: GnuPG 2 plugin for allow talk to a HKP keyserver
126 Summary(pl.UTF-8): Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy HKP
127 Group: Applications/File
128 Requires: %{name}-common = %{version}-%{release}
130 %description plugin-keys_hkp
131 GnuPG 2 plugin for allow talk to a HKP keyserver.
133 %description plugin-keys_hkp -l pl.UTF-8
134 Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy HKP.
136 %package plugin-keys_kdns
137 Summary: GnuPG 2 plugin for allow talk to a KDNS keyserver
138 Summary(pl.UTF-8): Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy KDNS
139 Group: Applications/File
140 Requires: %{name}-common = %{version}-%{release}
142 %description plugin-keys_kdns
143 GnuPG 2 plugin for allow talk to a KDNS keyserver.
145 %description plugin-keys_kdns -l pl.UTF-8
146 Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy KDNS.
148 %package plugin-keys_ldap
149 Summary: GnuPG 2 plugin for allow talk to a LDAP keyserver
150 Summary(pl.UTF-8): Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy LDAP
151 Group: Applications/File
152 Requires: %{name}-common = %{version}-%{release}
154 %description plugin-keys_ldap
155 GnuPG 2 plugin for allow talk to a LDAP keyserver.
157 %description plugin-keys_ldap -l pl.UTF-8
158 Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy LDAP.
160 %package -n gnupg-agent
161 Summary: GnuPG extension - agent
162 Summary(pl.UTF-8): Rozszerzenie GnuPG - agent
163 Group: Applications/File
164 Requires: %{name}-common = %{version}-%{release}
165 Requires: pinentry >= 0.7.5-2
168 %description -n gnupg-agent
169 GnuPG extension - agent.
171 %description -n gnupg-agent -l pl.UTF-8
172 Rozszerzenie GnuPG - agent.
174 %package -n gnupg-agent-profile_d
175 Summary: gnupg-agent start script for text mode
176 Summary(pl.UTF-8): Skrypt startowy gnupg-agenta dla trybu tekstowego
177 Group: Applications/File
178 Requires: gnupg-agent = %{version}-%{release}
180 %description -n gnupg-agent-profile_d
181 gnupg-agent start script for text mode.
183 %description -n gnupg-agent-profile_d -l pl.UTF-8
184 Skrypt startowy gnupg-agenta dla trybu tekstowego.
186 %package -n gnupg-agent-xinitrc
187 Summary: gnupg-agent start script for X-Window mode
188 Summary(pl.UTF-8): Skrypt startowy gnupg-agenta dla trybu X-Window
189 Group: Applications/File
190 Requires: gnupg-agent = %{version}-%{release}
193 %description -n gnupg-agent-xinitrc
194 gnupg-agent start script for X-Window mode.
196 %description -n gnupg-agent-xinitrc -l pl.UTF-8
197 Skrypt startowy gnupg-agenta dla trybu X-Window.
199 %package -n gnupg-smime
200 Summary: GnuPG extension - S/MIME support
201 Summary(pl.UTF-8): Rozszerzenie GnuPG - obsługa S/MIME
202 Group: Applications/File
203 Requires: %{name}-common = %{version}-%{release}
204 Conflicts: gnupg-agent < 1.9.14-2
206 %description -n gnupg-smime
207 GnuPG extension - S/MIME support.
209 %description -n gnupg-smime -l pl.UTF-8
210 Rozszerzenie GnuPG - obsługa S/MIME.
213 Summary: X509/LDAP certificate and revocation list client
214 Summary(pl.UTF-8): Klient certyfikatów i list anulujących X509/LDAP
216 Requires: %{name}-common = %{version}-%{release}
218 %description -n dirmngr
219 DirMngr is a client for managing and downloading certificate
220 revocation lists (CRLs) for X509 certificates and for downloading the
221 certificates themselves. DirMngr is usually invoked by gpgsm and in
222 general not used directly.
224 %description -n dirmngr -l pl.UTF-8
225 DirMngr to klient do zarządzania i pobierania list anulujących
226 certyfikaty (CRLs - certificate revocation lists) dla certyfikatów
227 X509 oraz do pobierania samych certyfikatów. DirMngr jest zwykle
228 wywoływany przez gpgsm i nie używany bezpośrednio.
231 %setup -q -n gnupg-%{version}
235 %{!?with_tests:%patch2 -p1}
243 %{__aclocal} -I m4 -I gl/m4
247 if (grep -q ^development_version=yes configure); then
248 echo "configure incorrectly rebuild with messed up development status and likely version and revision." >&2
249 echo "Consider fixing nogit.patch" >&2
254 --libexecdir=%{pkglibexecdir} \
255 %{!?with_dirmngr:--disable-dirmngr} \
257 %{!?with_default_gpg:--enable-gpg-is-gpg2} \
258 %{?with_gnutls:--disable-ntbtls} \
259 %{?with_selinux:--enable-selinux-support} \
260 --enable-symcryptrun \
262 --with-capabilities \
263 --with-pinentry-pgm=%{_bindir}/pinentry \
264 --with-mailprog=/usr/lib/sendmail
269 rm -rf $RPM_BUILD_ROOT
272 DESTDIR=$RPM_BUILD_ROOT \
273 pkglibdir=%{_libexecdir}
275 install -D %{SOURCE1} $RPM_BUILD_ROOT/etc/profile.d/gnupg-agent.sh
276 install -D %{SOURCE1} $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d/gnupg-agent.sh
278 %if %{without dirmngr}
279 %{__rm} $RPM_BUILD_ROOT%{_mandir}/{man1/dirmngr-client.1,man8/dirmngr.8}
282 %{__rm} -f $RPM_BUILD_ROOT%{_datadir}/info/dir
284 # files useful for users packaged as %doc
285 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/gnupg
288 rm -f $RPM_BUILD_ROOT%{_datadir}/info/dir
291 rm -rf $RPM_BUILD_ROOT
293 %post -p /sbin/postshell
294 -/usr/sbin/fix-info-dir -c %{_infodir}
296 %postun -p /sbin/postshell
297 -/usr/sbin/fix-info-dir -c %{_infodir}
299 %triggerpostun -n gnupg-agent -- gnupg-agent < 1.9.16-2
300 %banner gnupg-agent-1.9.16-2 << EOF
301 Scripts for starting gnupg-agent have been moved to separate
302 subpackages: gnupg-agent-profile_d and gnupg-agent-xinitrc.
306 %defattr(644,root,root,755)
307 %if %{with default_gpg}
308 %attr(755,root,root) %{_bindir}/gpg
309 %attr(755,root,root) %{_bindir}/gpgv
310 %{_mandir}/man1/gpg.1*
311 %{_mandir}/man1/gpgv.1*
313 %attr(755,root,root) %{_bindir}/gpg2
314 %attr(755,root,root) %{_bindir}/gpgv2
315 %{_mandir}/man1/gpg2.1*
316 %{_mandir}/man1/gpgv2.1*
319 %files common -f gnupg2.lang
320 %defattr(644,root,root,755)
321 %doc AUTHORS ChangeLog ChangeLog-2011 NEWS README THANKS TODO
322 %attr(755,root,root) %{_bindir}/gpg-connect-agent
323 %attr(755,root,root) %{_bindir}/gpgconf
324 %attr(755,root,root) %{_bindir}/gpgkey2ssh
325 %attr(755,root,root) %{_bindir}/gpgparsemail
326 %attr(755,root,root) %{_bindir}/kbxutil
327 %attr(755,root,root) %{_bindir}/watchgnupg
328 %attr(755,root,root) %{_sbindir}/addgnupghome
329 %attr(755,root,root) %{_sbindir}/applygnupgdefaults
330 %attr(755,root,root) %{_sbindir}/g13-syshelp
331 %dir %{pkglibexecdir}
334 %{_mandir}/man1/gpg-connect-agent.1*
335 %{_mandir}/man1/gpgconf.1*
336 %{_mandir}/man1/gpgparsemail.1*
337 %{_mandir}/man1/gpgtar.1*
338 %{_mandir}/man1/watchgnupg.1*
339 %{_mandir}/man8/addgnupghome.8*
340 %{_mandir}/man8/applygnupgdefaults.8*
341 %{_infodir}/gnupg.info*
343 %files plugin-keys_curl
344 %defattr(644,root,root,755)
345 %attr(755,root,root) %{_libexecdir}/gpg2keys_curl
347 %files plugin-keys_finger
348 %defattr(644,root,root,755)
349 %attr(755,root,root) %{_libexecdir}/gpg2keys_finger
351 %files plugin-keys_hkp
352 %defattr(644,root,root,755)
353 %attr(755,root,root) %{_libexecdir}/gpg2keys_hkp
355 %files plugin-keys_kdns
356 %defattr(644,root,root,755)
357 %attr(755,root,root) %{_libexecdir}/gpg2keys_kdns
359 %files plugin-keys_ldap
360 %defattr(644,root,root,755)
361 %attr(755,root,root) %{_libexecdir}/gpg2keys_ldap
363 %files -n gnupg-smime
364 %defattr(644,root,root,755)
365 %attr(755,root,root) %{_bindir}/gpgsm
366 %attr(755,root,root) %{_bindir}/gpgsm-gencert.sh
367 %{_mandir}/man1/gpgsm.1*
368 %{_mandir}/man1/gpgsm-gencert.sh.1*
370 %files -n gnupg-agent
371 %defattr(644,root,root,755)
372 %attr(755,root,root) %{_bindir}/gpg-agent
373 %attr(755,root,root) %{_bindir}/gpg-wks-server
374 %attr(755,root,root) %{_bindir}/symcryptrun
375 %attr(755,root,root) %{pkglibexecdir}/gpg-check-pattern
376 %attr(755,root,root) %{pkglibexecdir}/gpg-protect-tool
377 %attr(755,root,root) %{pkglibexecdir}/gpg-preset-passphrase
378 %attr(755,root,root) %{pkglibexecdir}/gpg-wks-client
379 %attr(755,root,root) %{pkglibexecdir}/scdaemon
380 %{_mandir}/man1/gpg-agent.1*
381 %{_mandir}/man1/gpg-preset-passphrase.1*
382 %{_mandir}/man1/gpg-wks-client.1*
383 %{_mandir}/man1/gpg-wks-server.1*
384 %{_mandir}/man1/scdaemon.1*
385 %{_mandir}/man1/symcryptrun.1*
387 %files -n gnupg-agent-profile_d
388 %defattr(644,root,root,755)
389 %attr(755,root,root) /etc/profile.d/gnupg-agent.sh
391 %files -n gnupg-agent-xinitrc
392 %defattr(644,root,root,755)
393 %attr(755,root,root) /etc/X11/xinit/xinitrc.d/gnupg-agent.sh
397 %defattr(644,root,root,755)
398 %attr(755,root,root) %{_bindir}/dirmngr
399 %attr(755,root,root) %{_bindir}/dirmngr-client
400 %attr(755,root,root) %{pkglibexecdir}/dirmngr_ldap
401 %{_mandir}/man1/dirmngr-client.1*
402 %{_mandir}/man8/dirmngr.8*