Subject: bug#24783: 25.1 launchs gpg-agent --homedir as ~/.emacs.d/elpa/gnupg

From: Fkqqrr <[email-masked]>
Date: Thu, 24 Nov 2016 13:01:40 +0800

Daiki Ueno <[email-masked]> writes:

> Fkqqrr <[email-masked]> writes:
>
>> I am running Emacs 25.1 under Gentoo.
>>
>> Each time I run `list-packages', Emacs 25.1 launchs Gnupg-2.1 gpg-agent,
>> but the `--homedir' argument is set to `~/.emacs.d/elpa/gnupg' though I
>> have it to `~/.gnupg' in `~/.gnupg/gpg-agent.conf'. Obviously, Emacs
>> 25.1 fails to respect `gpg-agent.conf'.
>
> I would say that is an expected behavior.  package.el maintains keys
> under ~/.emacs.d/elpa/gnupg, not ~/.gnupg.  If you want to configure
> anything for gpg-agent started by package.el, you should add it to
> ~/.emacs.d/elpa/gnupg/gpg-agent.conf, not ~/.gnupg/gpg-agent.conf.
>
If that's package.el's `wanted' feature (default in
~/.emacs.d/elpa/gnupg), it does not harm to system. I couldn't
figure out why not just use system default location.

Similarly, SSL certificates (of mail servers) are stored in
.emacs.d/network-security.data insead of ~/.gnutls/known_hosts

>> However if `gpg-agent' is launched before `list-package', Emacs 25.1
>> will respect that.
>
> Really?  If it is the case, it must be a bug in GnuPG.  As far as I know
> it allows multiple gpg-agent instances for each --homedir.
GnuPG does allow multiple gpg-agent insances. You can check that
by:

1. list-packages in Emacs, then an instance created under
~/.emacs.d/elpa/gnupg;
2. C-x C-f to opens a gpg file, then another instance (system
default one) created under ~/.gnupg/

-- 
Hello, world