Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> I stopped using fish a while ago, when it would crash whenever I opened a console session (so I couldn't do anything when X didn't start)

This is why I launch my interactive shell from a failsafe /bin/sh instead of using chsh. If zsh ever messes up horribly, I end up back in a good old bog standard shell prompt.



I was just wondering how you accomplish that.


I put this at the end of my ~/.profile:

    REALSHELLS="/usr/local/bin/zsh /usr/bin/zsh"
    for REALSHELL in $REALSHELLS; do
    	if [ -e $REALSHELL ]; then
    		if ! $REALSHELL -l; then
    			echo "$REALSHELL exit $?"
    		fi
    		echo "$SHELL exit in 1s, Ctrl-C to abort"
    		sleep 1 && exit
    	fi
    done
    echo "No shells in [$REALSHELLS] found, falling back to $SHELL"




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: