Subject: Re: bug#25328: gpg: "Operation cancelled" with pinentry 1.0.0 on GNOME

From: [email-masked] (Ludovic Courtès)
Date: Fri, 20 Jan 2017 13:39:15 +0100

Hi Chris,

Chris Marusich <[email-masked]> skribis:

> Previously, I wrote:
>
>> In GNOME, this issue DOES occur regardless of which "pinentry" program
>> I specify in my ~/.gnupg/gpg-agent.conf file (the same issue occurs
>> with pinentry, pinentry-curses, pinentry-gtk-2, and pinentry-tty).
>
> I don't think this is actually true.  I believe I made an error when
> testing the different pinentry programs.  I believe I forgot to restart
> the gpg-agent, which would explain why simply changing the contents of
> the gpg-agent.conf file did not seem to fix the issue.
>
> I did another test just now.  I tried changing the contents of the
> gpg-agent.conf file, and I made sure to kill the gpg-agent process after
> each change, so that gpg-agent would reload the file for sure.  When I
> did this, I found that only pinentry-gtk-2 exhibits this issue (note
> that pinentry is a symlink to pinentry-gtk-2).  In particular,
> pinentry-curses, pinentry-tty, and pinentry-gnome3 all worked for me.
>
> Is anyone able to reproduce the issue using pinentry-gtk-2?  The
> following steps should reproduce the issue:
>
> * Log into a GNOME session on (a recently updated) GuixSD.
>
> * In $HOME/.gnupg/gpg-agent.conf, set pinentry-program to
>   pinentry-gtk-2, for example:
>
>     pinentry-program /home/marusich/.guix-profile/bin/pinentry-gtk-2
>
> * If the gpg-agent process is running, kill it to make sure it loads the
>   new gpg-agent.conf.
>
> * Try to sign a message, e.g.:
>
>     echo hello > /tmp/message
>     gpg --sign /tmp/message
>
> You should get the error very frequently.

Could you report these steps upstream?  That does not seem to be
Guix-specific, though I suppose other distros probably install
pinentry-gnome3 automatically when you install GNOME, such that the
problem doesn’t show up.

>> ISTR that GNOME has a hack to force its own Pinentry tool.  Could it be
>> what’s at fault?
>
> Where can I find more info about this hack?  I did some Internet
> searches, but I couldn't find anything specific.

The “hack” I was referring to is probably just pinentry-gnome3.

> This bug is no longer blocking me, since I can use pinentry-gnome3, but
> I'm still concerned about the fact that pinentry-gtk-2 fails very
> frequently, even though it didn't on the previous version.

It seems like bad interaction between pinentry-gtk2 and GNOME.

On this topic, I found
<https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=791379>.  Strangely,
that bug discusses the opposite problem.  :-)

Ludo’.