]> git.pld-linux.org Git - packages/gnupg2.git/blob - gnupg2.spec
952771ad934b416f01d8b67153f6d416a16b3046
[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.21
13 Release:        1
14 License:        GPL v3+
15 Group:          Applications/File
16 Source0:        ftp://ftp.gnupg.org/gcrypt/gnupg/gnupg-%{version}.tar.bz2
17 # Source0-md5:  97fa4809da1e8f24fcb0ed7205b2f484
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.24
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.24
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 %attr(755,root,root) %{_bindir}/gpgscm
269 %attr(755,root,root) %{_bindir}/gpgtar
270 %attr(755,root,root) %{_bindir}/kbxutil
271 %attr(755,root,root) %{_bindir}/watchgnupg
272 %attr(755,root,root) %{_sbindir}/addgnupghome
273 %attr(755,root,root) %{_sbindir}/applygnupgdefaults
274 %attr(755,root,root) %{_sbindir}/g13-syshelp
275 %dir %{pkglibexecdir}
276
277 %{_datadir}/gnupg
278 %{_mandir}/man1/gpg-connect-agent.1*
279 %{_mandir}/man1/gpgconf.1*
280 %{_mandir}/man1/gpgparsemail.1*
281 %{_mandir}/man1/gpgtar.1*
282 %{_mandir}/man1/watchgnupg.1*
283 %{_mandir}/man7/gnupg.7*
284 %{_mandir}/man8/addgnupghome.8*
285 %{_mandir}/man8/applygnupgdefaults.8*
286 %{_infodir}/gnupg.info*
287
288 %files -n gnupg-smime
289 %defattr(644,root,root,755)
290 %attr(755,root,root) %{_bindir}/gpgsm
291 %{_mandir}/man1/gpgsm.1*
292
293 %files -n gnupg-agent
294 %defattr(644,root,root,755)
295 %attr(755,root,root) %{_bindir}/gpg-agent
296 %attr(755,root,root) %{_bindir}/gpg-wks-server
297 %attr(755,root,root) %{_bindir}/symcryptrun
298 %attr(755,root,root) %{pkglibexecdir}/gpg-check-pattern
299 %attr(755,root,root) %{pkglibexecdir}/gpg-protect-tool
300 %attr(755,root,root) %{pkglibexecdir}/gpg-preset-passphrase
301 %attr(755,root,root) %{pkglibexecdir}/gpg-wks-client
302 %attr(755,root,root) %{pkglibexecdir}/scdaemon
303 %{systemduserunitdir}/gpg-agent.service
304 %{systemduserunitdir}/gpg-agent.socket
305 %{systemduserunitdir}/gpg-agent-browser.socket
306 %{systemduserunitdir}/gpg-agent-extra.socket
307 %{systemduserunitdir}/gpg-agent-ssh.socket
308 %{_mandir}/man1/gpg-agent.1*
309 %{_mandir}/man1/gpg-preset-passphrase.1*
310 %{_mandir}/man1/gpg-wks-client.1*
311 %{_mandir}/man1/gpg-wks-server.1*
312 %{_mandir}/man1/scdaemon.1*
313 %{_mandir}/man1/symcryptrun.1*
314
315 %files -n gnupg-agent-profile_d
316 %defattr(644,root,root,755)
317 %attr(755,root,root) /etc/profile.d/gnupg-agent.sh
318
319 %files -n gnupg-agent-xinitrc
320 %defattr(644,root,root,755)
321 %attr(755,root,root) /etc/X11/xinit/xinitrc.d/gnupg-agent.sh
322
323 %if %{with dirmngr}
324 %files -n dirmngr
325 %defattr(644,root,root,755)
326 %attr(755,root,root) %{_bindir}/dirmngr
327 %attr(755,root,root) %{_bindir}/dirmngr-client
328 %attr(755,root,root) %{pkglibexecdir}/dirmngr_ldap
329 %{systemduserunitdir}/dirmngr.service
330 %{systemduserunitdir}/dirmngr.socket
331 %{_mandir}/man1/dirmngr-client.1*
332 %{_mandir}/man8/dirmngr.8*
333 %endif
This page took 0.083044 seconds and 2 git commands to generate.