ink-os/arch/runs/defaults

51 lines
1.3 KiB
Bash
Executable File

#!/usr/bin/env bash
#-----------------------------------
# Name: defoults
# Version: 1.0.0
# Author: Solomon Laing
# Description:
# Installs all of my default programs
#-----------------------------------
clear
default_programs="./default-programs"
dependencies=$(sed -n '/DEFAULTS_START/,/DEFAULTS_END/p' $default_programs | sed -e 's/DEFAULTS_START//' -e 's/DEFAULTS_END//')
# check user is happy to run this script
echo "This script is going to install all of my default programs, e.g.: browser, rss reader, etc. As such it will ask for root privilages."
echo "Defaults:$dependencies"
# if yay is not installed the run the install script
if ! command -v yay &>/dev/null; then
./yay
fi
failures=()
# run though each dependency and install it if it's not already installed
for dependency in $dependencies; do
sudo -v
if ! yay -Qi $dependency &>/dev/null; then
echo "Installing $dependency and it's dependencies..."
yay -S --noconfirm $dependency
fi
if ! yay -Qi $dependency &>/dev/null; then
failures+=("$dependency\n")
fi
done
total_failures=$((${#failures[@]}))
if [ $total_failures -gt 0 ]; then
echo "$total_failures of the programs failed to install..."
echo -e "${failures[@]}"
exit 1
else
echo "Default programs sucessfully installed"
fi
exit 0