2 vim:set ts=4 sw=4 syntax=asciidoc noet spell spelllang=en_us:
10 pacman-key - manage pacman's list of trusted keys
15 'pacman-key' [options] operation [targets]
20 'pacman-key' is a wrapper script for GnuPG used to manage pacman's keyring, which
21 is the collection of PGP keys used to check signed packages and databases. It
22 provides the ability to import and export keys, fetch keys from keyservers and
23 update the key trust database.
25 More complex keyring management can be achieved using GnuPG directly combined with
26 the '\--homedir' option pointing at the pacman keyring (located in
27 +{sysconfdir}/pacman.d/gnupg+ by default).
29 Invoking pacman-key consists of supplying an operation with any potential
30 options and targets to operate on. Depending on the operation, a 'target' may
31 be a valid key identifier, filename, or directory.
36 Add the key(s) contained in the specified file or files to pacman's
37 keyring. If a key already exists, update it.
40 Remove the key(s) identified by the specified keyid(s) from pacman's
44 Export key(s) identified by the specified keyid(s) to 'stdout'. If no keyid
45 is specified, all keys will be exported.
48 Present a menu for key management task on the specified keyid(s). Useful
49 for adjusting a keys trust level.
52 List a fingerprint for each specified keyid, or for all known keys if no
56 Output syntax and command line options.
59 Imports keys from `pubring.gpg` into the public keyring from the specified
63 Imports ownertrust values from `trustdb.gpg` into the shared trust database
64 from the specified directories.
67 Ensure the keyring is properly initialized and has the required access
71 Lists all or specified keys from the public keyring.
74 Same as '\--list-keys', but the signatures are listed too.
77 Locally sign the given key. This is primarily used to root the web of trust
78 in the local private key generated by '\--init'.
81 Equivalent to '\--recv-keys' in GnuPG.
84 Equivalent to '\--refresh-keys' in GnuPG.
87 Reload the default keys from the (optionally provided) keyrings in
88 +{pkgdatadir}/keyrings+. For more information, see
89 <<SC,Providing a Keyring for Import>> below.
92 Equivalent to '\--check-trustdb' in GnuPG. This operation can be specified with
96 Displays the program version.
99 Verify the file(s) specified by the signature(s).
104 Use an alternate config file instead of the +{sysconfdir}/pacman.conf+
108 Set an alternate home directory for GnuPG. If unspecified, the value is
109 read from +{sysconfdir}/pacman.conf+.
111 *\--keyserver* <keyserver>::
112 Use the specified keyserver if the operation requires one. This will take
113 precedence over any keyserver option specified in a `gpg.conf`
114 configuration file. Running '\--init' with this option will set the default
115 keyserver if one was not already configured.
118 Providing a Keyring for Import
119 ------------------------------
120 A distribution or other repository provided may want to provide a set of
121 PGP keys used in the signing of its packages and repository databases that can
122 be readily imported into the pacman keyring. This is achieved by providing a
123 PGP keyring file `foo.gpg` that contains the keys for the foo keyring in the
124 directory +{pkgdatadir}/keyrings+.
126 Optionally, the file `foo-trusted` can be provided containing a list of trusted
127 key IDs for that keyring. This is a file in a format compatible with 'gpg
128 \--export-ownertrust' output. This file will inform the user which keys a user
129 needs to verify and sign to build a local web of trust, in addition to
130 assigning provided owner trust values.
132 Also optionally, the file `foo-revoked` can be provided containing a list of
133 revoked key IDs for that keyring. Revoked is defined as "no longer valid for
134 any signing", so should be used with prudence. A key being marked as revoked
135 will be disabled in the keyring and no longer treated as valid, so this always
136 takes priority over it's trusted state in any other keyring.
141 linkman:pacman[8], linkman:pacman.conf[5]
143 include::footer.txt[]