From 66c2c1e9218b53ee0000423561e7a8a4b7d5902b Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Fri, 30 Nov 2018 15:03:30 +1300 Subject: Check value of login shell more thoroughly Some old GNU make(1) implementations (and possibly others) force SHELL to /bin/sh, so let's check the value more directly. --- check/login-shell.sh | 6 ++++-- install/login-shell.sh | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/check/login-shell.sh b/check/login-shell.sh index 2972d98d..88eac59e 100644 --- a/check/login-shell.sh +++ b/check/login-shell.sh @@ -1,10 +1,12 @@ -target=check-sh -case ${SHELL##*/} in +shell=$(getent passwd "$USER" | cut -d: -f7) +case ${shell##*/} in bash) target=check-bash ;; ksh|ksh88|ksh93|mksh|pdksh) target=check-ksh ;; zsh) target=check-zsh ;; + *) + target=check-sh ;; esac make "$target" diff --git a/install/login-shell.sh b/install/login-shell.sh index f38aa0c1..54741fde 100644 --- a/install/login-shell.sh +++ b/install/login-shell.sh @@ -1,10 +1,12 @@ -target=install-sh -case ${SHELL##*/} in +shell=$(getent passwd "$USER" | cut -d: -f7) +case ${shell##*/} in bash) target=install-bash ;; ksh|ksh88|ksh93|mksh|pdksh) target=install-ksh ;; zsh) target=install-zsh ;; + *) + target=install-sh ;; esac make "$target" -- cgit v1.2.3