Subject: [bug#73930] [PATCH] gnu: git-repo: Update to 2.29.7

From: Doğan Çeçen <[email-masked]>
Date: Wed, 23 Oct 2024 20:37:24 +0000

Hi Maxim,

Thanks for looking into this.

> This looks too simple to be true, given the complex patching going on in
> phases (in retrospect this should have been done via a real patch to
> avoid silent breakage like is probably happening here).

Sorry, I am not following. What do you mean by the complex patching going on in phases and the silent breakage?

> The idea of the patch was to ensure 'git-repo' wouldn't update itself
> when run, as that defeats the immutable principle of Guix packages.

>From what I can tell, it doesn't do that. Or, at least, it reports repeatedly the same version when I run `repo --version`, and it says the version I upgraded to, 2.29.7. And, I was able to use the tool successfully after the upgrade.

Note that this is not the latest version of repo tool. The latest version is 2.48, but that failed during the check phase, and 2.30 and upwards fails with the same reason IIRC. I couldn't get to the latest version without upgrading some core python packages. Even though repo now needs python-black, and it didn't work with the version we currently have in Guix. I tried upgrading that and some more but went into the rabbit hole of upgrading some core packages such as python-build and python-packaging-bootstrap etc, then I stopped.

> Could you test this property is preserved?  The addition of gnupg makes
> me suspect it isn't.

No problem, I tried the following and reported the same result, but I am not exactly sure if this is right way to test what you meant:

```
$ ./pre-inst-env guix build --check --no-offload --source --rounds=2 git-repo
...
warning: rewriting hashes in `/gnu/store/agzslk3pvakz9vf66pr49dc7v2xjkf1j-git-repo-2.29.7-checkout'; cross fingers
successfully built /gnu/store/8vwzck1s9d6siph4w3x62w0xdmk95yl8-git-repo-2.29.7-checkout.drv
successfully built /gnu/store/8vwzck1s9d6siph4w3x62w0xdmk95yl8-git-repo-2.29.7-checkout.drv
/gnu/store/agzslk3pvakz9vf66pr49dc7v2xjkf1j-git-repo-2.29.7-checkout
```

Many thanks,
Dogan