You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Only try to substitute input if fetching from its original location fails
Previously we always tried to substitute first (by calling
`ensurePath()`). This wasn't a problem before lazy trees, because we
always end up copying to the store anyway. But that's not the case
with lazy trees. So frequently we ended up substituting an input that
we had already fetched.
This showed up as
fetching source from https://cache.nixos.org
for inputs that you could swear Nix had already fetched just
before. This was especially a problem for Nixpkgs inputs, since many
Nixpkgs revisions are in cache.nixos.org.
Note that this could also be a problem without lazy trees, e.g. with a
local input (like a Nixpkgs clone) that happens to be in the binary
cache.
So we now only try substitution as a last resort, if we cannot fetch
the input normally.
0 commit comments