Well, the main issue is that generic builder is written in bash. nix-shell
, among other things, is supposed to place you into the development environment where you can call the bash functions manually. For the other use cases it is not necessary and we have several issues open about that:
- nix-build: support for non-bash shells with nix-build / nix-shell · Issue #498 · NixOS/nix · GitHub
- nix-shell ignoring SHELL enviroment variable · Issue #419 · NixOS/nix · GitHub
- Support non-bash shells in nix-shell. by gebner · Pull Request #545 · NixOS/nix · GitHub
Personally, I just run nix-shell … --run fish
when I do not need to access builder functions.