web-dev-qa-db-ja.com

16.04アップグレード以降、gpg-agentが機能しない

.bashrcファイルでこのようなgpg-agentを起動していました

[ -f ~/.gpg-agent-info ] && source ~/.gpg-agent-info
if [ -S "${GPG_AGENT_INFO%%:*}" ]; then
  export GPG_AGENT_INFO
else
  eval $( gpg-agent --daemon --write-env-file ~/.gpg-agent-info )
fi

GPG_TTY=$(tty)
export GPG_TTY

ログイン時に16.04にアップグレードしたため、次のメッセージが表示されます。

gpg-agent[11727]: WARNING: "--write-env-file" is an obsolete option - it has no effect
gpg-agent[11728]: gpg-agent (GnuPG) 2.1.11 started
S.gpg-agent is written in .gnupg/

したがって、write-env-fileはサポートされなくなりました。 Pinentryダイアログボックスにgpgパスワードを入力できなくなり、gpgにこれを再利用させることができなくなりました。これはUbuntu 14.04でできました。

16.04でこれを設定するにはどうすればよいですか?

2
abhorrent

問題は、gpg-agent 2.1.11がGPG_AGENT_INFO環境変数を設定しないということです。ソケットファイルを指すようにGPG_AGENT_INFOをエクスポートする場合、つまり、pidと所有者pidでGPG_AGENT_INFO =/home //。gnupg/S.gpg-agent:12065:1をエクスポートすると、パスフレーズのpinentryボックスが表示されます。

3
abhorrent

16.04.1 LTSでは、gpg.confにあるオプションファイル~/.gnupgがありませんでした。オプションuse-agent(他の古いUbuntu 14.04-LTSと同じように)を使用して作成し、機能しました。

0
Alberto Pires