summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorPablo Tamarit <pablo.tmrt@gmail.com>2015-05-05 19:49:19 +0200
committerPablo Tamarit <pablo.tmrt@gmail.com>2015-05-05 19:49:19 +0200
commit03b8c199e591de73de3824fc6b366138964c1ba6 (patch)
tree6bce22221ca4cf231edebf2124efe2523dca8f63 /tools
parent140034605edd0f72c548685d39e49687a44c1b23 (diff)
downloadzsh-03b8c199e591de73de3824fc6b366138964c1ba6.tar.gz
zsh-03b8c199e591de73de3824fc6b366138964c1ba6.tar.bz2
zsh-03b8c199e591de73de3824fc6b366138964c1ba6.zip
Fix 'chsh' by checking '/etc/shells' instead of using 'which'
fix test for chsh in install in case $SHELL is zsh but not the last one in /etc/shells fixes #3026 fixes #3779 fixes #3780
Diffstat (limited to 'tools')
-rwxr-xr-xtools/install.sh6
1 files changed, 4 insertions, 2 deletions
diff --git a/tools/install.sh b/tools/install.sh
index bd4c55749..c83a6f23d 100755
--- a/tools/install.sh
+++ b/tools/install.sh
@@ -32,10 +32,12 @@ sed -i -e "/export PATH=/ c\\
export PATH=\"$PATH\"
" ~/.zshrc
-if [ "$SHELL" != "$(which zsh)" ]; then
+TEST_CURRENT_SHELL=$(expr "$SHELL" : '.*/\(.*\)')
+if [ "$TEST_CURRENT_SHELL" != "zsh" ]; then
echo "\033[0;34mTime to change your default shell to zsh!\033[0m"
- chsh -s `which zsh`
+ chsh -s $(grep /zsh$ /etc/shells | tail -1)
fi
+unset TEST_CURRENT_SHELL
echo "\033[0;32m"' __ __ '"\033[0m"
echo "\033[0;32m"' ____ / /_ ____ ___ __ __ ____ _____/ /_ '"\033[0m"