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

From: Maxim Cournoyer <[email-masked]>
Date: Wed, 23 Oct 2024 21:48:17 +0900

Hi,

Doğan Çeçen <[email-masked]> writes:

> Fixes ModuleNotFoundError: No module named 'formatter'.
> This module was deprecated, and removed in Python 3.10.
>
> * gnu/packages/android.scm (git-repo): Update to 2.29.7
>
> Change-Id: I74d48fd9a8afc76c18d866b252a139f77b7ab838
> ---
>  gnu/packages/android.scm | 11 +++++------
>  1 file changed, 5 insertions(+), 6 deletions(-)
>
> diff --git a/gnu/packages/android.scm b/gnu/packages/android.scm
> index 11e05dced9..0f41fa8695 100644
> --- a/gnu/packages/android.scm
> +++ b/gnu/packages/android.scm
> @@ -919,7 +919,7 @@ (define-public etc1tool
>  (define-public git-repo
>    (package
>      (name "git-repo")
> -    (version "2.4.1")
> +    (version "2.29.7")
>      (source
>       (origin
>         (method git-fetch)
> @@ -928,7 +928,7 @@ (define-public git-repo
>               (commit (string-append "v" version))))
>         (file-name (string-append "git-repo-" version "-checkout"))
>         (sha256
> -        (base32 "0khg1731927gvin73dcbw1657kbfq4k7agla5rpzqcnwkk5agzg3"))))
> +        (base32 "01sl9bz9rnhf9s3h7nlhkpxm0ggc5jzs30n11vlvnv2mqp8r1jvq"))))
>      (build-system python-build-system)
>      (arguments
>       `(#:phases
> @@ -1000,12 +1000,11 @@ (define-public git-repo
>                 (symlink (string-append repo-dir "/repo")
>                          (string-append bin-dir "/repo"))
>                 #t))))))
> -    (inputs
>       ;; TODO: Add git-remote-persistent-https once it is available in guix
> -     `(("git" ,git)
> -       ("ssh" ,openssh)))
> +    (inputs
> +      (list git openssh gnupg))
>      (native-inputs
> -     `(("pytest" ,python-pytest)))
> +      (list python-pytest))
>      (home-page "https://code.google.com/p/git-repo/")
>      (synopsis "Helps to manage many Git repositories")
>      (description "Repo is a tool built on top of Git.  Repo helps manage many

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).

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.

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

-- 
Thanks,
Maxim