mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-07-29 17:22:53 +02:00
Compare commits
9 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 7cd87d7731 | |||
| 6ff1e95334 | |||
| bf75cbd2a3 | |||
| 2098cf0f3a | |||
| 09c16ded19 | |||
| d9b12eaadf | |||
| 948f8f608f | |||
| 44483d08ae | |||
| 57c9246f59 |
@@ -508,6 +508,22 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
|
|||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
|
## 2026-07-29
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- backup virtual printer in bambuddy [@asylumexp](https://github.com/asylumexp) ([#16142](https://github.com/community-scripts/ProxmoxVE/pull/16142))
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- ImmichFrame: check .NET SDK before update deployment [@aidaskni](https://github.com/aidaskni) ([#16104](https://github.com/community-scripts/ProxmoxVE/pull/16104))
|
||||||
|
|
||||||
|
### 💾 Core
|
||||||
|
|
||||||
|
- #### ✨ New Features
|
||||||
|
|
||||||
|
- core: Harden remote func bootstrapping with dns issues [@MickLesk](https://github.com/MickLesk) ([#16146](https://github.com/community-scripts/ProxmoxVE/pull/16146))
|
||||||
|
|
||||||
## 2026-07-28
|
## 2026-07-28
|
||||||
|
|
||||||
### 🚀 Updated Scripts
|
### 🚀 Updated Scripts
|
||||||
|
|||||||
@@ -30,6 +30,25 @@ function update_script() {
|
|||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if ! dotnet --list-sdks 2>/dev/null | grep -q '^8\.'; then
|
||||||
|
msg_info "Installing .NET SDK 8.0"
|
||||||
|
if [[ "$(arch_resolve)" == "arm64" ]]; then
|
||||||
|
curl -fsSL https://dot.net/v1/dotnet-install.sh -o /tmp/dotnet-install.sh
|
||||||
|
$STD bash /tmp/dotnet-install.sh --channel 8.0 --install-dir /usr/lib/dotnet8
|
||||||
|
ln -sf /usr/lib/dotnet8/dotnet /usr/bin/dotnet
|
||||||
|
rm -f /tmp/dotnet-install.sh
|
||||||
|
else
|
||||||
|
setup_deb822_repo \
|
||||||
|
"microsoft" \
|
||||||
|
"https://packages.microsoft.com/keys/microsoft-2025.asc" \
|
||||||
|
"https://packages.microsoft.com/debian/13/prod/" \
|
||||||
|
"trixie" \
|
||||||
|
"main"
|
||||||
|
$STD apt install -y dotnet-sdk-8.0
|
||||||
|
fi
|
||||||
|
msg_ok "Installed .NET SDK 8.0"
|
||||||
|
fi
|
||||||
|
|
||||||
if check_for_gh_release "immichframe" "immichFrame/ImmichFrame"; then
|
if check_for_gh_release "immichframe" "immichFrame/ImmichFrame"; then
|
||||||
msg_info "Stopping Service"
|
msg_info "Stopping Service"
|
||||||
systemctl stop immichframe
|
systemctl stop immichframe
|
||||||
|
|||||||
@@ -10,8 +10,29 @@ fi
|
|||||||
# must write local failure artifacts instead of talking to the telemetry API
|
# must write local failure artifacts instead of talking to the telemetry API
|
||||||
# (the host is the single telemetry reporter).
|
# (the host is the single telemetry reporter).
|
||||||
export TELEMETRY_CONTEXT="container"
|
export TELEMETRY_CONTEXT="container"
|
||||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/core.func)
|
# A freshly booted container may not have DNS up yet. `source <(curl ...)` hides
|
||||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/error_handler.func)
|
# curl's exit code, so a failed download would silently source an empty stream.
|
||||||
|
_bootstrap_die() {
|
||||||
|
if declare -f msg_error >/dev/null 2>&1; then
|
||||||
|
msg_error "$1"
|
||||||
|
else
|
||||||
|
echo "FATAL: $1" >&2
|
||||||
|
fi
|
||||||
|
exit 115
|
||||||
|
}
|
||||||
|
|
||||||
|
_bootstrap_source() {
|
||||||
|
local url="$1" probe="$2" content
|
||||||
|
content=$(curl -fsSL --connect-timeout 10 --retry 5 --retry-connrefused --retry-delay 2 "$url") ||
|
||||||
|
_bootstrap_die "Failed to download ${url##*/}"
|
||||||
|
source /dev/stdin <<<"$content"
|
||||||
|
declare -f "$probe" >/dev/null 2>&1 ||
|
||||||
|
_bootstrap_die "${url##*/} loaded but incomplete (missing ${probe})"
|
||||||
|
}
|
||||||
|
|
||||||
|
_FUNC_BASE="https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc"
|
||||||
|
_bootstrap_source "$_FUNC_BASE/core.func" load_functions
|
||||||
|
_bootstrap_source "$_FUNC_BASE/error_handler.func" catch_errors
|
||||||
load_functions
|
load_functions
|
||||||
catch_errors
|
catch_errors
|
||||||
|
|
||||||
|
|||||||
+31
-12
@@ -88,19 +88,38 @@ variables() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func)
|
# `source <(curl ...)` hides the download exit code, so a failed fetch would
|
||||||
|
# silently source an empty stream and leave the helpers undefined.
|
||||||
|
_bootstrap_die() {
|
||||||
|
if declare -f msg_error >/dev/null 2>&1; then
|
||||||
|
msg_error "$1"
|
||||||
|
else
|
||||||
|
echo "FATAL: $1" >&2
|
||||||
|
fi
|
||||||
|
exit 115
|
||||||
|
}
|
||||||
|
|
||||||
if command -v curl >/dev/null 2>&1; then
|
_bootstrap_source() {
|
||||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/core.func)
|
local url="$1" probe="$2" content=""
|
||||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/error_handler.func)
|
if command -v curl >/dev/null 2>&1; then
|
||||||
load_functions
|
content=$(curl -fsSL --connect-timeout 10 --retry 5 --retry-connrefused --retry-delay 2 "$url") || content=""
|
||||||
catch_errors
|
elif command -v wget >/dev/null 2>&1; then
|
||||||
elif command -v wget >/dev/null 2>&1; then
|
content=$(wget -qO- --tries=5 --timeout=10 "$url") || content=""
|
||||||
source <(wget -qO- https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/core.func)
|
else
|
||||||
source <(wget -qO- https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/error_handler.func)
|
_bootstrap_die "Neither curl nor wget available"
|
||||||
load_functions
|
fi
|
||||||
catch_errors
|
[[ -n "$content" ]] || _bootstrap_die "Failed to download ${url##*/}"
|
||||||
fi
|
source /dev/stdin <<<"$content"
|
||||||
|
declare -f "$probe" >/dev/null 2>&1 ||
|
||||||
|
_bootstrap_die "${url##*/} loaded but incomplete (missing ${probe})"
|
||||||
|
}
|
||||||
|
|
||||||
|
_FUNC_BASE="https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc"
|
||||||
|
_bootstrap_source "$_FUNC_BASE/api.func" post_to_api
|
||||||
|
_bootstrap_source "$_FUNC_BASE/core.func" load_functions
|
||||||
|
_bootstrap_source "$_FUNC_BASE/error_handler.func" catch_errors
|
||||||
|
load_functions
|
||||||
|
catch_errors
|
||||||
|
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# SECTION 2: PRE-FLIGHT CHECKS & SYSTEM VALIDATION
|
# SECTION 2: PRE-FLIGHT CHECKS & SYSTEM VALIDATION
|
||||||
|
|||||||
+23
-2
@@ -37,8 +37,29 @@ fi
|
|||||||
# (the host is the single telemetry reporter).
|
# (the host is the single telemetry reporter).
|
||||||
export TELEMETRY_CONTEXT="container"
|
export TELEMETRY_CONTEXT="container"
|
||||||
|
|
||||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/core.func)
|
# A freshly booted container may not have DNS up yet. `source <(curl ...)` hides
|
||||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/error_handler.func)
|
# curl's exit code, so a failed download would silently source an empty stream.
|
||||||
|
_bootstrap_die() {
|
||||||
|
if declare -f msg_error >/dev/null 2>&1; then
|
||||||
|
msg_error "$1"
|
||||||
|
else
|
||||||
|
echo "FATAL: $1" >&2
|
||||||
|
fi
|
||||||
|
exit 115
|
||||||
|
}
|
||||||
|
|
||||||
|
_bootstrap_source() {
|
||||||
|
local url="$1" probe="$2" content
|
||||||
|
content=$(curl -fsSL --connect-timeout 10 --retry 5 --retry-connrefused --retry-delay 2 "$url") ||
|
||||||
|
_bootstrap_die "Failed to download ${url##*/}"
|
||||||
|
source /dev/stdin <<<"$content"
|
||||||
|
declare -f "$probe" >/dev/null 2>&1 ||
|
||||||
|
_bootstrap_die "${url##*/} loaded but incomplete (missing ${probe})"
|
||||||
|
}
|
||||||
|
|
||||||
|
_FUNC_BASE="https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc"
|
||||||
|
_bootstrap_source "$_FUNC_BASE/core.func" load_functions
|
||||||
|
_bootstrap_source "$_FUNC_BASE/error_handler.func" catch_errors
|
||||||
load_functions
|
load_functions
|
||||||
catch_errors
|
catch_errors
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user