#!/bin/bash set -e # ========= COLORS ========= RED='\033[1;31m' GREEN='\033[1;32m' YELLOW='\033[1;33m' BLUE='\033[1;34m' PURPLE='\033[1;35m' CYAN='\033[1;36m' NC='\033[0m' clear echo " _______ _ " echo " |__ __| (_) " echo " | | __ _ _ ____ ___ _ __ " echo " | |/ _\` | '_ \\ \\ / / | '__|" echo " | | (_| | | | \\ V /| | | " echo " |_|\\__,_|_| |_|\\_/ |_|_| " echo " " echo " Installer Script " echo "===============================" echo -e "${YELLOW}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}" # ========= WARNING ========= warning() { echo -e "${RED}⚠ WARNING ⚠${NC}" echo -e "${YELLOW}This installation may overwrite panel files." echo -e "Your panel may become FRESH/RESET." echo -e "Please ensure you have a FULL BACKUP.${NC}" echo read -rp "Continue? (yes/no): " c case $c in yes|y|Y) ;; *) echo -e "${RED}Cancelled.${NC}"; exit 1 ;; esac } # ========= PANEL PATH AUTO DETECT ========= detect_panel_path() { if [ -d "/var/www/pterodactyl" ]; then PANEL_PATH="/var/www/pterodactyl" elif [ -d "/var/www/reviactyl" ]; then PANEL_PATH="/var/www/reviactyl" else echo -e "${RED}❌ No valid panel path found.${NC}" echo -e "${YELLOW}Expected:" echo " - /var/www/pterodactyl" echo " - /var/www/reviactyl${NC}" exit 1 fi echo -e "${GREEN}✔ Panel detected at: ${PANEL_PATH}${NC}" } # ========= PANELS ========= install_reviactyl() { bash <(curl -s https://raw.githubusercontent.com/TS-25/SRJ-THEME/refs/heads/main/reviactyl) } # ========= BLUEPRINT ========= install_blueprint() { warning apt install curl git -y bash <(curl -s https://raw.githubusercontent.com/TS-25/SRJ-THEME/refs/heads/main/blueprint) } # ========= THEMES ========= install_nebula() { warning detect_panel_path cd "$PANEL_PATH" wget -O nebula.blueprint https://github.com/TS-25/SRJ-THEME/releases/latest/download/nebula.blueprint blueprint -install nebula } install_euphoria() { warning detect_panel_path cd "$PANEL_PATH" wget -O euphoriatheme.blueprint https://github.com/TS-25/SRJ-THEME/releases/latest/download/euphoriatheme.blueprint blueprint -install euphoriatheme } install_revix() { warning bash <(curl -s https://raw.githubusercontent.com/TS-25/SRJ-THEME/refs/heads/main/revix-theme) } install_arix() { echo -e "${GREEN}Installing ARIX Theme v1.3.1...${NC}" bash <(curl -s https://raw.githubusercontent.com/TS-25/arix/refs/heads/main/arix) } install_reviactyl_blueprint() { warning bash <(curl -s https://raw.githubusercontent.com/TS-25/SRJ-THEME/refs/heads/main/reviactyl-blueprint) } # ========= ADDONS (AUTO PATH) ========= install_addon() { detect_panel_path cd "$PANEL_PATH" wget -O "$1.blueprint" "$2" blueprint -install "$1" } install_mcplugins() { install_addon "mcplugins" "https://github.com/TS-25/SRJ-THEME/releases/latest/download/mcplugins.blueprint" } install_subdomain() { install_addon "subdomains" "https://github.com/TS-25/SRJ-THEME/releases/latest/download/subdomains.blueprint" } install_resource_manager() { install_addon "resourcemanager" "https://github.com/TS-25/SRJ-THEME/releases/download/V1.0.0/resourcemanager.blueprint" } install_pull_files() { install_addon "pullfiles" "https://github.com/TS-25/SRJ-THEME/releases/download/V1.0.0/pullfiles.blueprint" } install_player_manager() { install_addon "minecraftplayermanager" "https://github.com/TS-25/SRJ-THEME/releases/download/V1.0.0/minecraftplayermanager.blueprint" } install_huxregister() { install_addon "huxregister" "https://github.com/TS-25/SRJ-THEME/releases/latest/download/huxregister.blueprint" } install_loader() { install_addon "loader" "https://github.com/TS-25/SRJ-THEME/releases/latest/download/loader.blueprint" } install_announce() { install_addon "announce" "https://github.com/TS-25/SRJ-THEME/releases/latest/download/announce.blueprint" } install_minecraftpluginmanager() { install_addon "minecraftpluginmanager" "https://github.com/TS-25/SRJ-THEME/releases/latest/download/minecraftpluginmanager.blueprint" } install_serverbackgrounds() { install_addon "serverbackgrounds" "https://github.com/TS-25/SRJ-THEME/releases/latest/download/serverbackgrounds.blueprint" } install_simplefavicons() { install_addon "simplefavicons" "https://github.com/TS-25/SRJ-THEME/releases/latest/download/simplefavicons.blueprint" } install_startupchanger() { install_addon "startupchanger" "https://github.com/TS-25/SRJ-THEME/releases/latest/download/startupchanger.blueprint" } install_versionchanger() { install_addon "versionchanger" "https://github.com/TS-25/SRJ-THEME/releases/latest/download/versionchanger.blueprint" } # ========= MENU ========= while true; do echo "" echo "1) Install Panels" echo "2) Install Themes" echo "3) Install Addons (blueprint)" echo "4) Exit" read -rp "Select option: " main case $main in 1) echo "1) Install Reviactyl" read -rp "Choose panel: " p case $p in 1) install_reviactyl ;; esac ;; 2) echo "1) Blueprint" echo "2) Nebula" echo "3) Euphoria" echo "4) Revix" echo "5) Arix v1.3.1" echo "6) Reviactyl Blueprint" read -rp "Choose theme: " t case $t in 1) install_blueprint ;; 2) install_nebula ;; 3) install_euphoria ;; 4) install_revix ;; 5) install_arix ;; 6) install_reviactyl_blueprint ;; esac ;; 3) echo "---- ADDONS ----" echo "1) MC Plugins" echo "2) Subdomain" echo "3) Resource Manager" echo "4) Pull Files" echo "5) Player Manager" echo "6) HuxRegister" echo "7) Loader" echo "8) Announce" echo "9) Minecraft Plugin Manager" echo "10) Server Backgrounds" echo "11) Simple Favicons" echo "12) Startup Changer" echo "13) Version Changer" read -rp "Choose addon: " a case $a in 1) install_mcplugins ;; 2) install_subdomain ;; 3) install_resource_manager ;; 4) install_pull_files ;; 5) install_player_manager ;; 6) install_huxregister ;; 7) install_loader ;; 8) install_announce ;; 9) install_minecraftpluginmanager ;; 10) install_serverbackgrounds ;; 11) install_simplefavicons ;; 12) install_startupchanger ;; 13) install_versionchanger ;; esac ;; 4) exit 0 ;; esac done