Find a file
regnat 22afa8fb4d Separate store configs from the implems
Rework the `Store` hierarchy so that there's now one hierarchy for the
store configs and one for the implementations (where each implementation
extends the corresponding config). So a class hierarchy like

```
StoreConfig-------->Store
    |                 |
    v                 v
SubStoreConfig----->SubStore
    |                 |
    v                 v
SubSubStoreConfig-->SubSubStore
```

(with virtual inheritance to prevent DDD).

The advantage of this architecture is that we can now introspect the configuration of a store without having to instantiate the store itself
2020-09-16 13:53:08 +02:00
.github speed up CI 2020-08-30 22:52:34 +02:00
config
contrib
corepkgs
doc/manual docs+test: fix remaining installer downloads without -L (#4006) 2020-09-12 22:08:40 +02:00
m4
maintainers set Content-Type to "text/plain" for install script 2020-08-20 13:21:22 +02:00
misc
mk Close stdin while running tests 2020-08-28 18:43:34 +02:00
nix-rust
perl Merge remote-tracking branch 'upstream/master' into single-ca-drv-build 2020-08-28 19:59:14 +00:00
scripts
src Separate store configs from the implems 2020-09-16 13:53:08 +02:00
tests Merge remote-tracking branch 'upstream/master' into single-ca-drv-build 2020-09-15 14:17:06 +00:00
.dir-locals.el
.editorconfig
.gitignore .gitignore: inst -> outputs 2020-09-15 13:48:42 +02:00
.version
bootstrap.sh
configure.ac
COPYING
default.nix
flake.lock Fix clang build 2020-08-24 21:13:39 +02:00
flake.nix Merge remote-tracking branch 'origin/master' into markdown 2020-09-01 09:48:08 +02:00
local.mk
Makefile
Makefile.config.in
precompiled-headers.h Config: Use nlohmann/json 2020-08-20 11:02:16 +02:00
README.md README: update link to Hacking section 2020-09-01 12:05:49 -07:00
result Make the store plugins more introspectable 2020-09-16 13:53:08 +02:00
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.