File: day_25__finishing_up_gcrypt.mdwn

package info (click to toggle)
git-annex 10.20250416-2
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 73,572 kB
  • sloc: haskell: 90,656; javascript: 9,103; sh: 1,469; makefile: 211; perl: 137; ansic: 44
file content (25 lines) | stat: -rw-r--r-- 1,089 bytes parent folder | download | duplicates (11)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Long day, but I did finally finish up with gcrypt support. More or less.

Got both creating and enabling existing gcrypt repositories on ssh servers
working in the webapp. (But I ran out of time to make it detect when the
user is manually entering a gcrypt repo that already exists. Should be easy
so maybe tomorrow.)

Fixed several bugs in git-annex's gcrypt support that turned up in testing.
Made git-annex ensure that a gcrypt repository does not have
receive.denyNonFastForwards set, because gcrypt relies on always forcing
the push of the branch it stores its manifest on. Fixed a bug in
`git-annex-shell recvkey` when it was receiving a file from an annex in
direct mode.

Also had to add a new `git annex shell gcryptsetup` command, which is
needed to make setting up a gcrypt repository work when the assistant
has set up a locked-down ssh key that can only run git-annex-shell. Painted
myself into a bit of a corner there.

And tested, tested, tested. So many possibilities and edge cases in this
part of the code..

----

Today's work was sponsored by Hendrik Müller Hofstede.