recent additions to the Nix manual clarify the distinction between
search path and lookup path, and also document the resolution algorithm.
lookup paths are now a distinct Nix language construct with its own
reference documentation.
* Remove specific software name from header
There's enough detail about it below, and the specific tech isn't the point of this section anyway.
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
* rewrite guide to pinning dependencies with niv
* use the specific branch directly
Co-authored-by: Silvan Mosberger <github@infinisil.com>
* use the shell's niv explicitly
* Apply suggestions from code review
---------
Co-authored-by: Silvan Mosberger <github@infinisil.com>
this removes a difference to how Nix currently fetches flake references.
using a constant is preferrable because renaming the source won't force
downstream rebuilds of store objects cached from when flakes were used.
upstream fix: https://github.com/nmattia/niv/pull/379
use niv for dependency management.
this follows our own tutorials on writing packages and development
shells, and we generally find it is easier to read and work with.
Co-authored-by: Alejandro Sanchez Medina <alejandrosanchzmedina@gmail.com>
This does not yet follow #701, because the change to get there would be
too big. The goal is to keep the table of contents meaningful at all
times and the diff of each pull request manageable.
The packaging tutorial is quite important, so it's not wrong to have it
visible on the front page until we have enough material for a packaging
section.
The sharing dependencies article should really be a very brief guide, but
because that would be quite a big change, it's only moved to the Guides
section for now.
* add Recipes section under Guides category
This also removes the templates section, as we're not maintaining it and it likely won't be necessary anyway once the curriculum is roughly finished.
the instructions say that the command will open a window, which
naturally requires a graphical environment. but this is very late in the
process, and will likely not be obvious in the middle of a a self-directed learning situation.
this cleans up the top-level directory and hopefully makes the setup
slightly more obvious
Co-authored-by: Alejandro Sanchez Medina <alejandrosanchzmedina@gmail.com>