Subject: [bug#69062] [PATCH v2] gnu: b4: Ensure git presence.

From: Hilton Chain <[email-masked]>
Date: Thu, 15 Feb 2024 21:20:28 +0800

Hi Nicolas,

On Thu, 15 Feb 2024 19:27:26 +0800,
Nicolas Graves via Guix-patches via wrote:
>
> * gnu/packages/version-control.scm (b4): Ensure git presence.
> [arguments](phases): Add phase hardcode-git-bin.

^ <#:phases>

> [inputs]: Add git-minimal.
>
> Change-Id: Ib2dca06009cdacc0e5ab4ab227cd30991474404c
> ---
>  gnu/packages/version-control.scm | 11 +++++++++--
>  1 file changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
> index 8f9fae5ce2..0b636ac02e 100644
> --- a/gnu/packages/version-control.scm
> +++ b/gnu/packages/version-control.scm
> @@ -2925,9 +2925,16 @@ (define-public b4
>                 ;; XXX: dnspython attempts to read /etc/resolv.conf when loading
>                 ;; resolver.py, which breaks the sanity check in dependent
>                 ;; packages.  This should rather be fixed in dnspython.
> -               (delete 'sanity-check))))
> +               (delete 'sanity-check)
> +               (add-after 'unpack 'harcode-git-bin

^ hardcode

> +                 (lambda _  ; This ensures git is present when called.
> +                   (substitute* (find-files "b4" "\\.py$")
> +                     (("\\['git'")
> +                      (string-append
> +                       "['" #$(this-package-input "git-minimal")
> +                       "/bin/git'"))))))))

search-input-file can be used instead.

>      (inputs
> -     (list python-dkimpy python-dnspython python-requests))
> +     (list python-dkimpy python-dnspython python-requests git-minimal))

Please list inputs in alphabetical order, git-minimal should be the first in
this case.

>      (propagated-inputs
>       (list patatt))
>      (home-page "https://git.kernel.org/pub/scm/utils/b4/b4.git")
> --
> 2.41.0

Thanks