Use hut substituter in all nodes #175
Reference in New Issue
Block a user
Delete Branch "abonerib/jungle:hut-substituter"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
All nodes should be able to reach hut now so we can run the cache without going through nginx.
This makes hut the substituter for all nodes, but we still have tent as the public facing cache.
I don't know if we want
bayandeudyto use the cache.Yes, I think it would be good for all machines to try fetching packages locally as the link is faster than going to cache.nixos.org. Notice lake2 is missing.
What happens if the cache is not reachable (hut is down)? I remember there was some painful issue with the timeouts. I'd imagine a way of testing is to specify a non-existing node, you can try with
10.0.40.111instead of hut.Added lake2
Just tried in weasel. It gave some timeout warnings and moved on after 5 attempts (took
~30sin total, including evaluation)Worryingly, in my laptop each timeout is 135 seconds instead, which would take more than 10 minutes...
We can try the other nodes with
nix build --substituters https://10.0.40.111/cache(from a trusted user) and see if it's just some weird config on my side.c993962708to1ad98a3b49It seems there is a system-wide timeout of 3 seconds, then it retries 5 times:
Also, I assume this is onces per build command, not for each package, otherwise it would be pretty bad.
Maybe lowering this to 1s?
https://nix.dev/manual/nix/2.24/command-ref/conf-file.html#conf-connect-timeout
That seems to fix my laptop timeout.
What's interesting is that the flag does not work, I have to set it in the system
nix.conf:🤷
Yes. I have now set it explicitly, since I am not sure why on my laptop the timeout is much higher.
Yes, all my attempts to build multiple packages do the initial cache timeout and then just build locally.
4e3abb19a9to163d19bd05