aboutsummaryrefslogtreecommitdiff
path: root/doc/manual/src/architecture/store
AgeCommit message (Collapse)Author
2022-08-22Revert "Merge pull request #6420 from nix-community/doc-what-is-nix"Valentin Gagarin
This reverts commit 81e101345fda2a8651c470f08b364a1ca6fa37cf, reversing changes made to 7d1280bbaf7f4cd142c2259dec620c42bf6f96fd.
2022-08-04Remove header fragments which is not needdJohn Ericson
2022-08-04Fix rosetta stone file nameJohn Ericson
2022-08-04fix page renderingValentin Gagarin
apparently it is not possible to link to page anchors with `mdBook`[1] [1]: https://github.com/rust-lang/mdBook/issues/167
2022-08-04use correct mdBook syntax for calloutsValentin Gagarin
2022-08-04fix directory tree renderingsValentin Gagarin
2022-08-04clarify what explicitly declaring certain dependencies meansValentin Gagarin
2022-08-04clarify what store objects can be Valentin Gagarin
the store of course makes a distinction, but that is not relevant here
2022-08-04add Java example on manual dependency declarationValentin Gagarin
2022-08-04hashes: truncate -> reduce, mention SHA-256Valentin Gagarin
the longer SHA-256 hashes are not truncated, but in fact processed. Co-authored-by: Thomas <twatson52@mac.com>
2022-08-04mention hard linksValentin Gagarin
Co-authored-by: Thomas <twatson52@mac.com>
2022-08-04note customized base32 Valentin Gagarin
Nix omits E O U T characters for some reason.
2022-08-04use correct Nix entity Valentin Gagarin
Nix itself does care a lot about what type of store object you have.
2022-08-04fix typoValentin Gagarin
Co-authored-by: Thomas <twatson52@mac.com>
2022-08-04add subsections to table of contentsValentin Gagarin
2022-08-04concept map: align hightsValentin Gagarin
this has the weird but nice emergent property that terms at the same height are roughly at the same level of abstraction.
2022-08-04concept map: put closure as it is in the chapterValentin Gagarin
this is not as compact any more, but it more closely resembles the chapter structure, and clearly shows that the closure property is the key idea on which most of Nix operates.
2022-08-04make concept map even more compactValentin Gagarin
2022-08-04make concept map more compactValentin Gagarin
invert arrows to/from derivation: - we need closures to form derivations - we need derivations to perform builds
2022-08-04store: add concept mapValentin Gagarin
this should help nativate the chapter by indicating which terms should be known to understand a given concept.
2022-08-04store: match chapter introduction to outlineValentin Gagarin
the various levels of detail should describe the same things.
2022-08-04simplify description of diagramValentin Gagarin
try not to be too fancy, it's just for reading the diagram out loud.
2022-08-04reword notes on copyingValentin Gagarin
clarify that we are copying between different stores. we have not introduced that notion or why it would be interesting, but for now it should be fine to keep it in context of the store directory. we could move that later to a more detailed explanation of different store types.
2022-08-04make example a simple listValentin Gagarin
using JSON notation is unwarranted and not explained.
2022-08-04paths -> pathValentin Gagarin
use singular for terminology uniformly
2022-08-04better explain reference scanningValentin Gagarin
2022-08-04explain store directoryValentin Gagarin
2022-08-04add explanation and examples of file system objectsValentin Gagarin
2022-08-04remove diagonal from operations diagramValentin Gagarin
2022-08-04remove draft on derivationsValentin Gagarin
2022-08-04move first mention of file system object before diagramValentin Gagarin
2022-08-04make clear that file system is for processes Valentin Gagarin
Co-authored-by: John Ericson <John.Ericson@Obsidian.Systems>
2022-08-04constrain garbage collection scope Valentin Gagarin
garbage collection is now incremental, and may (in theory) never delete all unreferenced objects if it is slow enough.
2022-08-04references are added according to build task Valentin Gagarin
at this level of abstraction we do not really care about build instructions or what they are, and also build instructions including their arguments really amount to the build task.
2022-08-04operations diagram: store' to the rightValentin Gagarin
this also looks more diverse, hopefully easier to distinguish Co-authored-by: John Ericson <John.Ericson@Obsidian.Systems>
2022-08-04add commas between output valuesValentin Gagarin
2022-08-04use singular to match section headingValentin Gagarin
2022-08-04use reference links for URLsValentin Gagarin
2022-08-04add subsections for objects and referencesValentin Gagarin
group description of data instead of spreading it across the section. that should help direct skimming. as it turns out, people do not actually read any of that.
2022-08-04move closure property to discussion referencesValentin Gagarin
2022-08-04replace pseudo code by diagramsValentin Gagarin
change prose description to visually resemble the data structure
2022-08-04use reference links for URLsValentin Gagarin
2022-08-04clarify first sentence on store objectsValentin Gagarin
2022-08-04fix grammar for clarityValentin Gagarin
2022-08-04introduce mapping to Unix files and processesValentin Gagarin
2022-08-04introduce store and store objects without file system detailsValentin Gagarin
this leaves open implementation details, especially about store paths and file system objects, and allows explaining them together were it is more appropriate. also leaves room to carefully introduce the key insight behind Nix: applying results from programming language theory to the operating system paradigm of files and processes.
2022-08-04beautify rosetta tableValentin Gagarin
while this may eventually introduce ugly diffs, the table will now render readably on the terminal (e.g. for `man nix` or `nix --help`) without further intervention.
2022-08-04use reference links for URLsValentin Gagarin
2022-08-04use singular for class names consistentlyValentin Gagarin
2022-08-04build rule -> build taskValentin Gagarin
closer to "build systems a la carte", satisfies all other complaints