source: postlfs/security/gnupg2.xml@ f1ba5f96

12.0 12.1 ken/TL2024 ken/tuningfonts lazarus plabs/newcss python3.11 rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18
Last change on this file since f1ba5f96 was f1ba5f96, checked in by Bruce Dubbs <bdubbs@…>, 10 months ago

Add gnupg emacs compatibility patch.

  • Property mode set to 100644
File size: 17.5 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY gnupg2-download-http "&gnupg-http;/gnupg/gnupg-&gnupg2-version;.tar.bz2">
8 <!ENTITY gnupg2-download-ftp "&gnupg-ftp;/gnupg/gnupg-&gnupg2-version;.tar.bz2">
9 <!ENTITY gnupg2-md5sum "e21ab42c629af80f19f813eeb61aa939">
10 <!ENTITY gnupg2-size "7.0 MB">
11 <!ENTITY gnupg2-buildsize "127 MB (with tests)">
12 <!ENTITY gnupg2-time "0.7 SBU (with tests; using parallelism=4)">
13]>
14
15<sect1 id="gnupg2" xreflabel="GnuPG-&gnupg2-version;">
16 <?dbhtml filename="gnupg.html"?>
17
18
19 <title>GnuPG-&gnupg2-version;</title>
20
21 <indexterm zone="gnupg2">
22 <primary sortas="a-GnuPG">GnuPG</primary>
23 </indexterm>
24
25 <sect2 role="package">
26 <title>Introduction to GnuPG</title>
27
28 <para>
29 The <application>GnuPG</application> package is GNU's tool for
30 secure communication and data storage. It can be used to encrypt data and
31 to create digital signatures. It includes an advanced key management
32 facility and is compliant with the proposed OpenPGP Internet standard as
33 described in RFC2440 and the S/MIME standard as described by several RFCs.
34 GnuPG 2 is the stable version of GnuPG integrating support for OpenPGP and
35 S/MIME.
36 </para>
37
38 &lfs113_checked;
39
40 <bridgehead renderas="sect3">Package Information</bridgehead>
41 <itemizedlist spacing="compact">
42 <listitem>
43 <para>
44 Download (HTTP): <ulink url="&gnupg2-download-http;"/>
45 </para>
46 </listitem>
47 <listitem>
48 <para>
49 Download (FTP): <ulink url="&gnupg2-download-ftp;"/>
50 </para>
51 </listitem>
52 <listitem>
53 <para>
54 Download MD5 sum: &gnupg2-md5sum;
55 </para>
56 </listitem>
57 <listitem>
58 <para>
59 Download size: &gnupg2-size;
60 </para>
61 </listitem>
62 <listitem>
63 <para>
64 Estimated disk space required: &gnupg2-buildsize;
65 </para>
66 </listitem>
67 <listitem>
68 <para>
69 Estimated build time: &gnupg2-time;
70 </para>
71 </listitem>
72 </itemizedlist>
73
74 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
75 <itemizedlist spacing="compact">
76 <listitem>
77 <para>
78 Required patch:
79 <ulink url="&patch-root;/gnupg-&gnupg2-version;-emacs-1.patch"/>
80 </para>
81 </listitem>
82 </itemizedlist>
83
84 <bridgehead renderas="sect3">GnuPG 2 Dependencies</bridgehead>
85
86 <bridgehead renderas="sect4">Required</bridgehead>
87 <para role="required">
88 <xref linkend="libassuan"/>,
89 <xref linkend="libgcrypt"/>,
90 <xref linkend="libksba"/>,
91 <xref linkend="npth"/>, and
92 <xref linkend="openldap"/>
93 </para>
94
95 <bridgehead renderas="sect4">Recommended</bridgehead>
96 <para role="recommended">
97 <xref linkend="gnutls"/> (required to communicate with keyservers
98 using https or hkps protocol) and
99 <xref linkend="pinentry"/> (Run-time requirement for most of
100 the package's functionality)
101 </para>
102
103 <bridgehead renderas="sect4">Optional</bridgehead>
104 <para role="optional">
105 <xref linkend="curl"/>,
106 <xref linkend="fuse3"/>,
107 <xref linkend="imagemagick"/> (for the <command>convert</command> utility,
108 used for generating the documentation),
109 <xref linkend="libusb"/>,
110 an <xref linkend="server-mail"/>,
111 <xref linkend="sqlite"/>,
112 <xref linkend="texlive"/> (or <xref linkend="tl-installer"/>),
113 <ulink url="https://mcj.sourceforge.net/">fig2dev</ulink> (for
114 generating documentation),
115 and <ulink url="https://www.chiark.greenend.org.uk/~ian/adns/">GNU
116 adns</ulink>
117 </para>
118
119
120 </sect2>
121
122 <sect2 role="installation">
123 <title>Installation of GnuPG</title>
124
125 <para>
126 First, fix a compatibility issue with emacs:
127 </para>
128
129<screen><userinput>patch -Np1 -i ../gnupg-2.4.3-emacs-1.patch</userinput></screen>
130
131 <para>
132 Install <application>GnuPG</application> by running the following
133 commands:
134 </para>
135
136<screen><userinput>mkdir build &amp;&amp;
137cd build &amp;&amp;
138
139../configure --prefix=/usr \
140 --localstatedir=/var \
141 --sysconfdir=/etc \
142 --docdir=/usr/share/doc/gnupg-&gnupg2-version; &amp;&amp;
143make &amp;&amp;
144
145makeinfo --html --no-split -I doc -o doc/gnupg_nochunks.html ../doc/gnupg.texi &amp;&amp;
146makeinfo --plaintext -I doc -o doc/gnupg.txt ../doc/gnupg.texi &amp;&amp;
147make -C doc html</userinput></screen>
148
149 <para>
150 If you have <xref linkend="texlive"/>
151 installed and you wish to create documentation in alternate formats,
152 issue the following commands
153 (<ulink url="https://mcj.sourceforge.net/">fig2dev</ulink> is needed for
154 the ps format):
155 </para>
156
157<screen remap="doc"><userinput>make -C doc pdf ps</userinput></screen>
158
159 <para>
160 To test the results, issue: <command>make check</command>.
161 </para>
162
163 <para>
164 <!--
165 Note that if you have already installed
166 <application>GnuPG</application>, the instructions below will overwrite
167 <filename>/usr/share/man/man1/gpg-zip.1</filename>.
168 -->
169 Now, as the <systemitem class="username">root</systemitem> user:
170 </para>
171
172<screen role="root"><userinput>make install &amp;&amp;
173
174install -v -m755 -d /usr/share/doc/gnupg-&gnupg2-version;/html &amp;&amp;
175install -v -m644 doc/gnupg_nochunks.html \
176 /usr/share/doc/gnupg-&gnupg2-version;/html/gnupg.html &amp;&amp;
177install -v -m644 ../doc/*.texi doc/gnupg.txt \
178 /usr/share/doc/gnupg-&gnupg2-version; &amp;&amp;
179install -v -m644 doc/gnupg.html/* \
180 /usr/share/doc/gnupg-&gnupg2-version;/html</userinput></screen>
181 <para>
182 If you created alternate formats of the documentation, install them
183 using the following command as the
184 <systemitem class="username">root</systemitem> user:
185 </para>
186
187<screen role="root"
188 remap="doc"><userinput>install -v -m644 doc/gnupg.{pdf,dvi,ps} \
189 /usr/share/doc/gnupg-&gnupg2-version;</userinput></screen>
190
191 </sect2>
192
193 <sect2 role="commands">
194 <title>Command Explanations</title>
195<!--
196 <para>
197 <command>sed ... tools/Makefile.in</command>:
198 This command is needed to build the gpg-zip program.
199 </para>
200-->
201 <para>
202 <command>mkdir build &amp;&amp; cd build</command>: the Gnupg2
203 developers recommend to build the package in a dedicated directory.
204 </para>
205
206 <para>
207 <parameter>--docdir=/usr/share/doc/gnupg-&gnupg2-version;</parameter>:
208 This switch changes the default docdir to <filename
209 class="directory">/usr/share/doc/gnupg-&gnupg2-version;</filename>.
210 </para>
211
212<!-- Unrecognized in 2.2.26, seems to get built automatically now.
213 <para>
214 <parameter>- -enable-symcryptrun</parameter>: This switch enables
215 building the symcryptrun program.
216 </para>
217-->
218 <para>
219 <option>--enable-all-tests</option>: This switch allows more tests to be
220 run with <command>make check</command>.
221 </para>
222
223 <para>
224 <option>--enable-g13</option>: This switch enables building the
225 g13 program.
226 </para>
227
228 </sect2>
229
230 <sect2 role="content">
231 <title>Contents</title>
232
233 <segmentedlist>
234 <segtitle>Installed Programs</segtitle>
235 <segtitle>Installed Libraries</segtitle>
236 <segtitle>Installed Directories</segtitle>
237
238 <seglistitem>
239 <seg>addgnupghome, applygnupgdefaults, dirmngr, dirmngr-client, g13
240 (optional), gpg-agent, gpg-card, gpg-connect-agent, gpg, gpgconf,
241 gpgparsemail, gpgscm, gpgsm, gpgsplit, gpgtar, gpgv, gpg-wks-client,
242 gpg-wks-server, kbxutil,
243 <!--symcryptrun,--> and watchgnupg</seg>
244 <seg>None</seg>
245 <seg>/usr/share/doc/gnupg-&gnupg2-version; and
246 /usr/share/gnupg</seg>
247 </seglistitem>
248 </segmentedlist>
249
250 <variablelist>
251 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
252 <?dbfo list-presentation="list"?>
253 <?dbhtml list-presentation="table"?>
254
255 <varlistentry id="addgnupghome">
256 <term><command>addgnupghome</command></term>
257 <listitem>
258 <para>
259 is used to create and populate a user's
260 <filename class="directory">~/.gnupg</filename> directories
261 </para>
262 <indexterm zone="gnupg2 addgnupghome">
263 <primary sortas="b-addgnupghome">addgnupghome</primary>
264 </indexterm>
265 </listitem>
266 </varlistentry>
267
268 <varlistentry id="applygnupgdefaults">
269 <term><command>applygnupgdefaults</command></term>
270 <listitem>
271 <para>
272 is a wrapper script used to run <command>gpgconf</command>
273 with the <parameter>--apply-defaults</parameter> parameter on all
274 user's GnuPG home directories
275 </para>
276 <indexterm zone="gnupg2 applygnupgdefaults">
277 <primary sortas="b-applygnupgdefaults">applygnupgdefaults</primary>
278 </indexterm>
279 </listitem>
280 </varlistentry>
281
282 <varlistentry id="dirmngr">
283 <term><command>dirmngr</command></term>
284 <listitem>
285 <para>
286 is a tool that takes care of accessing the OpenPGP keyservers
287 </para>
288 <indexterm zone="gnupg2 dirmngr">
289 <primary sortas="b-dirmngr">dirmngr</primary>
290 </indexterm>
291 </listitem>
292 </varlistentry>
293
294 <varlistentry id="dirmngr-client">
295 <term><command>dirmngr-client</command></term>
296 <listitem>
297 <para>
298 is a tool to contact a running dirmngr and test whether a
299 certificate has been revoked
300 </para>
301 <indexterm zone="gnupg2 dirmngr-client">
302 <primary sortas="b-dirmngr-client">dirmngr-client</primary>
303 </indexterm>
304 </listitem>
305 </varlistentry>
306
307 <varlistentry id="g13">
308 <term><command>g13</command></term>
309 <listitem>
310 <para>
311 is a tool to create, mount or unmount an encrypted file system
312 container (optional)
313 </para>
314 <indexterm zone="gnupg2 g13">
315 <primary sortas="b-g13">g13</primary>
316 </indexterm>
317 </listitem>
318 </varlistentry>
319
320 <varlistentry id="gpg-agent">
321 <term><command>gpg-agent</command></term>
322 <listitem>
323 <para>
324 is a daemon used to manage secret (private) keys independently
325 from any protocol. It is used as a backend for
326 <command>gpg</command> and <command>gpgsm</command> as well as
327 for a couple of other utilities
328 </para>
329 <indexterm zone="gnupg2 gpg-agent">
330 <primary sortas="b-gpg-agent">gpg-agent</primary>
331 </indexterm>
332 </listitem>
333 </varlistentry>
334
335 <varlistentry id="gpg-card">
336 <term><command>gpg-card</command></term>
337 <listitem>
338 <para>
339 is a tool to manage smart cards and tokens
340 </para>
341 <indexterm zone="gnupg2 gpg-card">
342 <primary sortas="b-gpg-card">gpg-card</primary>
343 </indexterm>
344 </listitem>
345 </varlistentry>
346
347 <varlistentry id="gpg-connect-agent">
348 <term><command>gpg-connect-agent</command></term>
349 <listitem>
350 <para>
351 is a utility used to communicate with a running
352 <command>gpg-agent</command>
353 </para>
354 <indexterm zone="gnupg2 gpg-connect-agent">
355 <primary sortas="b-gpg-connect-agent">gpg-connect-agent</primary>
356 </indexterm>
357 </listitem>
358 </varlistentry>
359
360 <varlistentry id="gpg">
361 <term><command>gpg</command></term>
362 <listitem>
363 <para>
364 is the OpenPGP part of the GNU Privacy Guard (GnuPG). It is a
365 tool used to provide digital encryption and signing services using
366 the OpenPGP standard
367 </para>
368 <indexterm zone="gnupg2 gpg">
369 <primary sortas="b-gpg">gpg</primary>
370 </indexterm>
371 </listitem>
372 </varlistentry>
373
374 <varlistentry id="gpgconf">
375 <term><command>gpgconf</command></term>
376 <listitem>
377 <para>
378 is a utility used to automatically and reasonably safely
379 query and modify configuration files in the
380 <filename class="directory">~/.gnupg</filename> home directory. It
381 is designed not to be invoked manually by the user, but
382 automatically by graphical user interfaces
383 </para>
384 <indexterm zone="gnupg2 gpgconf">
385 <primary sortas="b-gpgconf">gpgconf</primary>
386 </indexterm>
387 </listitem>
388 </varlistentry>
389
390 <varlistentry id="gpgparsemail">
391 <term><command>gpgparsemail</command></term>
392 <listitem>
393 <para>
394 is a utility currently only useful for debugging. Run it with
395 <parameter>--help</parameter> for usage information
396 </para>
397 <indexterm zone="gnupg2 gpgparsemail">
398 <primary sortas="b-gpgparsemail">gpgparsemail</primary>
399 </indexterm>
400 </listitem>
401 </varlistentry>
402
403 <varlistentry id="gpgscm">
404 <term><command>gpgscm</command></term>
405 <listitem>
406 <para>
407 executes the given scheme program or spawns an interactive shell
408 </para>
409 <indexterm zone="gnupg2 gpgscm">
410 <primary sortas="b-gpgscm">gpgscm</primary>
411 </indexterm>
412 </listitem>
413 </varlistentry>
414
415 <varlistentry id="gpgsm">
416 <term><command>gpgsm</command></term>
417 <listitem>
418 <para>
419 is a tool similar to <command>gpg</command> used to provide
420 digital encryption and signing services on X.509 certificates and
421 the CMS protocol. It is mainly used as a backend for S/MIME mail
422 processing
423 </para>
424 <indexterm zone="gnupg2 gpgsm">
425 <primary sortas="b-gpgsm">gpgsm</primary>
426 </indexterm>
427 </listitem>
428 </varlistentry>
429
430 <varlistentry id="gpgsplit">
431 <term><command>gpgsplit</command></term>
432 <listitem>
433 <para>
434 splits an OpenPGP message into packets
435 </para>
436 <indexterm zone="gnupg2 gpgsplit">
437 <primary sortas="b-gpgsplit">gpgsplit</primary>
438 </indexterm>
439 </listitem>
440 </varlistentry>
441
442 <varlistentry id="gpgtar">
443 <term><command>gpgtar</command></term>
444 <listitem>
445 <para>
446 is a tool to encrypt or sign files into an archive
447 </para>
448 <indexterm zone="gnupg2 gpgtar">
449 <primary sortas="b-gpgtar">gpgtar</primary>
450 </indexterm>
451 </listitem>
452 </varlistentry>
453
454 <varlistentry id="gpgv">
455 <term><command>gpgv</command></term>
456 <listitem>
457 <para>
458 is a verify only version of <command>gpg</command>
459 </para>
460 <indexterm zone="gnupg2 gpgv">
461 <primary sortas="b-gpgv">gpgv</primary>
462 </indexterm>
463 </listitem>
464 </varlistentry>
465
466 <varlistentry id="gpg-wks-client">
467 <term><command>gpg-wks-client</command></term>
468 <listitem>
469 <para>
470 is a client for the
471 <application>Web Key Service</application> protocol
472 </para>
473 <indexterm zone="gnupg2 gpg-wks-client">
474 <primary sortas="b-gpg-wks-client">gpg-wks-client</primary>
475 </indexterm>
476 </listitem>
477 </varlistentry>
478
479 <varlistentry id="gpg-wks-server">
480 <term><command>gpg-wks-server</command></term>
481 <listitem>
482 <para>
483 provides a server for the
484 <application>Web Key Service</application> protocol
485 </para>
486 <indexterm zone="gnupg2 gpg-wks-server">
487 <primary sortas="b-gpg-wks-server">gpg-wks-server</primary>
488 </indexterm>
489 </listitem>
490 </varlistentry>
491<!--
492 <varlistentry id="gpg-zip">
493 <term><command>gpg-zip</command></term>
494 <listitem>
495 <para>
496 encrypts or signs files into an archive
497 </para>
498 <indexterm zone="gnupg2 gpg-zip">
499 <primary sortas="b-gpg-zip">gpg-zip</primary>
500 </indexterm>
501 </listitem>
502 </varlistentry>
503-->
504 <varlistentry id="kbxutil">
505 <term><command>kbxutil</command></term>
506 <listitem>
507 <para>
508 is used to list, export and import Keybox data
509 </para>
510 <indexterm zone="gnupg2 kbxutil">
511 <primary sortas="b-kbxutil">kbxutil</primary>
512 </indexterm>
513 </listitem>
514 </varlistentry>
515
516 <!--
517 <varlistentry id="symcryptrun">
518 <term><command>symcryptrun</command></term>
519 <listitem>
520 <para>
521 is a simple symmetric encryption tool.
522 </para>
523 <indexterm zone="gnupg2 symcryptrun">
524 <primary sortas="b-symcryptrun">symcryptrun</primary>
525 </indexterm>
526 </listitem>
527 </varlistentry>
528-->
529 <varlistentry id="watchgnupg">
530 <term><command>watchgnupg</command></term>
531 <listitem>
532 <para>
533 is used to listen to a Unix Domain socket created by any of
534 the GnuPG tools
535 </para>
536 <indexterm zone="gnupg2 watchgnupg">
537 <primary sortas="b-watchgnupg">watchgnupg</primary>
538 </indexterm>
539 </listitem>
540 </varlistentry>
541
542 </variablelist>
543
544 </sect2>
545
546</sect1>
Note: See TracBrowser for help on using the repository browser.