Next: , Previous: GPG Options, Up: Invoking GPG


3.3 Configuration files

There are a few configuration files to control certain aspects of gpg2's operation. Unless noted, they are expected in the current home directory (see option –homedir).

gpg.conf
This is the standard configuration file read by gpg2 on startup. It may contain any valid long option; the leading two dashes may not be entered and the option may not be abbreviated. This default name may be changed on the command line (see option –options).

Note that on larger installations, it is useful to put predefined files into the directory /etc/skel/.gnupg/ so that newly created users start up with a working configuration. For existing users the a small helper script is provided to create these files (see addgnupghome).

For internal purposes gpg2 creates and maintains a few other files; They all live in in the current home directory (see option –homedir). Only the gpg2 may modify these files.

~/.gnupg/secring.gpg
The secret keyring.
~/.gnupg/secring.gpg.lock
and the lock file
~/.gnupg/pubring.gpg
The public keyring
~/.gnupg/pubring.gpg.lock
and the lock file
~/.gnupg/trustdb.gpg
The trust database
~/.gnupg/trustdb.gpg.lock
and the lock file
~/.gnupg/random_seed
used to preserve the internal random pool
/usr[/local]/share/gnupg/options.skel
Skeleton options file
/usr[/local]/lib/gnupg/
Default location for extensions

Operation is further controlled by a few environment variables:

HOME
Used to locate the default home directory.
GNUPGHOME
If set directory used instead of "~/.gnupg".
GPG_AGENT_INFO
Used to locate the gpg-agent. The value consists of 3 colon delimited fields: The first is the path to the Unix Domain Socket, the second the PID of the gpg-agent and the protocol version which should be set to 1. When starting the gpg-agent as described in its documentation, this variable is set to the correct value. The option --gpg-agent-info can be used to override it.
PINENTRY_USER_DATA
This value is passed via gpg-agent to pinentry. It is useful to convey extra information to a custom pinentry
COLUMNS
LINES
Used to size some displays to the full size of the screen.
LANGUAGE
Apart from its use by GNU, it is used in the W32 version to override the language selection done through the Registry. If used and set to a a valid and available language name (langid), the file with the translation is loaded from gpgdir/gnupg.nls/langid.mo. Here gpgdir is the directory out of which the gpg binary has been laoded. If it can't be loaded the Registry is tried and as last resort the native Windows locale system is used.