Subject: bug#68532: git-crypt can fail after guix gc

From: Greg Hogan <[email-masked]>
Date: Thu, 24 Apr 2025 10:16:58 -0400

On Wed, Jan 17, 2024 at 10:47 AM TakeV via Bug reports for GNU Guix
<[email-masked]> wrote:
>
> I set up a git repo which uses git-crypt a while back, however it seems
> to have broken in the time between then and now.
>
> Looking into how git-crypt seems to handle things; running the initial
> init causes the full path to the git-crypt binary to be written to the
> git config file (.git/config) as a filter.
>
> If one has created a repo using git-crypt, and some time later runs guix
> gc, then the old path to the git-crypt binary likely will be deleted,
> causing git-crypt to break, as it is unable to locate the binary.
>
> One workaround could be running git-crypt in a shell, and registering it
> as a garbage collector root so that the original git-crypt install is
> preserved, but that seems like it would not be an optimal long term fix.
> Updating the config file by hand also seems to fix the issue, though
> that route is similarly a short term fix.

I am not seeing any changes or updates to the git-crypt package since
this issue was opened, but I am also not seeing the full path to the
git-crypt binary when I "git init" and "git-crypt init" a new repo:

$ cat .git/config
[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
[filter "git-crypt"]
        smudge = \"git-crypt\" smudge
        clean = \"git-crypt\" clean
        required = true
[diff "git-crypt"]
        textconv = \"git-crypt\" diff