I would like to install cryoSPARC, and looking through the readme it looks like this program requires that the user use bash
as their default shell. At the moment I'm using tcsh
, and have built up a .cshrc
file that I wouldn't know how to translate into a .bashrc
file so I'd rather not change shells.
The software is to be installed on one particular machine that I use, of several that I have access to. I access this computer via ssh -X
. So perhaps I could change the default shell only for when I log in to this particular machine?
Does anyone have any suggestions about the best way to install this software?
Turns out the reason that bash
is required to be the default shell is probably because of the way the program is structured: when it runs a job, the master checks all the workers and runs the job on one of the workers via ssh
. That happens in whatever the user's default shell is, in my case tcsh
. Just to see if it helped, I tried adding the lines
setenv SHELL /bin/bash
exec /bin/bash --login
to the end of my .cshrc
file, but this a) didn't seem to help and b) created issues with login where when I tried to log in to a machine, I got a black screen and then was back at the login screen. However, I'd rather not change my default shell anyway, because of the reason above. Does anyone have any ideas about how to get around this?
You can just start a
bash
shell in thessh
shell (whatever the default shell forssh
may be), or start it directly whenssh
ing with:This last approach however may not pick up your
tcsh
environment, if you want it to do that use the following command instead:Source: SSH then change Shell · SO