Please describe the problem.

I seem to be incapable of creating an encrypted git-annex repository with the instructions provided at fully encrypted git repositories with gcrypt. The setup step fails with gcrypt: Repository not found: (path-to-repo).

What steps will reproduce the problem?

I think I naively followed the tips page, but I might be wrong. Here's the minimal reproducer I could find, but originally the problem occured with an SSH remote which I thought was the culprit.

git init a
git init --bare b
cd a
git annex init
echo > foo
git annex add foo
git commit -m'test repo' 
git annex initremote encrypted type=gcrypt gitrepo=~/tmp/b keyid=8DC901CE64146C048AD50FBB792152527B75921E

What version of git-annex are you using? On what operating system?

This is Debian stretch with backports, so git-annex is actually from backports (6.20180509-1~bpo9+1):

git-annex version: 6.20180509
build flags: Assistant Webapp Pairing S3(multipartupload)(storageclasses) WebDAV Inotify DBus DesktopNotify ConcurrentOutput TorrentParser MagicMime Feeds Testsuite
dependency versions: aws-0.14.1 bloomfilter-2.0.1.0 cryptonite-0.20 DAV-1.3.1 feed-0.3.11.1 ghc-8.0.1 http-client-0.4.31.1 persistent-sqlite-2.6 torrent-10000.0.0 uuid-1.3.12 yesod-1.4.3
key/value backends: SHA256E SHA256 SHA512E SHA512 SHA224E SHA224 SHA384E SHA384 SHA3_256E SHA3_256 SHA3_512E SHA3_512 SHA3_224E SHA3_224 SHA3_384E SHA3_384 SKEIN256E SKEIN256 SKEIN512E SKEIN512 SHA1E SHA1 MD5E MD5 WORM URL
remote types: git gcrypt p2p S3 bup directory rsync web bittorrent webdav adb tahoe glacier ddar hook external
local repository version: unknown
supported repository versions: 3 5 6
upgrade supported from repository versions: 0 1 2 3 4 5
operating system: linux x86_64

git-remote-gcrypt is the vanilla version from stretch (1.0.1-1) but the bug can be reproduced with the 1.1 version from sid.

Please provide any additional information below.

[18]anarcat@curie:tmp$ git init a
Dépôt Git vide initialisé dans /home/anarcat/dist/tmp/a/.git/
[19]anarcat@curie:tmp$ git init --bare b
Dépôt Git vide initialisé dans /home/anarcat/dist/tmp/b/
[20]anarcat@curie:tmp$ cd a
/home/anarcat/dist/tmp/a
[21]anarcat@curie:a$ git annex init
init  ok
(recording state in git...)
[22]anarcat@curie:a$ echo > foo
[23]anarcat@curie:a$ git annex add foo
add foo ok
(recording state in git...)
[24]anarcat@curie:a$ git commit -m'test repo' 
[master (commit racine) f759ebe] test repo
 1 file changed, 1 insertion(+)
 create mode 120000 foo
[25]anarcat@curie:a$ git annex initremote encrypted type=gcrypt gitrepo=~/tmp/b keyid=8DC901CE64146C048AD50FBB792152527B75921E
initremote encrypted (encryption setup) (to gpg keys: 792152527B75921E) gcrypt: Repository not found: /home/anarcat/tmp/b
gcrypt: Repository not found: /home/anarcat/tmp/b
fatal: helper gcrypt does not support --signed=if-asked
git-annex: unable to determine gcrypt-id of remote

Note that this failure leaves the repository with an half-configured remote. Trying to rerun the setup gives this error:

git-annex: There is already a remote named "encrypted"

Removing the remote seems to be sufficient to restore a working state and try again:

git remote rm encrypted

I also note that the encryption step part takes a looong time when we try to reproduce the issue multiple time... I will report this in a separate issue.

Have you had any luck using git-annex before? (Sometimes we get tired of reading bug reports all day and a lil' positive end note does wonders)

Of course! As you very likely know, I use git-annex daily and I'm a really happy user. :) This is, however, the first time I give gcrypt a shot.

Thanks for your hard work! --anarcat

Update: turns out this is a bug in git-remote-gcrypt and this probably doesn't need to be tracked in git-annex. the workaround is to comment out the push.sign=ifAsked entry in the git config, or to make git-remote-gcrypt ignore unknown options. so done. --anarcat