install2
This commit is contained in:
+26
-22
@@ -1,5 +1,4 @@
|
|||||||
#!/usr/bin/bash -E
|
#!/usr/bin/env bash
|
||||||
# shellcheck disable=all
|
|
||||||
|
|
||||||
## CONSTANTS
|
## CONSTANTS
|
||||||
|
|
||||||
@@ -7,11 +6,23 @@ MAIN_TAR_GZ_URL="https://git.artcode.re/miaou/miaou-bash/archive/main.tar.gz"
|
|||||||
|
|
||||||
## FUNCTIONS
|
## FUNCTIONS
|
||||||
|
|
||||||
function bootstrap {
|
function upgrade {
|
||||||
cd "$(mktemp -d)" || exit 3
|
source_miaou_lib self_upgrade
|
||||||
curl -s -O $MAIN_TAR_GZ_URL
|
}
|
||||||
tar -xzf main.tar.gz --directory $(dirname "$MIAOU_BASH_DIR")
|
|
||||||
. "$MIAOU_BASH_DIR"/bin/miaou-bash "$MIAOU_BASH_DIR/lib/initiate.bash"
|
function install {
|
||||||
|
[[ "$UID" -ne 0 ]] && sudo -vp 'SUDO privilege required: '
|
||||||
|
|
||||||
|
MIAOU_BASH_DIR=/opt/miaou-bash
|
||||||
|
export MIAOU_BASH_DIR
|
||||||
|
cd /tmp
|
||||||
|
|
||||||
|
curl -sO $MAIN_TAR_GZ_URL
|
||||||
|
sudo tar -xzf main.tar.gz --directory $(dirname "$MIAOU_BASH_DIR")
|
||||||
|
source_miaou_lib initiate
|
||||||
|
|
||||||
|
source /etc/profile
|
||||||
|
echo "miaou-bash successfully installed"
|
||||||
}
|
}
|
||||||
|
|
||||||
function assert_supported_distro {
|
function assert_supported_distro {
|
||||||
@@ -25,26 +36,19 @@ function assert_supported_distro {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function once_installed {
|
function once_installed {
|
||||||
[[ -d "$MIAOU_BASH_DIR" &&
|
[[ -v MIAOU_BASH_DIR && -d "$MIAOU_BASH_DIR" &&
|
||||||
-L /etc/inputrc &&
|
-L /etc/inputrc &&
|
||||||
"$(readlink /etc/inputrc)" == "$MIAOU_BASH_DIR"/etc/inputrc ]]
|
"$(readlink /etc/inputrc)" == "$MIAOU_BASH_DIR"/etc/inputrc ]]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function source_miaou_lib {
|
||||||
|
. "$MIAOU_BASH_DIR"/bin/miaou-bash "$MIAOU_BASH_DIR/lib/"$1".bash"
|
||||||
|
}
|
||||||
|
|
||||||
## MAIN
|
## MAIN
|
||||||
|
|
||||||
|
# source <(curl -s https://git.artcode.re/miaou/miaou-bash/raw/branch/main/install2.sh)
|
||||||
|
|
||||||
set -Eeuo pipefail
|
set -Eeuo pipefail
|
||||||
|
|
||||||
assert_supported_distro
|
assert_supported_distro
|
||||||
deployment_type_adjective="${1:-installed}"
|
once_installed && upgrade || install
|
||||||
[[ ! -v MIAOU_BASH_DIR ]] && MIAOU_BASH_DIR=/opt/miaou-bash && export MIAOU_BASH_DIR
|
|
||||||
|
|
||||||
if [[ "$UID" -ne 0 ]]; then
|
|
||||||
sudo -vp 'root privilege required (SUDO): '
|
|
||||||
curl -s https://git.artcode.re/miaou/miaou-bash/raw/branch/main/install2.sh | sudo bash
|
|
||||||
source /etc/profile
|
|
||||||
elif once_installed; then
|
|
||||||
. "$MIAOU_BASH_DIR"/bin/miaou-bash "$MIAOU_BASH_DIR/lib/self-upgrade.bash"
|
|
||||||
else
|
|
||||||
bootstrap
|
|
||||||
echo "miaou-bash successfully $deployment_type_adjective"
|
|
||||||
fi
|
|
||||||
|
|||||||
Reference in New Issue
Block a user