diff --git a/install/install.sh b/install/install.sh index e8f3cd8..38046c7 100644 --- a/install/install.sh +++ b/install/install.sh @@ -7,10 +7,10 @@ uci_bash_shell_install () { # export BASH_SHELL_BASE="$(dirname "$(cd "$(dirname "${BASH_SOURCE:-$0}")" >/dev/null 2>&1 ; pwd -P )")" echo "Detected The UCI BASH Shell install directory: BASH_INSTALL_DIR=$install_dir" echo "Detected The UCI BASH Shell base directory: BASH_SHELL_BASE=$BASH_SHELL_BASE" - [[ $EUID -ne 0 ]] && usesudo="sudo -m" + [[ $EUID -ne 0 ]] && usesudo="sudo -E" $usesudo $SHELL $install_dir/scripts/copy-etc.sh $usesudo $SHELL $install_dir/scripts/copy-root.sh - [[ $1 ]] && [[ $(id -u $1 2> /dev/null) ]] && $usesudo -m $SHELL $install_dir/scripts/copy-user.sh "$@" + [[ $1 ]] && [[ $(id -u $1 2> /dev/null) ]] && $usesudo -E $SHELL $install_dir/scripts/copy-user.sh "$@" } # # if script was executed then call the function diff --git a/modules/uci-shell-install.lib b/modules/uci-shell-install.lib index b8c0b35..d87e1a4 100644 --- a/modules/uci-shell-install.lib +++ b/modules/uci-shell-install.lib @@ -21,10 +21,15 @@ # must! be run as sudo install_shell_base () { + if [[ $1 == "-f" ]];then + shift + echo forcing reinstall + else if [[ $BASH_SHELL_BASE ]] && [[ -d $BASH_SHELL_BASE ]]; then echo appears that UCI shell base is already installed at $BASH_SHELL_BASE echo upgrade instead using: 'module_load uci-shell-install; update_shell_base' - [[ $1 == "-f" ]] && { shift; echo forcing reinstall; } || return 1 + return 1 + fi fi if [[ ! $BASH_SHELL_GIT_URL ]]; then echo BASH_SHELL_GIT_URL must be set before install can proceed