diff options
author | Valentin Gagarin <valentin.gagarin@tweag.io> | 2022-04-24 21:34:33 +0200 |
---|---|---|
committer | Valentin Gagarin <valentin.gagarin@tweag.io> | 2022-08-04 12:37:47 +0200 |
commit | c8c1b705ad5cdf115997cef387d83c4b04fe0660 (patch) | |
tree | 4fffe50ab1675abc4557f1b7e131869b693d2133 /doc/manual/src | |
parent | 39f01176a713bad4e090e19c8a25c2447056640d (diff) |
reword section on Nix store
Diffstat (limited to 'doc/manual/src')
-rw-r--r-- | doc/manual/src/architecture/store/store.md | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/doc/manual/src/architecture/store/store.md b/doc/manual/src/architecture/store/store.md index d4add52f5..b52fe8255 100644 --- a/doc/manual/src/architecture/store/store.md +++ b/doc/manual/src/architecture/store/store.md @@ -1,10 +1,14 @@ # Store -A Nix store is a collection of *store objects* referred to by *store paths*. -Every store also has a "store directory path", which is a path prefix used for various purposes. +A Nix store is a collection of [store objects](objects.md) and associated operations. -There are many types of stores, but all of them at least respect this model. -Some however offer additional functionality. +These store objects can hold arbitrary data, and Nix makes no distinction if they are used as build inputs, build results, or build plans. + +Store objects are accessible in a file system through [store paths](paths.md). +Every store has a *store directory*, which contains that store’s objects and is a prefix of their store paths. +It defaults to `/nix/store`, but is in principle arbitrary. + +A Nix store can perform builds, that is, transform build inputs using instructions from the build plans into build outputs. It also keeps track of *references* between data and can therefore garbage-collect unused store objects. ## A Rosetta stone for the Nix store. |