This is the file that gets the list of tarballs to mirror on tarballs.nixos.org. On line 21, it filters out all packages which do not have the hash mode flat. In fetchzip it sets the recursiveHash option, which sets the hash mode to recursive, meaning anything that uses fetchzip (or others that use it, like fetchFromGitHub) isn't mirrored.
Potential solutions:
Ignore it
Cons:
Every package which fetches its source from github, gitlab or similar isn't covered by tarballs.nixos.org (but even if this was fixed, there won't be 100% coverage due to some packages using fetchFromGitHub in a way that uses fetchGit instead of fetchzip)
Pros:
Minimal effort
Modify fetchzip to instead copy the result of a fetchurl call and unpack it (resulting in two derivations instead of one)
Cons:
Requires rebuilding anything which uses fetchzip, and dependents (though I know fetchurl outputs are content addressed by default, could that be extended to the output of fetchzip?)
More disk usage, though it'll almost definitely be garbage collected anyway
Pros:
Feels like the least hacky solution
Modify find-tarballs.nix to also cache directories
Cons:
Issue description
This is the file that gets the list of tarballs to mirror on
tarballs.nixos.org
. On line 21, it filters out all packages which do not have the hash modeflat
. In fetchzip it sets therecursiveHash
option, which sets the hash mode to recursive, meaning anything that usesfetchzip
(or others that use it, likefetchFromGitHub
) isn't mirrored.Potential solutions:
Ignore it Cons:
fetchFromGitHub
in a way that usesfetchGit
instead offetchzip
)Pros:
Modify
fetchzip
to instead copy the result of afetchurl
call and unpack it (resulting in two derivations instead of one) Cons:fetchzip
, and dependents (though I knowfetchurl
outputs are content addressed by default, could that be extended to the output offetchzip
?)Pros:
Modify find-tarballs.nix to also cache directories Cons:
Pros: