FYI the default has been changed - bash: Make interactive by default by infinisil · Pull Request #379368 · NixOS/nixpkgs · GitHub
Though not sure this will affect dev shells.
opened 09:21AM - 06 Jan 22 UTC
bug
new-cli
nix-shell
**Describe the bug**
After using `nix shell` after `nix develop` the shell pr… ompt gets mangled and keys no longer function as expected (eg. can't browse history with arrow keys, or use completion with tab)

**Steps To Reproduce**
1. Enter a shell with `nix develop nixpkgs#hello`
2. When in the development shell, enter another environment with `nix shell nixpkgs#libnotify`
3. The shell should now exhibit the described unexpected behavior
**Expected behavior**
For the shell to function the same as outside development environments.
**`nix-env --version` output**
nix-env (Nix) 2.4
**Additional context**
I've tested this with a couple different packages, so it doesn't seem to be a package-specific bug. The bug also doesn't occur if you reverse the order you enter the environments (`nix develop` after `nix shell`), as shown in the image.
Since the default has been changed, I’d say just put pkgs.bash (or pkgs.bashInteractive if on an older commit) in packages and call it a day. EDIT: that workaround doesn’t currently work.
1 Like