diff --git a/installer.sh b/installer.sh index c1bee5c..85448ea 100644 --- a/installer.sh +++ b/installer.sh @@ -1,9 +1,6 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh -shopt -s extglob -set -o errtrace -set -o errexit -set -o pipefail +set -eu install() { BINARY_NAME="crib" @@ -43,12 +40,13 @@ install() { GITHUB_URL="https://github.com/SyedM-dev/crib/releases/download/$VERSION/crib-linux-x86_64-ruby$RUBY_VERSION" - missing=() - command -v ruby >/dev/null 2>&1 || missing+=("ruby") - ldconfig -p | grep libmagic >/dev/null 2>&1 || missing+=("libmagic") + missing_ruby="" + missing_magic="" + command -v ruby >/dev/null 2>&1 || missing_ruby="ruby" + ldconfig -p | grep libmagic >/dev/null 2>&1 || missing_magic="libmagic" - if [ ${#missing[@]} -ne 0 ]; then - echo "Missing dependencies: ${missing[*]}" + if [ -n "$missing_ruby" ] || [ -n "$missing_magic" ]; then + echo "Missing dependencies: ${missing_ruby} ${missing_magic}" echo "Install them using your package manager:" echo "Ubuntu/Debian: sudo apt install ruby libmagic1" echo "Arch: sudo pacman -S ruby file" @@ -58,7 +56,7 @@ install() { echo "Installing Crib (Ruby $RUBY_VERSION)" - echo "Install locally ~/.local/bin or globally /usr/bin? [l/g]" + echo "Install locally (~/.local/bin) or globally (/usr/bin)? [l/g]" read -r choice case "$choice" in l | L)