fix(infra): detect Debian suite from os-release for PVE 8 compatibility

PVE 8 (Bookworm) may not have /etc/apt/sources.list.d/debian.sources,
causing the grep fallback to use 'trixie' which is invalid for PVE 8.
Use /etc/os-release VERSION_CODENAME which works on both PVE 8 and 9.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Clint Branham
2026-03-19 10:46:44 -05:00
parent 8924d521b6
commit 84029d8871
+6 -2
View File
@@ -10,8 +10,12 @@ set -e
rm -f /etc/apt/sources.list.d/pve-enterprise.list /etc/apt/sources.list.d/pve-enterprise.sources
rm -f /etc/apt/sources.list.d/ceph.list /etc/apt/sources.list.d/ceph.sources
# Detect suite from existing debian.sources or default to trixie
SUITE=$(grep -oP 'Suites:\s*\K\S+' /etc/apt/sources.list.d/debian.sources 2>/dev/null | head -1 || echo "trixie")
# Detect Debian suite from os-release (works on both PVE 8/bookworm and PVE 9/trixie)
SUITE=$(. /etc/os-release && echo "$VERSION_CODENAME")
if [ -z "$SUITE" ]; then
# Fallback: try parsing apt sources
SUITE=$(grep -oP 'Suites:\s*\K\S+' /etc/apt/sources.list.d/debian.sources 2>/dev/null | head -1 || echo "bookworm")
fi
echo "deb http://download.proxmox.com/debian/pve ${SUITE} pve-no-subscription" > /etc/apt/sources.list.d/pve-no-subscription.list
apt-get update -qq