A modern, delicious implementation of the Nix package manager, focused on correctness, usability, and growth — and committed to doing right by its community
Find a file
Eelco Dolstra 5b798f6cae Fix random client failures during GC server shutdown
We need to close the GC server socket before shutting down the active
GC client connections, otherwise a client may (re)connect and get
ECONNRESET. But also handle ECONNRESET for resilience.

Fixes random failures like

  GC socket disconnected
  connecting to '/tmp/nix-shell.y07M0H/nix-test/default/var/nix/gc-socket/socket'
  sending GC root '/tmp/nix-shell.y07M0H/nix-test/default/store/kb5yzija0f1x5xkqkgclrdzldxj6nnc6-non-blocking'
  reading GC root from client: error: unexpected EOF reading a line
  1 store paths deleted, 0.00 MiB freed
  error: reading from file: Connection reset by peer

in gc-non-blocking.sh.
2022-11-27 12:57:18 +01:00
.github Merge pull request #7229 from Mic92/ci 2022-11-11 13:39:46 +01:00
config
contrib
doc/manual fix error in language overview 2022-11-22 10:36:21 +01:00
m4
maintainers
misc Apply suggestions from code review 2022-09-02 10:50:02 -05:00
mk
perl
scripts Add --yes option for Nix installation script 2022-10-25 16:43:00 -07:00
src Fix random client failures during GC server shutdown 2022-11-27 12:57:18 +01:00
tests add explanation and test 2022-11-23 12:06:47 -05:00
.dir-locals.el
.editorconfig
.gitignore Add fish suport to installer 2022-09-13 12:56:16 -04:00
.version Bump version 2022-08-25 11:50:14 +02:00
boehmgc-coroutine-sp-fallback.diff Update boehmgc-coroutine-sp-fallback.diff for darwin 2022-09-01 11:48:50 -05:00
bootstrap.sh
configure.ac
COPYING
default.nix
docker.nix dockerImage: fix root shell 2022-09-14 16:20:58 -06:00
flake.lock
flake.nix Merge pull request #7043 from edolstra/installer-test 2022-09-26 17:34:23 +02:00
local.mk
Makefile
Makefile.config.in
precompiled-headers.h
README.md
shell.nix

Nix

Open Collective supporters Test

Nix is a powerful package manager for Linux and other Unix systems that makes package management reliable and reproducible. Please refer to the Nix manual for more details.

Installation

On Linux and macOS the easiest way to install Nix is to run the following shell command (as a user other than root):

$ curl -L https://nixos.org/nix/install | sh

Information on additional installation methods is available on the Nix download page.

Building And Developing

See our Hacking guide in our manual for instruction on how to build nix from source with nix-build or how to get a development environment.

Additional Resources

License

Nix is released under the LGPL v2.1.