#!/bin/bash # assumes that bash is installed #!/bin/bash # must! be run as sudo install_shell_base () { # TODO have a cross distro package install [[ ! $(which git) ]] && apt-get install --no-install-recommends git -y [[ ! $EUID -eq 0 ]] && { echo ERROR script must be run as root; return; } mkdir -p /shell/base git clone https://git.kebler.net/bash/shell-base.git /shell/base chown -R ${1:-$1000}:${1:-1000} /shell chmod -R +r /shell /bin/bash /shell/base/install/install.sh ${1:-$1000} } # remote_install_shell_base -r # module_load install-shell-base && remote_install_shell_base -r newboxr remote_install_shell_base () { module_load remote local supass;local user if [[ $1 == "-r" ]]; then shift 1; user=$2; else [[ ! $2 ]] && { echo sudo password for remote user required; return 2; } supass="-p $2" user=$3 fi remote_script $supass install-shell-base $user -- $1 } # # if script was executed then call the function (return 0 2>/dev/null) || install_shell_base $@ # example # $ module_load install-shell-base # $ remote_install_shell_base -r portabler david