The notebook index
Post archive
4 posts in Nix and Unix.
- A useful setup log starts with the question it can answer
A compact diagnostic record should let someone reproduce a specific observation: state the question, environment, command, exit status, and relevant output. Keep that setup transcript distinct from an inventory of files or storage.
- A command line is an argument vector before it is a shell string
Passing subprocess arguments as a sequence preserves argument boundaries and avoids shell parsing by default. It prevents shell metacharacters from becoming syntax, while leaving program-specific option handling as a separate concern.
- Rolling back NixOS does not roll back a database
NixOS generations let you select an earlier system configuration, while database files and other mutable data follow their own lifecycle and compatibility rules.
- A Nix derivation describes a build; it does not prove reproducibility
A derivation records a build step and its declared dependencies, but matching that recipe does not guarantee identical output bytes when the process can observe undeclared inputs or nondeterminism.