[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#65866] [PATCH 0/8] Add built-in builder for Git checkouts
From: |
Ludovic Courtès |
Subject: |
[bug#65866] [PATCH 0/8] Add built-in builder for Git checkouts |
Date: |
Fri, 22 Sep 2023 23:53:31 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) |
Hi,
Maxim Cournoyer <maxim.cournoyer@gmail.com> skribis:
>> +(define* (git-fetch-with-fallback url commit directory
>> + #:key (git-command "git") recursive?)
>> + "Like 'git-fetch', fetch COMMIT from URL into DIRECTORY, but fall back to
>> +alternative methods when fetching from URL fails: attempt to download a nar,
>> +and if that also fails, download from the Software Heritage archive."
>> + (or (git-fetch url commit directory
>> + #:recursive? recursive?
>> + #:git-command git-command)
>> + (download-nar directory)
>> +
>> + ;; As a last resort, attempt to download from Software Heritage.
>> + ;; Disable X.509 certificate verification to avoid depending
>> + ;; on nss-certs--we're authenticating the checkout anyway.
>> + ;; XXX: Currently recursive checkouts are not supported.
>> + (and (not recursive?)
>
> I know this is code moved from elsewhere, but it seems it'd be useful to
> fail hard here with a proper error instead of returning #f silently? Or
> add support for recursive clones; was is missing to enable that?
Note that this is for the SWH fallback. The SWH Vault doesn’t quite
support submodules; apparently there’s some work in that direction¹ but
it’s not there yet (though perhaps we could still implement it using
additional API endpoints, I’m not sure).
Ludo’.
¹ https://gitlab.softwareheritage.org/swh/devel/swh-vault/-/issues/4349
- [bug#65866] [PATCH 0/8] Add built-in builder for Git checkouts, (continued)
[bug#65866] [PATCH 2/8] git-download: Honor the ‘GUIX_DOWNLOAD_FALLBACK_TEST’ environment variable., Ludovic Courtès, 2023/09/11
[bug#65866] [PATCH 3/8] perform-download: Remove unused one-argument clause., Ludovic Courtès, 2023/09/11
[bug#65866] [PATCH 1/8] git-download: Move fallback code to (guix build git)., Ludovic Courtès, 2023/09/11
[bug#65866] [PATCH 7/8] git-download: Use “builtin:git-download” when available., Ludovic Courtès, 2023/09/11
[bug#65866] [PATCH 6/8] perform-git-download: Use the ‘git’ command captured at configure time., Ludovic Courtès, 2023/09/11
[bug#65866] [PATCH 8/8] tests: Assume ‘git’ is always available., Ludovic Courtès, 2023/09/11
[bug#65866] [PATCH 5/8] build: Add dependency on Git., Ludovic Courtès, 2023/09/11