Skip to content

Commit

Permalink
document store objects in terms of their constituent parts
Browse files Browse the repository at this point in the history
this also rephrases the introductory sentence to be more general, in order to
avoid the same word being repeated in short succession.
  • Loading branch information
fricklerhandwerk committed Oct 25, 2023
1 parent 8d9e0b7 commit e5e98f2
Showing 1 changed file with 13 additions and 2 deletions.
15 changes: 13 additions & 2 deletions doc/manual/src/store/index.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,15 @@
# Nix Store

The *Nix store* is an abstraction used by Nix to store immutable filesystem artifacts (such as software packages) that can have dependencies (*references*) between them.
There are multiple implementations of the Nix store, such as the actual filesystem (`/nix/store`) and binary caches.
The *Nix store* is an abstraction to store immutable file system data (such as software packages) that can have dependencies on other such data.
There are multiple implementations of Nix stores with different capabilities, such as the actual filesystem (`/nix/store`) or binary caches.

## Store Object

A Nix store is a collection of *store objects* with *references* between them.
A store object consists of

- A [file system object](./file-system-object.md) as data
- A set of [store paths](@docroot@/glossary.md#gloss-store-path) as references to other store objects

Store objects are [immutable](https://en.wikipedia.org/wiki/Immutable_object):
Once created, they do not change until they are deleted.

0 comments on commit e5e98f2

Please sign in to comment.