#!/bin/zsh COMMAND=$1 error() { echo "Your package manager is not supported." echo "$COMMAND could not be installed automatically." echo "Please install $COMMAND manually before running this script." exit 1 } if ! command -v $COMMAND &> /dev/null then if [[ "$OSTYPE" == "linux-gnu"* ]]; then echo "$COMMAND not found. Installing $COMMAND..." DISTRO=$(cat /etc/os-release | grep -oP '(?<=^ID=).+' | tr -d '"') if [[ $DISTRO == "arch" ]]; then sudo pacman -S $COMMAND exit 0 elif [[ $DISTRO == "archarm" ]]; then sudo pacman -S $COMMAND exit 0 elif [[ $DISTRO == "ubuntu" ]]; then sudo apt-get install $COMMAND exit 0 elif [[ $DISTRO == "fedora" ]]; then sudo dnf install $COMMAND exit 0 elif [[ $DISTRO == "centos" ]]; then sudo yum install $COMMAND exit 0 elif [[ $DISTRO == "debian" ]]; then sudo apt install $COMMAND exit 0 else error fi elif [[ "$OSTYPE" == "darwin"* ]]; then echo "Command not found. Installing $COMMAND..." if command -v "brew" &> /dev/null then brew install $COMMAND elif command -v "port" &> /dev/null then sudo port install $COMMAND else echo "Homebrew or MacPorts not found. Please install one of them before running this script." exit 1 fi else error fi else echo "$COMMAND is already installed." fi