$ cat ~/.gnupg/gpg-agent.conf
pinentry-program /usr/bin/pinentry-kwallet no-grab default-cache-ttl 1800
# sudo edit /usr/bin/pinentry-kwallet, set iodebug=1
# test $ echo "test" | gpg -ase -r 0x0A1B2C3D | gpg
# 3 times the same bug report window opens # on the 4th time pinentry-qt is started as fallback
$ cat ~/pinentry-kwallet.debug
9729 === new Mon Aug 25 14:04:31 CEST 2014 9729 LOG argv[1]='--display' 9729 LOG argv[2]=':0' 9729 LOG starting coproc 0: PINENTRY_KWALLET=set 'pinentry' args 9729 <s OK Your orders please 9729 LOG have_sub=1 9729 >p OK ready to listen to your demands 9729 <p OPTION no-grab 9729 >s OPTION no-grab 9729 <s OK 9729 >p OK 9729 <p OPTION ttyname=/dev/tty 9729 >s OPTION ttyname=/dev/tty 9729 <s OK 9729 >p OK 9729 <p OPTION ttytype=xterm 9729 >s OPTION ttytype=xterm 9729 <s OK 9729 >p OK 9729 <p OPTION lc-ctype=en_US.UTF-8 9729 >s OPTION lc-ctype=en_US.UTF-8 9729 <s OK 9729 >p OK 9729 <p OPTION lc-messages=en_US.UTF-8 9729 >s OPTION lc-messages=en_US.UTF-8 9729 <s OK 9729 >p OK 9729 <p OPTION default-ok=_OK 9729 >s OPTION default-ok=_OK 9729 <s OK 9729 >p OK 9729 <p OPTION default-cancel=_Cancel 9729 >s OPTION default-cancel=_Cancel 9729 <s OK 9729 >p OK 9729 <p OPTION default-prompt=PIN: 9729 >s OPTION default-prompt=PIN: 9729 <s OK 9729 >p OK 9729 <p OPTION touch-file=/tmp/gpg-7V8por/S.gpg-agent 9729 >s OPTION touch-file=/tmp/gpg-7V8por/S.gpg-agent 9729 <s OK 9729 >p OK 9729 <p GETINFO pid 9729 >p D 9729 9729 >p OK 9729 <p SETDESC Sie benötigen eine Passphrase, um den geheimen Schlüssel zu entsperren.%0ABenutzer: "Hans Wurst (Bemerkung) <email address hidden>"%0A4096-bit RSA Schlüssel, ID 0A1B2C3DC, erzeugt 2013-01-01%0A 9729 >s SETDESC Sie benötigen eine Passphrase, um den geheimen Schlüssel zu entsperren.%0ABenutzer: "Hans Wurst (Bemerkung) <email address hidden>"%0A4096-bit RSA Schlüssel, ID 0A1B2C3DC, erzeugt 2013-01-01%0A 9729 <s OK 9729 >p OK 9729 <p SETPROMPT Passphrase 9729 >s SETPROMPT Passphrase 9729 <s OK 9729 >p OK 9729 <p GETPIN 9729 LOG read errcnt failed 9729 LOG read pass 255: '' 9729 >s GETPIN 9729 <s ERR 83886179 canceled 9729 >p ERR 83886179 canceled 9729 <p BYE 9729 >p OK 9729 >s BYE 9729 <s OK closing connection
$ cat ~/.gnupg/ gpg-agent. conf
pinentry-program /usr/bin/ pinentry- kwallet
no-grab
default-cache-ttl 1800
# sudo edit /usr/bin/ pinentry- kwallet, set iodebug=1
# test
$ echo "test" | gpg -ase -r 0x0A1B2C3D | gpg
# 3 times the same bug report window opens
# on the 4th time pinentry-qt is started as fallback
$ cat ~/pinentry- kwallet. debug
9729 === new Mon Aug 25 14:04:31 CEST 2014 KWALLET= set 'pinentry' args en_US.UTF- 8 en_US.UTF- 8 en_US.UTF- 8 en_US.UTF- 8 cancel= _Cancel cancel= _Cancel /tmp/gpg- 7V8por/ S.gpg-agent /tmp/gpg- 7V8por/ S.gpg-agent %0ABenutzer: "Hans Wurst (Bemerkung) <email address hidden>"%0A4096-bit RSA Schlüssel, ID 0A1B2C3DC, erzeugt 2013-01-01%0A %0ABenutzer: "Hans Wurst (Bemerkung) <email address hidden>"%0A4096-bit RSA Schlüssel, ID 0A1B2C3DC, erzeugt 2013-01-01%0A
9729 LOG argv[1]='--display'
9729 LOG argv[2]=':0'
9729 LOG starting coproc 0: PINENTRY_
9729 <s OK Your orders please
9729 LOG have_sub=1
9729 >p OK ready to listen to your demands
9729 <p OPTION no-grab
9729 >s OPTION no-grab
9729 <s OK
9729 >p OK
9729 <p OPTION ttyname=/dev/tty
9729 >s OPTION ttyname=/dev/tty
9729 <s OK
9729 >p OK
9729 <p OPTION ttytype=xterm
9729 >s OPTION ttytype=xterm
9729 <s OK
9729 >p OK
9729 <p OPTION lc-ctype=
9729 >s OPTION lc-ctype=
9729 <s OK
9729 >p OK
9729 <p OPTION lc-messages=
9729 >s OPTION lc-messages=
9729 <s OK
9729 >p OK
9729 <p OPTION default-ok=_OK
9729 >s OPTION default-ok=_OK
9729 <s OK
9729 >p OK
9729 <p OPTION default-
9729 >s OPTION default-
9729 <s OK
9729 >p OK
9729 <p OPTION default-prompt=PIN:
9729 >s OPTION default-prompt=PIN:
9729 <s OK
9729 >p OK
9729 <p OPTION touch-file=
9729 >s OPTION touch-file=
9729 <s OK
9729 >p OK
9729 <p GETINFO pid
9729 >p D 9729
9729 >p OK
9729 <p SETDESC Sie benötigen eine Passphrase, um den geheimen Schlüssel zu entsperren.
9729 >s SETDESC Sie benötigen eine Passphrase, um den geheimen Schlüssel zu entsperren.
9729 <s OK
9729 >p OK
9729 <p SETPROMPT Passphrase
9729 >s SETPROMPT Passphrase
9729 <s OK
9729 >p OK
9729 <p GETPIN
9729 LOG read errcnt failed
9729 LOG read pass 255: ''
9729 >s GETPIN
9729 <s ERR 83886179 canceled
9729 >p ERR 83886179 canceled
9729 <p BYE
9729 >p OK
9729 >s BYE
9729 <s OK closing connection