diff options
Diffstat (limited to 'utils/installer')
| -rwxr-xr-x | utils/installer/install.sh | 89 | 
1 files changed, 37 insertions, 52 deletions
| diff --git a/utils/installer/install.sh b/utils/installer/install.sh index 972534bd..82e02358 100755 --- a/utils/installer/install.sh +++ b/utils/installer/install.sh @@ -1,5 +1,4 @@  #!/usr/bin/env bash -  set -eo pipefail  #Set branch to master unless specified by the user @@ -75,52 +74,40 @@ function parse_arguments() {    done  } +function msg() { +  local text="$1" +  local div_width="80" +  printf "%${div_width}s\n" ' ' | tr ' ' - +  printf "%s\n" "$text" +} +  function main() {    parse_arguments "$@" -  cat <<'EOF' +  print_logo -      88\                                                   88\ -      88 |                                                  \__| -      88 |88\   88\ 888888$\   888888\   888888\ 88\    88\ 88\ 888888\8888\ -      88 |88 |  88 |88  __88\  \____88\ 88  __88\\88\  88  |88 |88  _88  _88\ -      88 |88 |  88 |88 |  88 | 888888$ |88 |  \__|\88\88  / 88 |88 / 88 / 88 | -      88 |88 |  88 |88 |  88 |88  __88 |88 |       \88$  /  88 |88 | 88 | 88 | -      88 |\888888  |88 |  88 |\888888$ |88 |        \$  /   88 |88 | 88 | 88 | -      \__| \______/ \__|  \__| \_______|\__|         \_/    \__|\__| \__| \__| - -EOF - -  __add_separator "80" - -  echo "Detecting platform for managing any additional neovim dependencies" +  msg "Detecting platform for managing any additional neovim dependencies"    detect_platform    check_system_deps -  __add_separator "80" -    if [ "$ARGS_INSTALL_DEPENDENCIES" -eq 1 ]; then -    echo "Would you like to install lunarvim's NodeJS dependencies?" +    msg "Would you like to install lunarvim's NodeJS dependencies?"      read -p "[y]es or [n]o (default: no) : " -r answer      [ "$answer" != "${answer#[Yy]}" ] && install_nodejs_deps -    echo "Would you like to install lunarvim's Python dependencies?" +    msg "Would you like to install lunarvim's Python dependencies?"      read -p "[y]es or [n]o (default: no) : " -r answer      [ "$answer" != "${answer#[Yy]}" ] && install_python_deps -    echo "Would you like to install lunarvim's Rust dependencies?" +    msg "Would you like to install lunarvim's Rust dependencies?"      read -p "[y]es or [n]o (default: no) : " -r answer      [ "$answer" != "${answer#[Yy]}" ] && install_rust_deps    fi -  __add_separator "80" - -  echo "Backing up old LunarVim configuration" +  msg "Backing up old LunarVim configuration"    backup_old_config -  __add_separator "80" -    if [ "$ARGS_OVERWRITE" -eq 1 ]; then      for dir in "${__lvim_dirs[@]}"; do        [ -d "$dir" ] && rm -rf "$dir" @@ -129,11 +116,8 @@ EOF    install_packer -  __add_separator "80" -    if [ -e "$LUNARVIM_RUNTIME_DIR/lvim/init.lua" ]; then -    echo "Updating LunarVim" -    update_lvim +    bash "$LUNARVIM_RUNTIME_DIR/lvim/utils/installer/update_lvim.sh"    else      if [ "$ARGS_LOCAL" -eq 1 ]; then        link_local_lvim @@ -143,7 +127,9 @@ EOF      setup_lvim    fi -  __add_separator "80" +  msg "Thank you for installing LunarVim!!" +  echo "You can start it by running: $INSTALL_PREFIX/bin/lvim" +  echo "Do not forget to use a font with glyphs (icons) support [https://github.com/ryanoasis/nerd-fonts]"  }  function detect_platform() { @@ -287,18 +273,18 @@ function backup_old_config() {  function install_packer() {    if [ -e "$LUNARVIM_PACK_DIR/packer/start/packer.nvim" ]; then -    echo "Packer already installed" +    msg "Packer already installed"    else      if ! git clone --depth 1 "https://github.com/wbthomason/packer.nvim" \        "$LUNARVIM_PACK_DIR/packer/start/packer.nvim"; then -      echo "Failed to clone Packer. Installation failed." +      msg "Failed to clone Packer. Installation failed."        exit 1      fi    fi  }  function clone_lvim() { -  echo "Cloning LunarVim configuration" +  msg "Cloning LunarVim configuration"    if ! git clone --branch "$LV_BRANCH" \      --depth 1 "https://github.com/${LV_REMOTE}" "$LUNARVIM_RUNTIME_DIR/lvim"; then      echo "Failed to clone repository. Installation failed." @@ -338,12 +324,12 @@ EOF  function remove_old_cache_files() {    local packer_cache="$LUNARVIM_CONFIG_DIR/plugin/packer_compiled.lua"    if [ -e "$packer_cache" ]; then -    echo "Removing old packer cache file" +    msg "Removing old packer cache file"      rm -f "$packer_cache"    fi    if [ -e "$LUNARVIM_CACHE_DIR/luacache" ] || [ -e "$LUNARVIM_CACHE_DIR/lvim_cache" ]; then -    echo "Removing old startup cache file" +    msg "Removing old startup cache file"      rm -f "$LUNARVIM_CACHE_DIR/{luacache,lvim_cache}"    fi  } @@ -352,7 +338,7 @@ function setup_lvim() {    remove_old_cache_files -  echo "Installing LunarVim shim" +  msg "Installing LunarVim shim"    setup_shim @@ -368,26 +354,25 @@ function setup_lvim() {    echo "Packer setup complete"    cp "$LUNARVIM_RUNTIME_DIR/lvim/utils/installer/config.example.lua" "$LUNARVIM_CONFIG_DIR/config.lua" - -  echo "Thank you for installing LunarVim!!" -  echo "You can start it by running: $INSTALL_PREFIX/bin/lvim" -  echo "Do not forget to use a font with glyphs (icons) support [https://github.com/ryanoasis/nerd-fonts]"  }  function update_lvim() { -  git -C "$LUNARVIM_RUNTIME_DIR/lvim" fetch --quiet -  if ! git -C "$LUNARVIM_RUNTIME_DIR/lvim" diff --quiet "@{upstream}"; then -    git -C "$LUNARVIM_RUNTIME_DIR/lvim" merge --ff-only --progress || -      echo "Unable to guarantee data integrity while updating. Please do that manually instead." && exit 1 -  fi -  echo "Clearing up old startup cache" -  "$INSTALL_PREFIX/bin/lvim" --headless +LvimCacheReset +q -  echo "Your LunarVim installation is now up to date!" +  "$INSTALL_PREFIX/bin/lvim" --headless +'LvimUpdate' +q  } -function __add_separator() { -  local DIV_WIDTH="$1" -  printf "%${DIV_WIDTH}s\n" ' ' | tr ' ' - +function print_logo() { +  cat <<'EOF' + +      88\                                                   88\ +      88 |                                                  \__| +      88 |88\   88\ 888888$\   888888\   888888\ 88\    88\ 88\ 888888\8888\ +      88 |88 |  88 |88  __88\  \____88\ 88  __88\\88\  88  |88 |88  _88  _88\ +      88 |88 |  88 |88 |  88 | 888888$ |88 |  \__|\88\88  / 88 |88 / 88 / 88 | +      88 |88 |  88 |88 |  88 |88  __88 |88 |       \88$  /  88 |88 | 88 | 88 | +      88 |\888888  |88 |  88 |\888888$ |88 |        \$  /   88 |88 | 88 | 88 | +      \__| \______/ \__|  \__| \_______|\__|         \_/    \__|\__| \__| \__| + +EOF  }  main "$@" | 
