Command Shell

From NixOS Wiki
Revision as of 05:35, 12 June 2021 by imported>Flexagoon

A shell is a program that translates text commands (like ls, vim, reboot etc) into instructions for your computer. The default shell on NixOS is bash, but it can be easily changed.

Changing default shell

Shells can be changed system-wide and per-user. To change the shell system-wide, add the following line to your config:

Note: Zsh is used here as an example. You can use other shells, eg pkgs.fish.
 
/etc/nixos/configuration.nix
users.defaultUserShell = pkgs.zsh;

then run nixos-rebuild switch and reboot your system.

To only change the default shell for one of the users, add

 
/etc/nixos/configuration.nix
shell = pkgs.zsh;

to your user's section like so:

 
/etc/nixos/configuration.nix
users.users.yourname = {}
  ... # Your user configuration
  shell = pkgs.zsh;
};

See also