Disable submodule fetching by default

This may turn out to be too much (but it does at least build).

Motivation: CI's git checkouts consume an unmanageably large amount of
cache (over 3 GiB per snapshot out of 10 GiB quota), and must be cached
for acceptable build speeds. Dropping submodules should help somewhat
directly, but I want to try switching most of CI over to fetchTree's
github fetcher, which won't include submodules. This change should help
maintain parity.

I'm also seeing a submodule fetch failure in CI (for stan-mode) that I
may not need to debug if the package functions without that submodule.
This commit is contained in:
Marien Zwart 2024-05-26 21:59:11 +10:00
parent 47b6f20d7d
commit 645f79a916
No known key found for this signature in database

View file

@ -240,7 +240,11 @@ let
inherit url; inherit url;
rev = pin; rev = pin;
allRefs = true; allRefs = true;
submodules = !(p.recipe.nonrecursive or false); # Skip submodules by default because they seem to be hitting
# https://github.com/NixOS/nix/issues/10773 (or a similar caching issue) and for
# parity between fetchTree's github fetcher and fetchGit (Github's exports don't
# seem to contain submodules).
submodules = !(p.recipe.nonrecursive or true);
# TODO: pull ref from derivation.src when not pulling it from p.recipe? # TODO: pull ref from derivation.src when not pulling it from p.recipe?
# Note Doom does have packages with pin + branch (or nonrecursive) set, # Note Doom does have packages with pin + branch (or nonrecursive) set,
# expecting to inherit the rest of the recipe from Straight. # expecting to inherit the rest of the recipe from Straight.