The auto-launched gpg-agent doesn't work with pinentry-gnome3. We see this in the gpg-agent logs:
2015-06-09 09:26:53 gpg-agent[11676] failed to unprotect the secret key: Operation cancelled 2015-06-09 09:26:53 gpg-agent[11676] failed to read the secret key 2015-06-09 09:26:53 gpg-agent[11676] command 'PKDECRYPT' failed: Operation cancelled <Pinentry> It also seems that the stderr output of pinentry programs are discarded. I couldn't find the output anywhere for diagnosis. I had to do this to see what was going wrong in pinentry main(): dup2 (open ("/tmp/pinentry.log", O_WRONLY | O_CREAT | O_APPEND), 2); Once I did that, I could see: ** (pinentry-gnome3:11678): WARNING **: couldn't create prompt for gnupg passphrase: Error spawning command line 'dbus-launch --autolaunch=1c5785a20dda4b3abffa4e903a66f54d --binary-syntax --close-stderr': Child process exited with code 1 This is because (at least) the following environment variable is not available: DBUS_SESSION_BUS_ADDRESS I think this needs be added to the set of environment variables allowed through to the gpg-agent and pinentry program? Yuuma, since you're working to help finish up this work, here's probably another task you could work on patches for. I would propose two changes: 1. Pass DBUS_SESSION_BUS_ADDRESS to gpg-agent and pinentry 2. Route pinentry stderr output to the gpg-agent logging routines. The latter is obviously less critical, but it does help us track down issues going forward once people start actually using this. Cheers, Stef _______________________________________________ gnome-keyring-list mailing list gnome-keyring-list@gnome.org https://mail.gnome.org/mailman/listinfo/gnome-keyring-list