Altering Your Default Shell at RIT

!!! FOLLOW THESE INSTRUCTIONS PURELY AT YOUR OWN RISK !!!


     At R.I.T., all C.S. students are forced to have the shell 'csh' as their default shell. Many students have voiced a desire to change this to another shell. In most instances, this can be done at the system level, however here at R.I.T., shell-script dependencies on 'csh' by both faculty and administrators have rendered this impossible. Therefore, the alternative is to alter your configuration files so that the initial shell, 'csh' bootstraps the shell-du-jour. The following steps should fix the issue:


  1. Pick a shell of choice. The following URL contains information about the characteristics of different shells.
    http://www.faqs.org/faqs/unix-faq/shell/shell-differences/
  2. Find out if this shell is available on the R.I.T. Computer Science systems, look in /bin. If the shell is not installed, no one will install it for you, and it will NOT be supported by our system administrators. So if your account fails because of a self-compiled, unsupported shell being used, we will frown upon it heavily. If it is supported, then yay, keep reading!
  3. Immediately make a backup copy of your .cshrc file. This can be done with the command
    cp ~/.cshrc ~/.cshrc-old.

  4. CRUCIAL: Open at least two shell terminal windows. Ensure all editing is done in one window, and the other remains unadulterated. The subsequent windows are your safety nets and saving graces if things hit the fan. Neglecting this step increases your risk astronomically of massive headaches and trouble.

    Consider yourself duly warned.

  5. For any particular shell, convert the following lines to your needs (fix inside the <>'s, ) and add them to the bottom of your .cshrc file:
    .
    .
    .

    	if ( $?prompt != 0 ) then
                 if ( ${prompt:q} != "" ) then
                      setenv SHELL_NAME /bin/<bash, tcsh, ksh, etc>
                      if ( $SHELL != $SHELL_NAME ) then
                           echo "Loading $SHELL_NAME..."
                           set shell = $SHELL_NAME
                           setenv SHELL $SHELL_NAME
                           exec $SHELL
                      endif
                 endif
            endif
    	

  6. Every shell needs a file in your home directory if you want to do customizations to the shell propmt and set things up. For any particular shell "[shell]", with your favorite text editor, open a file called .[shell]rc, for example, .tcshrc for tcsh, .bashrc for bash. etc. in your home directory. Add any shell-specific customizations to this file (i.e., changing the looks of the prompt, overriding your PATH, etc.)
  7. Add any personal customizations, save all files, and try to connect to a different computer system (this will force a processing of all your environment & shell settings). Again, ensure this is done from one terminal window. Your new shell should be running. If it isn't, or the system hangs, your choices are as follows:
Good Luck!