The Development Environment
Nedryland uses nix-shell (default.nix) or nix develop (flakes) to provide a
development environment for defined components. For this to work, shell.nix in the root
of the repository needs to expose the output of project.mkShells.
Working on a component
To start a shell for working on a component called hammond, issue the command
$ nix-shell -A hammond
or if using flakes
$ nix develop .#hammond
This will download and expose all dependencies necessary to work on hammond, change the directory
to where hammond is defined and create a new shell session.
Get a Shell with all Components
The special target all (nix-shell -A all/nix develop .#all) will drop you in a shell
session with access to all build outputs of the whole project. This can be useful to test
a set of components together.