Browse Source

install2

main
pvincent 3 weeks ago
parent
commit
b488427332
  1. 4
      lib/functions.bash
  2. 20
      lib/self-upgrade.bash
  3. 6
      lib/uninstall.bash

4
lib/functions.bash

@ -2,6 +2,10 @@
## ASSERT Functions ## ASSERT Functions
function sudo_root {
[[ "$UID" -ne 0 ]] && sudo -vp 'SUDO privilege required: '
}
function assert_root { function assert_root {
[[ "$UID" -ne 0 ]] && echo 'root privilege required' && return 1 [[ "$UID" -ne 0 ]] && echo 'root privilege required' && return 1
true true

20
lib/self-upgrade.bash

@ -6,33 +6,23 @@
function self_upgrade { function self_upgrade {
local backup="$MIAOU_BASH_DIR".before_upgrade local backup="$MIAOU_BASH_DIR".before_upgrade
mv "$MIAOU_BASH_DIR" "$backup"
sudo mv "$MIAOU_BASH_DIR" "$backup"
# TODO: install2
if "$backup"/install.sh upgraded; then if "$backup"/install.sh upgraded; then
rm -rf "$backup"
sudo rm -rf "$backup"
echo -n "version: " echo -n "version: "
. "$MIAOU_BASH_DIR"/bin/miaou-bash --version . "$MIAOU_BASH_DIR"/bin/miaou-bash --version
else else
echo "ERROR: trouble during self-upgrade: revert back" echo "ERROR: trouble during self-upgrade: revert back"
rm -rf "$MIAOU_BASH_DIR"
mv "$backup" "$MIAOU_BASH_DIR"
fi
}
#TODO: to remove
function safe_mode {
if [[ ! -v MIAOU_BASH_DIR ]]; then
>&2 echo 'WARNING: MIAOU_BASH_DIR undefined : safe-mode enabled'
MIAOU_BASH_DIR=/opt/miaou-bash
export MIAOU_BASH_DIR
sudo rm -rf "$MIAOU_BASH_DIR"
sudo mv "$backup" "$MIAOU_BASH_DIR"
fi fi
} }
# MAIN # MAIN
safe_mode
source "$MIAOU_BASH_DIR"/lib/functions.bash source "$MIAOU_BASH_DIR"/lib/functions.bash
assert_system_mode assert_system_mode
assert_root
current=$(miaou-bash --version) current=$(miaou-bash --version)
latest=$("$MIAOU_BASH_DIR/tools/wget_semver" artcode miaou/miaou-bash) latest=$("$MIAOU_BASH_DIR/tools/wget_semver" artcode miaou/miaou-bash)

6
lib/uninstall.bash

@ -17,17 +17,17 @@ function uninstall {
rm -f /etc/vimrc/vimrc.{azerty,core,local,miaou,rookie} rm -f /etc/vimrc/vimrc.{azerty,core,local,miaou,rookie}
rm -rf /opt/miaou-bash rm -rf /opt/miaou-bash
unset MIAOU_BASH_DIR
} }
# Main # Main
source "$MIAOU_BASH_DIR"/lib/functions.bash source "$MIAOU_BASH_DIR"/lib/functions.bash
assert_system_mode assert_system_mode
assert_root
cd || exit 2 # exit should not occur!
sudo_root
if _confirm_destructive 2>/dev/null; then if _confirm_destructive 2>/dev/null; then
cd || exit 2 # exit should not occur!
uninstall uninstall
source /etc/profile
echo 'MIAOU-BASH fully uninstalled, previous settings restored from original' echo 'MIAOU-BASH fully uninstalled, previous settings restored from original'
else else
builtin exit 1 builtin exit 1

Loading…
Cancel
Save