63 lines
1.5 KiB
Bash
63 lines
1.5 KiB
Bash
#!/bin/bash
|
|
# ─< Helper functions >─────────────────────────────────────────────────────────────────
|
|
declare -a echo_messages
|
|
|
|
function echo_error() {
|
|
local message="\033[0;1;31m❌ ERROR:\033[0;31m\t${*}\033[0m"
|
|
echo -e "$message"
|
|
echo_messages+=("$message")
|
|
}
|
|
|
|
# Function to print all stored messages
|
|
function print_echo_messages() {
|
|
echo -e "\033[38;5;196mL\033[38;5;202mo\033[38;5;208mg\033[38;5;214m \033[38;5;220mo\033[38;5;226mu\033[38;5;118mt\033[38;5;46mp\033[38;5;48mu\033[38;5;51mt\033[38;5;45m:"
|
|
for msg in "${echo_messages[@]}"; do
|
|
echo -e "$msg"
|
|
done
|
|
}
|
|
|
|
# ─< Check if the given command exists silently >─────────────────────────────────────────
|
|
command_exists() {
|
|
command -v "$@" >/dev/null 2>&1
|
|
}
|
|
|
|
packages=(
|
|
"brave"
|
|
"docker"
|
|
"neovide"
|
|
"neovim"
|
|
"xmrig"
|
|
"yazi"
|
|
"ytgo"
|
|
)
|
|
|
|
_help() {
|
|
echo "Just use _install 'packagename' to install some packages"
|
|
echo "Available packages are:"
|
|
echo "${packages[@]}"
|
|
}
|
|
|
|
_install_func() {
|
|
curl -fsSL "https://git.k4li.de/pika/scripts/raw/branch/main/bash/installs/${1}.sh" | sh
|
|
}
|
|
|
|
_check() {
|
|
if ! command_exists curl; then
|
|
echo_error "curl was not found on this system!"
|
|
echo_error "exiting now!"
|
|
exit 1
|
|
fi
|
|
}
|
|
|
|
_install() {
|
|
case "$1" in
|
|
--help | -h)
|
|
_help
|
|
;;
|
|
*)
|
|
if _check; then
|
|
_install_func "$1"
|
|
fi
|
|
;;
|
|
esac
|
|
}
|