summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorGravatar EskildHustvedt <EskildHustvedt@web>2012-08-17 07:30:43 +0000
committerGravatar admin <admin@branchable.com>2012-08-17 07:30:43 +0000
commit67c7777009bae3512126d6293f203ba0116be08d (patch)
tree604fa1ed634610153cc12ad4db603ab04f1cc447 /doc
parent96bc6ce883b2d7052ef144dae9b2987edc55d37e (diff)
Diffstat (limited to 'doc')
-rw-r--r--doc/bugs/gpg_needs_--use-agent.mdwn48
1 files changed, 48 insertions, 0 deletions
diff --git a/doc/bugs/gpg_needs_--use-agent.mdwn b/doc/bugs/gpg_needs_--use-agent.mdwn
new file mode 100644
index 000000000..3d0427eab
--- /dev/null
+++ b/doc/bugs/gpg_needs_--use-agent.mdwn
@@ -0,0 +1,48 @@
+git-annex gpg encryption fails here when GPG_AGENT_INFO is set, it needs to be supplied --use-agent to work.
+
+Output from git-annex:
+copy file (to origin...) (gpg) gpg: can't query passphrase in batch mode
+gpg: decryption failed: secret key not available
+Command gpg ["--batch","--no-tty","--quiet","--trust-model","always","--decrypt"] failed; exit code 2
+
+git-annex: user error (Command gpg ["--batch","--no-tty","--quiet","--trust-model","always","--decrypt"] failed; exit code 2)
+failed
+
+Reproduced on command-line:
+[0 zerodogg@browncoats ~]$ echo test > testfile
+[0 zerodogg@browncoats ~]$ gpg -e testfile
+[0 zerodogg@browncoats ~]$ gpg --batch --no-tty --quiet --trust-model always --decrypt testfile.gpg
+gpg: can't query passphrase in batch mode
+gpg: decryption failed: secret key not available
+[2 zerodogg@browncoats ~]$ gpg --use-agent --batch --no-tty --quiet --trust-model always --decrypt testfile.gpg
+test
+[0 zerodogg@browncoats ~]$
+
+A patch to fix this issue:
+
+
+From 77cb02d15245e9ad6e127388adcda960000fb3b8 Mon Sep 17 00:00:00 2001
+From: Eskild Hustvedt <code@zerodogg.org>
+Date: Fri, 17 Aug 2012 09:21:44 +0200
+Subject: [PATCH] Explicitly enable agent to ensure decryption works
+
+Otherwise gpg will fail when GPG_AGENT_INFO is set in certain cases.
+---
+ Utility/Gpg.hs | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Utility/Gpg.hs b/Utility/Gpg.hs
+index e13afe5..c28b209 100644
+--- a/Utility/Gpg.hs
++++ b/Utility/Gpg.hs
+@@ -29,7 +29,7 @@ stdParams params = do
+ b <- getEnv "GPG_BATCH"
+ let batch = if isNothing e && isNothing b
+ then []
+- else ["--batch", "--no-tty"]
++ else ["--batch", "--no-tty", "--use-agent"]
+ return $ batch ++ defaults ++ toCommand params
+ where
+ -- be quiet, even about checking the trustdb
+--
+1.7.10.4