Cubbli and command line (shell)

Last modified by Niko-Ville Koljonen on 2024/02/16 11:02

The default shell in Cubbli is /bin/bash (GNU Bash). This can not be changed (sorry!) and you should not attempt to change it with chsh even if you have sudo rights in your Cubbli host. All Cubbli logon scripts have been written with the assumption that the default shell is bash. We don't have the resources to test the login scripts with other options. Even if changing the default shell does not cause problems for your environment immediately, it is likely to cause them in the future. 

If you want to use some another shell, you can start it fromĀ  your own ~/.bashrc startup script instead (example below). You don't need sudo rights for this and the system default login scripts will still work as usual. You can also use shells installed in your home directory, which means that you can (compile and) install your own shell, also without sudo rights, if you don't like the system defaults.

To switch your default shell add this to your ~/.bashrc:

\# Switch shell to something else (JJ 2020-05-13)
case "$-" in
\*i\*)
export SHELL=/usr/bin/zsh
tty > /dev/null && echo "Your \~/.bashrc is switching interactive SHELL to $SHELL"
\[ -x $SHELL \] && exec $SHELL "$@"
echo "Apparently $SHELL is not available here. Continuing with bash."
export SHELL=/bin/bash
;;
esac

And add this to your ~/.bash_profile to also apply the change to login shells:

# JJ: Apply .bashrc also on login shells
. ~/.bashrc

If there exists a shell you'd like to be installed by default, please contact helpdesk@helsinki.fi or create an issue in https://version.helsinki.fi/it4scifi/cubbli-help/-/issues. The Cubbli administrators won't know about missing software, unless someone requests its installation.

Please, don't use csh and tcsh, even if you have already used them for decades. You can use your old csh scripts without changing your shell. Some things belong to the wastebasket of history.

Currently the default Cubbli installation has the following shells:

  • Bash
  • Ksh
  • Zsh
  • Fish
  • Powershell (yes, really).
  • Tcsh (don't use it)

If you have sudo rights, it is off course possible to change your own default shell anyway. If you insist on doing this, please remember to mention this in all your support requests, even when you think they are unrelated to your shell selection.