Age | Commit message (Collapse) | Author | |
---|---|---|---|
2022-08-04 | add explanation and examples of file system objects | Valentin Gagarin | |
2022-08-04 | remove diagonal from operations diagram | Valentin Gagarin | |
2022-08-04 | remove draft on derivations | Valentin Gagarin | |
2022-08-04 | move first mention of file system object before diagram | Valentin Gagarin | |
2022-08-04 | make clear that file system is for processes | Valentin Gagarin | |
Co-authored-by: John Ericson <John.Ericson@Obsidian.Systems> | |||
2022-08-04 | constrain 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-04 | references 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-04 | operations diagram: store' to the right | Valentin Gagarin | |
this also looks more diverse, hopefully easier to distinguish Co-authored-by: John Ericson <John.Ericson@Obsidian.Systems> | |||
2022-08-04 | add commas between output values | Valentin Gagarin | |
2022-08-04 | use singular to match section heading | Valentin Gagarin | |
2022-08-04 | use reference links for URLs | Valentin Gagarin | |
2022-08-04 | add subsections for objects and references | Valentin 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-04 | move closure property to discussion references | Valentin Gagarin | |
2022-08-04 | replace pseudo code by diagrams | Valentin Gagarin | |
change prose description to visually resemble the data structure | |||
2022-08-04 | use reference links for URLs | Valentin Gagarin | |
2022-08-04 | clarify first sentence on store objects | Valentin Gagarin | |
2022-08-04 | fix grammar for clarity | Valentin Gagarin | |
2022-08-04 | introduce mapping to Unix files and processes | Valentin Gagarin | |
2022-08-04 | introduce store and store objects without file system details | Valentin 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-04 | beautify rosetta table | Valentin 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-04 | use reference links for URLs | Valentin Gagarin | |
2022-08-04 | introduce build tasks | Valentin Gagarin | |
while it appears a bit much for the overview, this way we set the stage for going directly into data types when describing the store, instead of first having to say what build tasks are and how they relate to build plans. | |||
2022-08-04 | revert to build plans in top-level overview | Valentin Gagarin | |
do not introduce build tasks yet, that is the next level of detail. | |||
2022-08-04 | use reference links for URLs | Valentin Gagarin | |
2022-08-04 | revert to "build plan" in overview diagram | Valentin Gagarin | |
this displays correct composition again. build inputs and build results are not part of build plans in terms of data objects. also this is a much less complicated setup. this will be the first impression of architecture, and we want to get it right. | |||
2022-08-04 | Nix store does not underly literally everything | Valentin Gagarin | |
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com> | |||
2022-08-04 | add link from overview to store section | Valentin Gagarin | |
the overview should only link to the three main concepts presented. the store is now fairly fleshed out. others can follow later. | |||
2022-08-04 | architecture overview: add link to command line reference | Valentin Gagarin | |
2022-08-04 | architecture overview: add link to Nix expression language reference | Valentin Gagarin | |
update summary title to match file contents | |||
2022-08-04 | use singular for class names consistently | Valentin Gagarin | |
2022-08-04 | clarify relation of tasks and plans | Valentin Gagarin | |
2022-08-04 | build rule -> build task | Valentin Gagarin | |
closer to "build systems a la carte", satisfies all other complaints | |||
2022-08-04 | build step -> build rule | Valentin Gagarin | |
"step" sounds atomic, while "rule" hints at internal structure, which in our case consists of mapping inputs to outputs using build instructions. | |||
2022-08-04 | match grammatical case to arrow direction | Valentin Gagarin | |
2022-08-04 | update architecture diagram | Valentin Gagarin | |
2022-08-04 | remove incomplete section: input/content-addressing | Valentin Gagarin | |
2022-08-04 | remove incomplete section: nix archives | Valentin Gagarin | |
2022-08-04 | remove incomplete section: content-addressed objects | Valentin Gagarin | |
2022-08-04 | remove incomplete section: relocatability | Valentin Gagarin | |
2022-08-04 | remove incomplete section: related work | Valentin Gagarin | |
2022-08-04 | remove incomplete section: building | Valentin Gagarin | |
2022-08-04 | Fix manual TOC links | John Ericson | |
2022-08-04 | Fix rel path in doc | John Ericson | |
2022-08-04 | reword details on keeping closure property | Valentin Gagarin | |
2022-08-04 | add motivation for references | Valentin Gagarin | |
2022-08-04 | stores can also delete objects | Valentin Gagarin | |
2022-08-04 | formalize file system objects | Valentin Gagarin | |
convention: describe every data type in prose, and illustrate with a class diagram, and a textual representation of an abstract data type. right now we save ourselves the trouble of doing class diagrams, we can add them later. but they are important. | |||
2022-08-04 | reword section on references | Valentin Gagarin | |
use file Contents instead of Data, as that flows more naturally in the prose. simplify explanation of the idea behind scanning for store paths remove references to unfinished sections. | |||
2022-08-04 | reword file system objects | Valentin Gagarin | |
- use singular for the "class" - more consistency in type definition - minor fixes in wording | |||
2022-08-04 | move git comparison to related work | Valentin Gagarin | |
it should be pulled out of the branch before we go for merging |