079fe0ca5068a227b16bdc1f2bdc84ca83c30f6b
Last week I was hunting a production issue at work related to CppNix and the only hint I had was this warning. While the cause was clearly a CppNix issue since it was related to the libgit2-backed tarball cache, the fact that this exception was hidden, made it way harder to discover this. It would've saved me a lot of time[1] if the error was just printed out (and thus would've ended up in the logs). This is what this patch results in: $ nix-instantiate -I https://notexisting.com --find-file . --option connect-timeout 1 warning: error: unable to download 'https://notexisting.com': Resolving timed out after 1001 milliseconds (curl error code=28); retrying in 265 ms warning: error: unable to download 'https://notexisting.com/': Connection timed out after 1002 milliseconds (curl error code=28); retrying in 523 ms warning: error: unable to download 'https://notexisting.com/': Connection timed out after 1001 milliseconds (curl error code=28); retrying in 1324 ms warning: error: unable to download 'https://notexisting.com/': Connection timed out after 1000 milliseconds (curl error code=28); retrying in 2670 ms warning: … while downloading https://notexisting.com to satisfy NIX_PATH lookup (ignoring) warning: unable to download 'https://notexisting.com/': Connection timed out after 1001 milliseconds (curl error code=28) /path/to/nix/path/root The `unable to download` part was hidden before. Granted, this is not the most interesting showcase given the retries before, but I'd still argue that this is useful for cases where you don't have a connection timeout (and this was just the most trivial way to test for me). [1] Unlucky as I was, I had to mount an older backup and nixos-enter into the mount to reproduce this. Change-Id: If2894369fc0b159a307b448e1ce7d9b54a327df6
Lix
Lix is an implementation of Nix, a powerful package management system for Linux and other Unix systems that makes package management reliable and reproducible.
Read more about us at https://lix.systems.
Installation
On Linux and macOS the easiest way to install Lix is to run the following shell command (as a user other than root):
$ curl -sSf -L https://install.lix.systems/lix | sh -s -- install
For systems that already have a Nix implementation installed, such as NixOS systems, read our install page
Building And Developing
See our Hacking guide in our manual for instruction on how to to set up a development environment and build Lix from source.
Additional Resources
License
Lix is released under LGPL-2.1-or-later.
Description
Working fork of Lix - carries the adaptive load-aware build-remote patch. Upstream: gerrit.lix.systems
92 MiB
Languages
C++
74.9%
Python
11.7%
Nix
6.1%
Shell
3.6%
Meson
2%
Other
1.6%