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
Go to file
regnat b66234134f Add a realisations disk cache
Similar to the nar-info disk cache (and using the same db).
This makes rebuilds muuch faster.

- This works regardless of the ca-derivations experimental feature.
  I could modify the logic to not touch the db if the flag isn’t there,
  but given that this is a trash-able local cache, it doesn’t seem to be
  really worth it.
- We could unify the `NARs` and `Realisation` tables to only have one
  generic kv table. This is left as an exercise to the reader.
- I didn’t update the cache db version number as the new schema just
  adds a new table to the previous one, so the db will be transparently
  migrated and is backwards-compatible.

Fix #4746
2021-05-06 17:38:20 +02:00
.github Bump cachix/cachix-action from v9 to v10 2021-04-12 05:21:11 +00:00
config Update config.guess for proper arm64 macOS detection 2020-12-02 19:14:34 -06:00
contrib function-trace: always show the trace 2019-09-18 23:23:21 +02:00
doc/manual Merge pull request #4289 from abathur/encrypt_darwin_volume 2021-04-29 15:59:12 -04:00
m4 autoconf: Fix C++17 detection not working on Ubuntu 16.04. 2019-07-03 04:32:25 +02:00
maintainers set Content-Type to "text/plain" for install script 2020-08-20 13:21:22 +02:00
misc Add some missing clean-files 2020-10-18 20:32:59 +02:00
mk Merge pull request #4582 from puckipedia/cppflags 2021-03-01 13:08:14 +01:00
nix-rust Remove 'dist' target 2020-12-03 16:17:58 +01:00
perl Make sodium a required dependency 2021-01-06 17:56:53 +01:00
scripts darwin: encrypt nix volume if filevault is enabled 2021-04-29 13:26:51 -05:00
src Add a realisations disk cache 2021-05-06 17:38:20 +02:00
tests Add a realisations disk cache 2021-05-06 17:38:20 +02:00
.dir-locals.el .dir-locals.el: Set c-block-comment-prefix 2020-07-10 11:21:06 +02:00
.editorconfig Add .editorconfig 2017-06-05 22:57:28 +01:00
.gitignore Generate separate manpages for each nix subcommand 2020-12-02 23:23:23 +01:00
.version Revert "Bump version to 3.0" 2020-10-26 11:30:18 +01:00
bootstrap.sh bootstrap: Simplify & make more robust. 2011-09-06 12:11:05 +00:00
configure.ac Drop unused tar dependency 2021-04-15 13:57:04 +02:00
COPYING * Change this to LGPL to keep the government happy. 2006-04-25 16:41:06 +00:00
default.nix Simplify shell.nix and default.nix 2020-06-17 19:21:46 +02:00
flake.lock Use lowdown 0.8.4 2021-04-23 14:20:32 +02:00
flake.nix Use lowdown 0.8.4 2021-04-23 14:20:32 +02:00
local.mk Remove 'dist' target 2020-12-03 16:17:58 +01:00
Makefile Move command plugin interface to libnixcmd 2021-01-26 06:22:24 -05:00
Makefile.config.in Drop libbz2 / zlib / lzma dependency + style fixes 2021-04-15 13:55:22 +02:00
precompiled-headers.h Config: Use nlohmann/json 2020-08-20 11:02:16 +02:00
README.md README: fix link to hacking guide 2020-12-28 09:30:14 -08:00
shell.nix Add back flake-compat shell.nix 2020-07-17 14:58:59 +00:00

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.