]> git.pld-linux.org Git - packages/gnupg2.git/blob - gnupg2.spec
f9709d9ac41d06d007ffbee99d1618d5a5f0247a
[packages/gnupg2.git] / gnupg2.spec
1 #
2 # Conditional build:
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"
8 #
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
11 Name:           gnupg2
12 Version:        2.2.22
13 Release:        2
14 License:        GPL v3+
15 Group:          Applications/File
16 Source0:        ftp://ftp.gnupg.org/gcrypt/gnupg/gnupg-%{version}.tar.bz2
17 # Source0-md5:  34594b2b90e23555145f07679c5c8d07
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 URL:            http://www.gnupg.org/
24 BuildRequires:  autoconf >= 2.61
25 BuildRequires:  automake >= 1:1.14
26 BuildRequires:  bzip2-devel
27 BuildRequires:  curl-devel >= 7.10
28 BuildRequires:  gettext-tools >= 0.17
29 %{?with_gnutls:BuildRequires:   gnutls-devel >= 3.0}
30 BuildRequires:  libassuan-devel >= 1:2.5.0
31 BuildRequires:  libgcrypt-devel >= 1.7.0
32 BuildRequires:  libgpg-error-devel >= 1.25
33 BuildRequires:  libksba-devel >= 1.3.4
34 BuildRequires:  libusb-devel >= 1.0
35 BuildRequires:  npth-devel >= 1.2
36 %{!?with_gnutls:BuildRequires:  ntbtls-devel >= 0.1.0}
37 %{?with_dirmngr:BuildRequires:  openldap-devel >= 2.4.6}
38 BuildRequires:  pkgconfig
39 BuildRequires:  readline-devel
40 BuildRequires:  rpmbuild(macros) >= 1.177
41 BuildRequires:  sqlite3-devel >= 3.7
42 BuildRequires:  texinfo
43 BuildRequires:  zlib-devel
44 Requires:       gnupg2-common = %{version}-%{release}
45 Requires:       sqlite3 >= 3.7
46 %if %{with default_gpg}
47 Obsoletes:      gnupg < 2
48 Obsoletes:      gnupg-plugin-keys_curl < 2
49 Obsoletes:      gnupg-plugin-keys_hkp < 2
50 Provides:       gnupg = %{version}-%{release}
51 %endif
52 Suggests:       gnupg-agent
53 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
54
55 %define         pkglibexecdir   %{_libexecdir}/gnupg2
56
57 %description
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.
62
63 This is enhanced version.
64
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
70 w RFC2440.
71
72 To jest wersja rozszerzona.
73
74 %package common
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.25
81 Requires:       libksba >= 1.3.4
82 Requires:       npth >= 1.2
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
90
91 %description common
92 Common files used by tools from GnuPG project.
93
94 %description common -l pl.UTF-8
95 Pliki wspólne używane przez różne narzędzia z projektu GnuPG.
96
97 %package -n gnupg-agent
98 Summary:        GnuPG extension - agent
99 Summary(pl.UTF-8):      Rozszerzenie GnuPG - agent
100 Group:          Applications/File
101 Requires:       %{name}-common = %{version}-%{release}
102 Requires:       pinentry >= 0.7.5-2
103 Obsoletes:      newpg
104
105 %description -n gnupg-agent
106 GnuPG extension - agent.
107
108 %description -n gnupg-agent -l pl.UTF-8
109 Rozszerzenie GnuPG - agent.
110
111 %package -n gnupg-agent-profile_d
112 Summary:        gnupg-agent start script for text mode
113 Summary(pl.UTF-8):      Skrypt startowy gnupg-agenta dla trybu tekstowego
114 Group:          Applications/File
115 Requires:       gnupg-agent = %{version}-%{release}
116
117 %description -n gnupg-agent-profile_d
118 gnupg-agent start script for text mode.
119
120 %description -n gnupg-agent-profile_d -l pl.UTF-8
121 Skrypt startowy gnupg-agenta dla trybu tekstowego.
122
123 %package -n gnupg-agent-xinitrc
124 Summary:        gnupg-agent start script for X-Window mode
125 Summary(pl.UTF-8):      Skrypt startowy gnupg-agenta dla trybu X-Window
126 Group:          Applications/File
127 Requires:       gnupg-agent = %{version}-%{release}
128 Requires:       xinitrc
129
130 %description -n gnupg-agent-xinitrc
131 gnupg-agent start script for X-Window mode.
132
133 %description -n gnupg-agent-xinitrc -l pl.UTF-8
134 Skrypt startowy gnupg-agenta dla trybu X-Window.
135
136 %package -n gnupg-smime
137 Summary:        GnuPG extension - S/MIME support
138 Summary(pl.UTF-8):      Rozszerzenie GnuPG - obsługa S/MIME
139 Group:          Applications/File
140 Requires:       %{name}-common = %{version}-%{release}
141 Conflicts:      gnupg-agent < 1.9.14-2
142
143 %description -n gnupg-smime
144 GnuPG extension - S/MIME support.
145
146 %description -n gnupg-smime -l pl.UTF-8
147 Rozszerzenie GnuPG - obsługa S/MIME.
148
149 %package -n dirmngr
150 Summary:        X509/LDAP certificate and revocation list client
151 Summary(pl.UTF-8):      Klient certyfikatów i list anulujących X509/LDAP
152 Group:          Applications
153 Requires:       %{name}-common = %{version}-%{release}
154
155 %description -n dirmngr
156 DirMngr is a client for managing and downloading certificate
157 revocation lists (CRLs) for X509 certificates and for downloading the
158 certificates themselves. DirMngr is usually invoked by gpgsm and in
159 general not used directly.
160
161 %description -n dirmngr -l pl.UTF-8
162 DirMngr to klient do zarządzania i pobierania list anulujących
163 certyfikaty (CRLs - certificate revocation lists) dla certyfikatów
164 X509 oraz do pobierania samych certyfikatów. DirMngr jest zwykle
165 wywoływany przez gpgsm i nie używany bezpośrednio.
166
167 %prep
168 %setup -q -n gnupg-%{version}
169 %patch0 -p1
170 %patch1 -p1
171 %{!?with_tests:%patch2 -p1}
172 %patch3 -p1
173
174 %{__rm} po/stamp-po
175
176 %build
177 %{__gettextize}
178 %{__aclocal} -I m4
179 %{__autoconf}
180 %{__autoheader}
181 %{__automake}
182 if (grep -q ^development_version=yes configure); then
183         echo "configure incorrectly rebuild with messed up development status and likely version and revision." >&2
184         echo "Consider fixing nogit.patch" >&2
185         exit 1
186 fi
187
188 %configure \
189         --libexecdir=%{pkglibexecdir} \
190         %{!?with_dirmngr:--disable-dirmngr} \
191         --enable-g13 \
192         %{!?with_default_gpg:--enable-gpg-is-gpg2} \
193         %{?with_gnutls:--disable-ntbtls} \
194         %{?with_selinux:--enable-selinux-support} \
195         --enable-symcryptrun \
196         --enable-wks-tools \
197         --with-capabilities \
198         --with-pinentry-pgm=%{_bindir}/pinentry \
199         --with-mailprog=/usr/lib/sendmail
200
201 # required for info rebuild
202 %{__make} -C doc defs.inc
203
204 %{__make}
205
206 %install
207 rm -rf $RPM_BUILD_ROOT
208
209 %{__make} install \
210         DESTDIR=$RPM_BUILD_ROOT \
211         pkglibdir=%{_libexecdir}
212
213 install -D %{SOURCE1} $RPM_BUILD_ROOT/etc/profile.d/gnupg-agent.sh
214 install -D %{SOURCE1} $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d/gnupg-agent.sh
215
216 install -d $RPM_BUILD_ROOT%{systemduserunitdir}
217 install -p doc/examples/systemd-user/*.{socket,service} $RPM_BUILD_ROOT%{systemduserunitdir}
218
219 %if %{without dirmngr}
220 %{__rm} $RPM_BUILD_ROOT%{_mandir}/{man1/dirmngr-client.1,man8/dirmngr.8}
221 %else
222 install -p doc/examples/systemd-user/dirmngr.{socket,service} $RPM_BUILD_ROOT%{systemduserunitdir}
223 %endif
224
225 %{__rm} -f $RPM_BUILD_ROOT%{_datadir}/info/dir
226
227 # files useful for users packaged as %doc
228 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/gnupg
229
230 %find_lang gnupg2
231
232 %clean
233 rm -rf $RPM_BUILD_ROOT
234
235 %post   common -p /sbin/postshell
236 -/usr/sbin/fix-info-dir -c %{_infodir}
237
238 %postun common -p /sbin/postshell
239 -/usr/sbin/fix-info-dir -c %{_infodir}
240
241 %triggerpostun -n gnupg-agent -- gnupg-agent < 1.9.16-2
242 %banner gnupg-agent-1.9.16-2 << EOF
243 Scripts for starting gnupg-agent have been moved to separate
244 subpackages: gnupg-agent-profile_d and gnupg-agent-xinitrc.
245 EOF
246
247 %files
248 %defattr(644,root,root,755)
249 %if %{with default_gpg}
250 %attr(755,root,root) %{_bindir}/gpg
251 %attr(755,root,root) %{_bindir}/gpgv
252 %{_mandir}/man1/gpg.1*
253 %{_mandir}/man1/gpgv.1*
254 %else
255 %attr(755,root,root) %{_bindir}/gpg2
256 %attr(755,root,root) %{_bindir}/gpgv2
257 %{_mandir}/man1/gpg2.1*
258 %{_mandir}/man1/gpgv2.1*
259 %endif
260
261 %files common -f gnupg2.lang
262 %defattr(644,root,root,755)
263 %doc AUTHORS ChangeLog ChangeLog-2011 NEWS README THANKS TODO doc/{DETAILS,FAQ,KEYSERVER,OpenPGP} doc/examples
264 %attr(755,root,root) %{_bindir}/g13
265 %attr(755,root,root) %{_bindir}/gpg-connect-agent
266 %attr(755,root,root) %{_bindir}/gpgconf
267 %attr(755,root,root) %{_bindir}/gpgparsemail
268 %{?with_tests:%attr(755,root,root) %{_bindir}/gpgscm}
269 %attr(755,root,root) %{_bindir}/gpgsplit
270 %attr(755,root,root) %{_bindir}/gpgtar
271 %attr(755,root,root) %{_bindir}/kbxutil
272 %attr(755,root,root) %{_bindir}/watchgnupg
273 %attr(755,root,root) %{_sbindir}/addgnupghome
274 %attr(755,root,root) %{_sbindir}/applygnupgdefaults
275 %attr(755,root,root) %{_sbindir}/g13-syshelp
276 %dir %{pkglibexecdir}
277
278 %{_datadir}/gnupg
279 %{_mandir}/man1/gpg-connect-agent.1*
280 %{_mandir}/man1/gpgconf.1*
281 %{_mandir}/man1/gpgparsemail.1*
282 %{_mandir}/man1/gpgtar.1*
283 %{_mandir}/man1/watchgnupg.1*
284 %{_mandir}/man7/gnupg.7*
285 %{_mandir}/man8/addgnupghome.8*
286 %{_mandir}/man8/applygnupgdefaults.8*
287 %{_infodir}/gnupg.info*
288
289 %files -n gnupg-smime
290 %defattr(644,root,root,755)
291 %attr(755,root,root) %{_bindir}/gpgsm
292 %{_mandir}/man1/gpgsm.1*
293
294 %files -n gnupg-agent
295 %defattr(644,root,root,755)
296 %attr(755,root,root) %{_bindir}/gpg-agent
297 %attr(755,root,root) %{_bindir}/gpg-wks-server
298 %attr(755,root,root) %{_bindir}/symcryptrun
299 %attr(755,root,root) %{pkglibexecdir}/gpg-check-pattern
300 %attr(755,root,root) %{pkglibexecdir}/gpg-protect-tool
301 %attr(755,root,root) %{pkglibexecdir}/gpg-preset-passphrase
302 %attr(755,root,root) %{pkglibexecdir}/gpg-wks-client
303 %attr(755,root,root) %{pkglibexecdir}/scdaemon
304 %{systemduserunitdir}/gpg-agent.service
305 %{systemduserunitdir}/gpg-agent.socket
306 %{systemduserunitdir}/gpg-agent-browser.socket
307 %{systemduserunitdir}/gpg-agent-extra.socket
308 %{systemduserunitdir}/gpg-agent-ssh.socket
309 %{_mandir}/man1/gpg-agent.1*
310 %{_mandir}/man1/gpg-preset-passphrase.1*
311 %{_mandir}/man1/gpg-wks-client.1*
312 %{_mandir}/man1/gpg-wks-server.1*
313 %{_mandir}/man1/scdaemon.1*
314 %{_mandir}/man1/symcryptrun.1*
315
316 %files -n gnupg-agent-profile_d
317 %defattr(644,root,root,755)
318 %attr(755,root,root) /etc/profile.d/gnupg-agent.sh
319
320 %files -n gnupg-agent-xinitrc
321 %defattr(644,root,root,755)
322 %attr(755,root,root) /etc/X11/xinit/xinitrc.d/gnupg-agent.sh
323
324 %if %{with dirmngr}
325 %files -n dirmngr
326 %defattr(644,root,root,755)
327 %attr(755,root,root) %{_bindir}/dirmngr
328 %attr(755,root,root) %{_bindir}/dirmngr-client
329 %attr(755,root,root) %{pkglibexecdir}/dirmngr_ldap
330 %{systemduserunitdir}/dirmngr.service
331 %{systemduserunitdir}/dirmngr.socket
332 %{_mandir}/man1/dirmngr-client.1*
333 %{_mandir}/man8/dirmngr.8*
334 %endif
This page took 0.372372 seconds and 2 git commands to generate.