From 3ed476d374aa5715fee9fef321e2a44c45b98b53 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 24 Jun 2026 12:33:34 +0200 Subject: [PATCH] feat: make site URL and branch configurable in update script --- update-Nitrov3.sh | 40 ++++++++++++++++++++++++++++------------ 1 file changed, 28 insertions(+), 12 deletions(-) diff --git a/update-Nitrov3.sh b/update-Nitrov3.sh index b21ec89..2c57d15 100755 --- a/update-Nitrov3.sh +++ b/update-Nitrov3.sh @@ -40,16 +40,32 @@ NITRO_SRC_DIR="${NITRO_CLIENT_DIR:-/var/www/Nitro-V3/public/configuration}" BACKUP_DIR="${NITRO_BACKUP_DIR:-$EMULATOR_DIR/Database Updates/backups}" NITRO_CLIENT="${NITRO_CLIENT_SRC:-/var/www/Nitro-V3}" NITRO_RENDERER="${NITRO_RENDERER_SRC:-/var/www/Nitro_Render_V3}" +NITRO_BRANCH="${NITRO_BRANCH:-main}" -# Critical URLs for catalog icons (from env, with current server defaults) -NITRO_IMAGE_LIBRARY_URL="${NITRO_IMAGE_LIBRARY_URL:-https://epicnabbo.nl/gamedata/c_images/}" -NITRO_HOF_FURNITURE_URL="${NITRO_HOF_FURNITURE_URL:-https://epicnabbo.nl/gamedata/icons}" -NITRO_API_URL="${NITRO_API_URL:-https://ws.epicnabbo.nl}" -NITRO_SOCKET_URL="${NITRO_SOCKET_URL:-wss://ws.epicnabbo.nl}" -NITRO_CAMERA_URL="${NITRO_CAMERA_URL:-http://epicnabbo.nl/camera/photo/}" -NITRO_GAMEDATA_URL="${NITRO_GAMEDATA_URL:-https://epicnabbo.nl/gamedata}" -NITRO_ASSET_URL="${NITRO_ASSET_URL:-https://epicnabbo.nl/gamedata/bundled}" -NITRO_FURNI_ASSET_ICON_URL="${NITRO_FURNI_ASSET_ICON_URL:-https://epicnabbo.nl/gamedata/icons/%libname%%param%_icon.png}" +# Prompt for site URL if not set, so it works on any VPS +while [ -z "${NITRO_SITE_URL:-}" ]; do + read -r -p "Enter your site URL (e.g. https://example.com): " NITRO_SITE_URL + NITRO_SITE_URL="${NITRO_SITE_URL%/}" +done + +# Derive ws/wss protocol from the site scheme +case "$NITRO_SITE_URL" in + https://*) NITRO_WS_PROTO="wss://" ; NITRO_DOMAIN="${NITRO_SITE_URL#https://}" ;; + http://*) NITRO_WS_PROTO="ws://" ; NITRO_DOMAIN="${NITRO_SITE_URL#http://}" ;; + *) NITRO_WS_PROTO="wss://" ; NITRO_DOMAIN="$NITRO_SITE_URL" ;; +esac + +# Critical URLs for catalog icons (from env, with automatic per-site defaults) +NITRO_IMAGE_LIBRARY_URL="${NITRO_IMAGE_LIBRARY_URL:-$NITRO_SITE_URL/gamedata/c_images/}" +NITRO_HOF_FURNITURE_URL="${NITRO_HOF_FURNITURE_URL:-$NITRO_SITE_URL/gamedata/icons}" +NITRO_API_URL="${NITRO_API_URL:-$NITRO_SITE_URL}" +if [ -z "${NITRO_SOCKET_URL:-}" ]; then + NITRO_SOCKET_URL="${NITRO_WS_PROTO}${NITRO_DOMAIN}" +fi +NITRO_CAMERA_URL="${NITRO_CAMERA_URL:-$NITRO_SITE_URL/camera/photo/}" +NITRO_GAMEDATA_URL="${NITRO_GAMEDATA_URL:-$NITRO_SITE_URL/gamedata}" +NITRO_ASSET_URL="${NITRO_ASSET_URL:-$NITRO_SITE_URL/gamedata/bundled}" +NITRO_FURNI_ASSET_ICON_URL="${NITRO_FURNI_ASSET_ICON_URL:-$NITRO_SITE_URL/gamedata/icons/%libname%%param%_icon.png}" # Build MySQL/MariaDB credentials argument (password via MYSQL_PWD — not visible in ps) MYSQL_CRED="-h $DB_HOST -P $DB_PORT -u $DB_USER --ssl-verify-server-cert=OFF" @@ -80,7 +96,7 @@ EMULATOR_REPO_DIR="$EMULATOR_DIR/Emulator" cd "$EMULATOR_REPO_DIR" git stash --include-untracked || true OLD_HEAD=$(git rev-parse HEAD) -git checkout main +git checkout "$NITRO_BRANCH" git pull # --- Automatic Safe Database Backup --- @@ -139,7 +155,7 @@ cd "$NITRO_RENDERER" git stash --include-untracked || true OLD_HEAD=$(git rev-parse HEAD) -git checkout main +git checkout "$NITRO_BRANCH" git pull if [ "$(git rev-parse HEAD)" != "$OLD_HEAD" ]; then @@ -160,7 +176,7 @@ cd "$NITRO_CLIENT" git stash --include-untracked || true OLD_HEAD=$(git rev-parse HEAD) -git checkout main +git checkout "$NITRO_BRANCH" git pull if [ "$(git rev-parse HEAD)" != "$OLD_HEAD" ]; then