Compare commits

..

1 Commits

Author SHA1 Message Date
github-actions[bot]
bca4ac1b68 Update CHANGELOG.md 2026-02-15 00:05:33 +00:00
3 changed files with 36 additions and 32 deletions

View File

@@ -1,5 +1,5 @@
{ {
"generated": "2026-02-15T12:08:30Z", "generated": "2026-02-14T18:07:29Z",
"versions": [ "versions": [
{ {
"slug": "2fauth", "slug": "2fauth",
@@ -193,16 +193,16 @@
{ {
"slug": "cleanuparr", "slug": "cleanuparr",
"repo": "Cleanuparr/Cleanuparr", "repo": "Cleanuparr/Cleanuparr",
"version": "v2.6.2", "version": "v2.6.1",
"pinned": false, "pinned": false,
"date": "2026-02-15T02:15:19Z" "date": "2026-02-13T10:00:19Z"
}, },
{ {
"slug": "cloudreve", "slug": "cloudreve",
"repo": "cloudreve/cloudreve", "repo": "cloudreve/cloudreve",
"version": "4.14.1", "version": "4.14.0",
"pinned": false, "pinned": false,
"date": "2026-02-15T01:39:24Z" "date": "2026-02-14T06:05:06Z"
}, },
{ {
"slug": "comfyui", "slug": "comfyui",
@@ -298,9 +298,9 @@
{ {
"slug": "donetick", "slug": "donetick",
"repo": "donetick/donetick", "repo": "donetick/donetick",
"version": "v0.1.74", "version": "v0.1.73",
"pinned": false, "pinned": false,
"date": "2026-02-14T23:21:45Z" "date": "2026-02-12T23:42:30Z"
}, },
{ {
"slug": "drawio", "slug": "drawio",
@@ -354,9 +354,9 @@
{ {
"slug": "firefly", "slug": "firefly",
"repo": "firefly-iii/firefly-iii", "repo": "firefly-iii/firefly-iii",
"version": "v6.4.21", "version": "v6.4.20",
"pinned": false, "pinned": false,
"date": "2026-02-14T19:40:46Z" "date": "2026-02-14T12:39:02Z"
}, },
{ {
"slug": "fladder", "slug": "fladder",
@@ -403,9 +403,9 @@
{ {
"slug": "ghostfolio", "slug": "ghostfolio",
"repo": "ghostfolio/ghostfolio", "repo": "ghostfolio/ghostfolio",
"version": "2.239.0", "version": "2.238.0",
"pinned": false, "pinned": false,
"date": "2026-02-15T09:51:16Z" "date": "2026-02-12T18:28:55Z"
}, },
{ {
"slug": "gitea", "slug": "gitea",
@@ -571,16 +571,16 @@
{ {
"slug": "invoiceninja", "slug": "invoiceninja",
"repo": "invoiceninja/invoiceninja", "repo": "invoiceninja/invoiceninja",
"version": "v5.12.60", "version": "v5.12.59",
"pinned": false, "pinned": false,
"date": "2026-02-15T00:11:31Z" "date": "2026-02-13T02:26:13Z"
}, },
{ {
"slug": "jackett", "slug": "jackett",
"repo": "Jackett/Jackett", "repo": "Jackett/Jackett",
"version": "v0.24.1124", "version": "v0.24.1113",
"pinned": false, "pinned": false,
"date": "2026-02-15T05:54:22Z" "date": "2026-02-14T17:46:58Z"
}, },
{ {
"slug": "jellystat", "slug": "jellystat",
@@ -886,9 +886,9 @@
{ {
"slug": "nginx-ui", "slug": "nginx-ui",
"repo": "0xJacky/nginx-ui", "repo": "0xJacky/nginx-ui",
"version": "v2.3.3", "version": "v2.3.2",
"pinned": false, "pinned": false,
"date": "2026-02-15T00:58:14Z" "date": "2025-12-09T09:47:15Z"
}, },
{ {
"slug": "nightscout", "slug": "nightscout",
@@ -1726,9 +1726,9 @@
{ {
"slug": "zoraxy", "slug": "zoraxy",
"repo": "tobychui/zoraxy", "repo": "tobychui/zoraxy",
"version": "v3.3.2-rc1", "version": "v3.3.1",
"pinned": false, "pinned": false,
"date": "2026-02-15T02:16:17Z" "date": "2026-01-28T13:52:02Z"
}, },
{ {
"slug": "zwave-js-ui", "slug": "zwave-js-ui",

View File

@@ -91,8 +91,8 @@ detect_repo_source() {
community-scripts/ProxmoxVED) REPO_SOURCE="ProxmoxVED" ;; community-scripts/ProxmoxVED) REPO_SOURCE="ProxmoxVED" ;;
"") "")
# No URL detected — use hardcoded fallback # No URL detected — use hardcoded fallback
# This value must match the repo: ProxmoxVE for production, ProxmoxVED for dev # CI sed transforms this on promotion: ProxmoxVED → ProxmoxVE
REPO_SOURCE="ProxmoxVE" REPO_SOURCE="ProxmoxVED"
;; ;;
*) *)
# Fork or unknown repo # Fork or unknown repo
@@ -400,22 +400,26 @@ detect_cpu() {
# - Detects RAM speed using dmidecode # - Detects RAM speed using dmidecode
# - Sets RAM_SPEED global (e.g., "4800" for DDR5-4800) # - Sets RAM_SPEED global (e.g., "4800" for DDR5-4800)
# - Requires root access for dmidecode # - Requires root access for dmidecode
# - Returns empty if not available or if speed is "Unknown" (nested VMs) # - Returns empty if not available
# ------------------------------------------------------------------------------ # ------------------------------------------------------------------------------
detect_ram() { detect_ram() {
RAM_SPEED="" RAM_SPEED=""
if command -v dmidecode &>/dev/null; then if command -v dmidecode &>/dev/null; then
# Get configured memory speed (actual running speed) # Get configured memory speed (actual running speed)
# Use || true to handle "Unknown" values in nested VMs (no numeric match) RAM_SPEED=$(dmidecode -t memory 2>/dev/null | grep -m1 "Configured Memory Speed:" | grep -oE "[0-9]+" | head -1 || true)
RAM_SPEED=$(dmidecode -t memory 2>/dev/null | grep -m1 "Configured Memory Speed:" | grep -oE "[0-9]+" | head -1) || true
# Fallback to Speed: if Configured not available # Fallback to Speed: if Configured not available
if [[ -z "$RAM_SPEED" ]]; then if [[ -z "$RAM_SPEED" ]]; then
RAM_SPEED=$(dmidecode -t memory 2>/dev/null | grep -m1 "Speed:" | grep -oE "[0-9]+" | head -1) || true RAM_SPEED=$(dmidecode -t memory 2>/dev/null | grep -m1 "Speed:" | grep -oE "[0-9]+" | head -1 || true)
fi fi
fi fi
# Ensure RAM_SPEED is a valid integer (PocketBase stores it as integer)
if [[ -z "$RAM_SPEED" || ! "$RAM_SPEED" =~ ^[0-9]+$ ]]; then
RAM_SPEED=0
fi
export RAM_SPEED export RAM_SPEED
} }
@@ -510,7 +514,7 @@ post_to_api() {
"gpu_vendor": "${gpu_vendor}", "gpu_vendor": "${gpu_vendor}",
"gpu_model": "${gpu_model}", "gpu_model": "${gpu_model}",
"gpu_passthrough": "${gpu_passthrough}", "gpu_passthrough": "${gpu_passthrough}",
"ram_speed": "${ram_speed}", "ram_speed": ${ram_speed:-0},
"repo_source": "${REPO_SOURCE}" "repo_source": "${REPO_SOURCE}"
} }
EOF EOF
@@ -614,7 +618,7 @@ post_to_api_vm() {
"gpu_vendor": "${gpu_vendor}", "gpu_vendor": "${gpu_vendor}",
"gpu_model": "${gpu_model}", "gpu_model": "${gpu_model}",
"gpu_passthrough": "${gpu_passthrough}", "gpu_passthrough": "${gpu_passthrough}",
"ram_speed": "${ram_speed}", "ram_speed": ${ram_speed:-0},
"repo_source": "${REPO_SOURCE}" "repo_source": "${REPO_SOURCE}"
} }
EOF EOF
@@ -748,7 +752,7 @@ post_update_to_api() {
"gpu_vendor": "${gpu_vendor}", "gpu_vendor": "${gpu_vendor}",
"gpu_model": "${gpu_model}", "gpu_model": "${gpu_model}",
"gpu_passthrough": "${gpu_passthrough}", "gpu_passthrough": "${gpu_passthrough}",
"ram_speed": "${ram_speed}", "ram_speed": ${ram_speed:-0},
"repo_source": "${REPO_SOURCE}" "repo_source": "${REPO_SOURCE}"
} }
EOF EOF
@@ -790,7 +794,7 @@ EOF
"gpu_vendor": "${gpu_vendor}", "gpu_vendor": "${gpu_vendor}",
"gpu_model": "${gpu_model}", "gpu_model": "${gpu_model}",
"gpu_passthrough": "${gpu_passthrough}", "gpu_passthrough": "${gpu_passthrough}",
"ram_speed": "${ram_speed}", "ram_speed": ${ram_speed:-0},
"repo_source": "${REPO_SOURCE}" "repo_source": "${REPO_SOURCE}"
} }
EOF EOF

View File

@@ -5268,5 +5268,5 @@ if command -v pveversion >/dev/null 2>&1; then
trap 'api_exit_script' EXIT trap 'api_exit_script' EXIT
fi fi
trap 'ensure_log_on_host; post_update_to_api "failed" "$?"' ERR trap 'ensure_log_on_host; post_update_to_api "failed" "$?"' ERR
trap 'ensure_log_on_host; post_update_to_api "failed" "130"; exit 130' SIGINT trap 'ensure_log_on_host; post_update_to_api "failed" "130"' SIGINT
trap 'ensure_log_on_host; post_update_to_api "failed" "143"; exit 143' SIGTERM trap 'ensure_log_on_host; post_update_to_api "failed" "143"' SIGTERM