I’d like to define some custom environments for my users, in Nix. Currently I use mkDerivation and have them nix develop
it. This is working, but it results in a very cluttered environment, with all kinds of variables set related to phases, input lists, etc— basically it’s definitely a build-a-specific-package environment and I’d like to have more control over it than I seem to.
It looks like nix shell
may be a closer solution, as it only sets the PATH
. But I need to set a few other variables, and it doesn’t seem like postHook, setupHook, or shellHook get called when using nix shell
.
I could just launch the shell myself with a script invoked from nix run
, or even just build the script with nix build
and ask users to manually source it afterward in their shells. But I’d like to be able to use something a bit more built-in than that if it exists.
Does it?