#!/usr/bin/env sh export EPS_BASE_URL=${EPS_BASE_URL:-https://raw.githubusercontent.com/ej52/proxmox-scripts/main} export EPS_CT_INSTALL=false CLR_RD="\033[0;31m" CLR_RDB="\033[1;31m" CLR_CYB="\033[1;36m" CLR="\033[m" log_error () { printf "${CLR_RDB}✘ ${CLR_RD}$1${CLR}\n" exit 1 } while [ "$#" -gt 0 ]; do case $1 in --app) EPS_APP_NAME="$2" shift;; --cleanup) EPS_CLEANUP=true ;; *) log_error "Unrecognized option: ${CLR_CYB}$1${CLR}";; esac shift done EPS_APP_NAME=${EPS_APP_NAME:-} export EPS_CLEANUP=${EPS_CLEANUP:-false} if [ -z "$EPS_APP_NAME" ]; then log_error "No application provided" fi export EPS_APP_CONFIG=$(wget --no-cache -qO- $EPS_BASE_URL/apps/$EPS_APP_NAME/config.sh) if [ $? -gt 0 ]; then log_error "No config found for ${CLR_CYB}$EPS_APP_NAME${CLR}" fi EPS_APP_INSTALL=$(wget --no-cache -qO- $EPS_BASE_URL/apps/$EPS_APP_NAME/install.sh) if [ $? -gt 0 ]; then log_error "No install script found for ${CLR_CYB}$EPS_APP_NAME${CLR}" fi export EPS_OS_NAME=$(uname) export EPS_OS_DISTRO=$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release) if [ "$EPS_OS_NAME" != "Linux" ]; then log_error "OS not supported: ${CLR_CYB}$EPS_OS_NAME${CLR}" fi if [ "$EPS_OS_DISTRO" = "alpine" ]; then [ "$(command -v bash)" ] || apk add bash >/dev/null fi _utilDistro=$EPS_OS_DISTRO if [ "$EPS_OS_DISTRO" = "ubuntu" ]; then _utilDistro="debian" fi export EPS_UTILS_COMMON=$(wget --no-cache -qO- $EPS_BASE_URL/utils/common.sh) export EPS_UTILS_DISTRO=$(wget --no-cache -qO- $EPS_BASE_URL/utils/${_utilDistro}.sh) bash -c "$EPS_APP_INSTALL"