From fbc81ad4ab1becd77dd75456cc27c673e3d4994b Mon Sep 17 00:00:00 2001 From: Tobias <96661824+CrazyWolf13@users.noreply.github.com> Date: Tue, 16 Jun 2026 22:15:30 +0200 Subject: [PATCH] kasm: fix: release detection --- install/kasm-install.sh | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/install/kasm-install.sh b/install/kasm-install.sh index 3b9bafa10..c2bacd5b6 100644 --- a/install/kasm-install.sh +++ b/install/kasm-install.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash # Copyright (c) 2021-2026 community-scripts ORG -# Author: Omar Minaya +# Author: Omar Minaya | Co-Author: CrazyWolf13 # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # Source: https://www.kasmweb.com/docs/latest/index.html @@ -18,19 +18,18 @@ $STD sh <(curl -fsSL https://get.docker.com/) msg_ok "Installed Docker" msg_info "Detecting latest Kasm Workspaces release" -KASM_VERSION=$(curl -s https://kasm.com/downloads | grep -oP ']*>.*?' | sed -E 's/<\/?h1[^>]*>//g' | grep -oP '\d+\.\d+\.\d+') -KASM_URL="https://kasm-static-content.s3.amazonaws.com/kasm_release_${KASM_VERSION:-var_kasm_version}.tar.gz" +KASM_URL=$(curl -s https://kasm.com/downloads \ + | grep -oP 'https://kasm-static-content\.s3\.amazonaws\.com/kasm_release_\d+\.\d+\.\d+-latest\.tar\.gz' \ + | head -1) +KASM_VERSION=$(echo "$KASM_URL" | grep -oP '\d+\.\d+\.\d+(?=-latest)') -# KASM_URL=$(curl -fsSL "https://www.kasm.com/downloads" | tr '\n' ' ' | grep -oE 'https://kasm-static-content[^"]*kasm_release_[0-9]+\.[0-9]+\.[0-9]+\.[a-z0-9]+\.tar\.gz' | head -n 1) -# if [[ -z "$KASM_URL" ]]; then -# SERVICE_IMAGE_URL=$(curl -fsSL "https://www.kasm.com/downloads" | tr '\n' ' ' | grep -oE 'https://kasm-static-content[^"]*kasm_release_service_images_amd64_[0-9]+\.[0-9]+\.[0-9]+\.tar\.gz' | head -n 1) -# if [[ -n "$SERVICE_IMAGE_URL" ]]; then -# KASM_VERSION=$(echo "$SERVICE_IMAGE_URL" | sed -E 's/.*kasm_release_service_images_amd64_([0-9]+\.[0-9]+\.[0-9]+).*/\1/') -# KASM_URL="https://kasm-static-content.s3.amazonaws.com/kasm_release_${KASM_VERSION}.tar.gz" -# fi -# else -# KASM_VERSION=$(echo "$KASM_URL" | sed -E 's/.*kasm_release_([0-9]+\.[0-9]+\.[0-9]+).*/\1/') -# fi +# Fallback to predefined version if online lookup failed. +if [[ -z "$KASM_VERSION" ]] || [[ -z "$KASM_URL" ]]; then + msg_warn "Unable to fetch latest Kasm release online, falling back to v${var_kasm_version}" +fi + +KASM_VERSION="${KASM_VERSION:-$var_kasm_version}" +KASM_URL="${KASM_URL:-https://kasm-static-content.s3.amazonaws.com/kasm_release_${KASM_VERSION}-latest.tar.gz}" if [[ -z "$KASM_VERSION" ]] || [[ -z "$KASM_URL" ]]; then msg_error "Unable to detect latest Kasm release URL."