General Nix Office Hours

Breaking in what sense? Please remember that nix develop throws you in a non-interactive shell, it uses ${bash}/bin/bash, which does not load completions and also doesn’t do a lot of stuff in general that humans like to have. This bash is basically a bash that is meant run scripts, not to be used by humans. If you want to enter a dev-env that retains your shell and the comfort, then use direnv with the nix-direnv extension.

Alternatively you can do something like this:

$ nix shell nixpkgs#bashInteractive -c bash
$ eval "$(nix print-dev-env)"
1 Like