N K*_*man 5 emacs gnu-screen passphrase gnupg tmux
我试图在emacs中使用epa模式和组织模式,如本文所述.
我使用屏幕会话和ssh连接到计算机.因此,我需要将/ usr/bin/pinentry更改为指向/ usr/bin/pinentry-curses为/ usr/bin/pinentry-gtk-2.
我有
pinentry-program /usr/bin/pinentry-curses
Run Code Online (Sandbox Code Playgroud)
作为我的.gnupg/gpg.conf中的最后一行.当我尝试保存文件时,我会看到这个菜单:
Select recipients for encryption.
If no one is selected, symmetric encryption will be performed.
- `m' to mark a key on the line
- `u' to unmark a key on the line
[Cancel][OK]
Run Code Online (Sandbox Code Playgroud)
我选择'确定'但只能获得
Opening output file: Encrypt failed, Exit
Run Code Online (Sandbox Code Playgroud)
我没有提示我的密码短语,也没有给出其他输出.它不会提示输入密码.它甚至没有将我的gpg'用户'列为foo@bar.com.
但是,当.gnupg/gpg.conf文件中没有该行时,我会在"选择加密收件人"对话框中看到我的gpg"用户".但是,cpu与消息说明:
Encrypting /home/user/test.gpg...
Run Code Online (Sandbox Code Playgroud)
(我假设它正在尝试生成gtk窗口并在圆圈中运行)
我有点困惑为什么我需要将/ usr/bin/pinentry链接到/ usr/bin/pinentry-curses并在我的gpg.conf文件中添加该行.
在将/ usr/bin/pinentry链接到/ usr/bin/pinentry-gtk-2之前,如果我在本地计算机上,则会在列出我的gpg用户的情况下获得"选择收件人加密"提示.我会得到一个对话框来输入我的密码,这一切都奏效了.我明白了
Encrypting /home/user/test.gpg...
Run Code Online (Sandbox Code Playgroud)
这一切都会成功.
我在今天早上最新的Arch系统上运行GNU Emacs 24.2.1.
我很好奇我做错了什么.我已经在arch wiki上检查了关于pinentry和gpg的文章,他们没有帮助解决问题.提前致谢.
更新:26-10-2012今天早上更新包装cryptsetup似乎已经影响了行为.当我打开.gpg文件时,我现在得到一个"请输入密码短语"提示,但它似乎永远不会过去.输入密码后,提示永远不会消失.
小智 0
如果此提示来自 pinentry-curses,您可以尝试:1. 输入密码(后面可能没有回车,请尝试),2. 按 Tab 键,3. 按两次 Enter 键。
原因是你看不到pinentry-curses所呈现的完整形式。也许可以在 emacs 之外尝试 pinentry-curses (并输入命令 GETPIN)来理解上面建议的盲目导航。如果您在 emacs 内(在终端或 tmux 中)使用 Mew 邮件客户端(和 gpg),也存在类似的问题。
有人知道如何将 pinentry-curses 对话框强制写入适合 emacs 的一行吗?