A modern, delicious implementation of the Nix package manager, focused on correctness, usability, and growth — and committed to doing right by its community https://lix.systems
Find a file
eldritch horrors 4ae6fb5a8f libstore: pause only stalling transfers
don't pause the entire curl thread. we have multiple consumer threads
after all, not just one, so stalling all of them is likely not great.

note that libcurl advises against using transfer pauses if compressed
encodings are allowed and automatically decoded. this should not lead
to problems in practice because our data is usually not compressed to
such a degree that curl buffering *uncompressed* data matters. should
this cause problems we can reintroduce the whole-thread pause, but we
will probably get away with this until the entire file transfer class
is made kj::Promise-using async (and *then* curl can be hardpaused if
it cannot get rid of its data, solving the problem once and for all).

Change-Id: I218e41bfa5a27c7454eafb0bdb54f2a29a7f6493
2024-10-30 22:52:19 +00:00
.github fix: docs issue template was busted 2024-09-14 19:28:46 +00:00
bench benchmarks: Fix purity 2024-10-18 19:37:23 +02:00
contrib function-trace: always show the trace 2019-09-18 23:23:21 +02:00
doc Merge "libstore: report all differing outputs rather than just the first" into main 2024-10-30 19:04:57 +00:00
maintainers rl-next: fix incorrect CL list syntax 2024-08-09 19:03:08 -07:00
meson clang-tidy: fix the fact that we are not linting headers properly 2024-08-28 09:52:08 -07:00
misc packaging: use in-tree capnproto derivation 2024-10-18 15:40:22 -07:00
nix-support editline: Vendor cl/1883 patch to recognize Alt+Left/Alt+Right 2024-09-11 09:35:00 -07:00
perl Merge changes Ib7c80826,I636f8a71,I67669b98 into main 2024-08-09 19:24:29 +00:00
releng releng: fix the git push 2024-08-07 21:46:44 -07:00
scripts build: fix deprecated uses of configure_file 2024-09-27 11:55:32 -05:00
src libstore: pause only stalling transfers 2024-10-30 22:52:19 +00:00
subprojects rowan: 0.15.15 -> 0.15.16 2024-08-26 11:34:43 -07:00
tests libstore: pause only stalling transfers 2024-10-30 22:52:19 +00:00
.clang-format Add pre-commit checks 2024-03-29 22:57:40 -07:00
.clang-tidy clang-tidy: write a lint for charptr_cast 2024-08-08 14:53:17 -07:00
.dir-locals.el .dir-locals.el: Set c-block-comment-prefix 2020-07-10 11:21:06 +02:00
.editorconfig editorconfig: Add meson.build 2024-10-01 16:09:47 -07:00
.envrc .envrc: remove MAKEFLAGS and use clang environment by default 2024-06-25 12:36:18 -06:00
.gitignore gitignore: ignore *.pyc files 2024-10-20 22:08:35 -07:00
.this-is-lix devShell: guard against running from another directory 2024-06-24 13:41:38 -07:00
Cargo.lock rowan: 0.15.15 -> 0.15.16 2024-08-26 11:34:43 -07:00
Cargo.toml build: move to a Cargo workspace 2024-08-21 17:09:10 +00:00
CONTRIBUTING.md chore: re-work the contribution guide 2024-05-07 01:28:35 +00:00
COPYING Add pre-commit checks 2024-03-29 22:57:40 -07:00
default.nix Format Nix code with nixfmt 2024-04-08 13:00:00 -07:00
docker.nix releng: support multiarch docker images 2024-06-09 20:33:24 -07:00
flake.lock flake.lock: update everything 2024-09-25 18:42:16 -07:00
flake.nix packaging: remove workaround for clang stdenv asserts 2024-10-18 15:40:22 -07:00
justfile build: implement clang-tidy using our plugin 2024-08-04 20:41:19 -07:00
meson.build chore: remove monolithic coreutils requirement 2024-10-30 15:12:35 +04:00
meson.options build: implement clang-tidy using our plugin 2024-08-04 20:41:19 -07:00
package.nix packaging: use in-tree capnproto derivation 2024-10-18 15:40:22 -07:00
README.md README: clarify license to match documentation 2024-08-10 16:11:58 -07:00
shell.nix shell.nix: conform to documentation 2024-05-27 16:47:40 +02:00
treefmt.toml Format Nix code with nixfmt 2024-04-08 13:00:00 -07:00
version.json Update version to 2.92 2024-08-12 18:06:08 -07:00

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.