Subject: Re: bug#66305: Error with recursive git checkout

From: Simon Tournier <[email-masked]>
Date: Wed, 04 Oct 2023 20:16:06 +0200

Hi Ludo,

On Wed, 04 Oct 2023 at 18:25, Ludovic Courtès <[email-masked]> wrote:

> diff --git a/guix/scripts/perform-download.scm b/guix/scripts/perform-download.scm
> index 045dd84ad6..c869f19502 100644
> --- a/guix/scripts/perform-download.scm
> +++ b/guix/scripts/perform-download.scm
> @@ -108,6 +108,10 @@ (define* (perform-git-download drv output
>             (drv-output (assoc-ref (derivation-outputs drv) "out"))
>             (algo       (derivation-output-hash-algo drv-output))
>             (hash       (derivation-output-hash drv-output)))
> +      ;; Commands such as 'git submodule' expect Coreutils and sed (among
> +      ;; others) to be in $PATH.
> +      (setenv "PATH" "/run/current-system/profile/bin:/bin:/usr/bin")
> +
>        (git-fetch-with-fallback url commit output
>                                 #:recursive? recursive?
>                                 #:git-command %git))))

LGTM.

Well, I would add a comment explicitly mentioning that’s a temporary fix
pointing this issue #66305.

And I have tested with:

--8<---------------cut here---------------start------------->8---
$ guix build  ocaml-ansiterminal -S --no-substitutes
$ guix build volk --no-substitutes --check -S
--8<---------------cut here---------------end--------------->8---

Cheers,
simon