this is the most cursed setup you will see any time soon.
we're dumping the Nix manual unchanged into the build tree *after*
building. the reason is that we'd want to link to it from our table of
contents, but because Sphinx does not allow adding arbitrary files to
the build output in arbitrary locations (only `_static` works). but we
want to place the manual behind a particular URL, and the alternative of
maintaining URL rewrites (e.g. in nginx) is not accessible here because the
infrastructure is managed somewhere else.
now that the files won't appear in their desired locations at Sphinx
build time, we can't use relative links to reference them, therefore we
have to resort to pointing to the web URL the manual will appear at.
this is terrible and I'm sorry. please fix this if you have a better
idea. once we use URLs though, we have to avoid linkchecking, since
those files may not be there before deploying them.
figuring all of this out took way longer than anyone would wish.
Co-authored-by: Alejandro Sanchez Medina <alejandrosanchzmedina@gmail.com>
this collapses the "don't panic" section into a motivating introduction and gives
the document a more distinctive name.
this also addresses feedback stating that having "basics" in the title
may be misleading about the effort required to work through the
tutorial.
* Rewrite "Set up development environment"
The previous version is specific to Python as it uses
`buildPythonApplication` instead of `mkShell`.
This one is more general but maintains the same Python Flask web
application example.
* Update pinning-nixpkgs to use 22.11
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>