Come fare in modo che gpg trovi gpg-agent


23

Su Fedora 22, gpg non trova l'agente gpg:

% gpg-agent --daemon                                           

% gpg -vvv --use-agent --no-tty --decrypt file.gpg 
gpg: using character set `utf-8'
:pubkey enc packet: version 3, algo 1, keyid 3060B8F7271AFBAF
  data: [4094 bits]
gpg: public key is 271AFBAF
gpg: using subkey 271AFBAF instead of primary key 50EA64D5
gpg: using subkey 271AFBAF instead of primary key 50EA64D5
gpg: gpg-agent is not available in this session
gpg: Sorry, no terminal at all requested - can't get input

Risposte:


36

Guardando le versioni rivela il problema:

% gpg-agent --version
gpg-agent (GnuPG) 2.1.7

% gpg --version                                                               
gpg (GnuPG) 1.4.19

I componenti provengono da diversi pacchetti ( gnupg2-2.1.7-1.fc22.x86_64e gnupg-1.4.19-2.fc22.x86_64nel mio caso). La soluzione è utilizzare il gpg2 comando anziché gpg.


1
Grazie. ho trascorso 30 minuti su Internet cercando di capire queste cose ... risulta che la maggior parte della documentazione e delle istruzioni non tiene conto della rottura tra le versioni degli strumenti. dovevo digitare la mia passphrase per ogni esecuzione di gpg su 20 file che volevo firmare, ora posso farlo una volta sola. grazie ancora.
don luminoso

questo è ancora rilevante con Fedora 27; l'utilizzo gpg2abilita anche l'integrazione di gnome
Alex Gyoshev,

8

Nel caso in cui sia utile per alcuni, gpg1.4 può funzionare bene con gpg-agent2.1.

Quando lo ho esaminato, ho trovato questo post: https://lists.gnupg.org/pipermail/gnupg-devel/2014-October/029024.html

L'agente è compatibile, ma non esporta più le variabili di ambiente che si aspetta dalla versione precedente di gpg. Se li imposti manualmente funzionerà:

export GPG_AGENT_INFO=${HOME}/.gnupg/S.gpg-agent:0:1


Fedora utilizza diversi percorsi socket predefiniti. Ho dovuto usare GPG_AGENT_INFO=/run/user/$(id -u)/gnupg/S.gpg-agent:0:1invece.
Pawel Veselov,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.