From d5010f5c7bace1a28a51d9a5ede66cb5de9cbe54 Mon Sep 17 00:00:00 2001 From: Thomas Stallinger Date: Tue, 25 Aug 2026 09:04:38 +0200 Subject: [PATCH] feat: Volume-ID der Kunden-ISO per Parameter statt fest 'TUXFLOTTE' Sechster, optionaler Parameter (volid) - provisioning-server berechnet ihn jetzt aus Organisationsname + Bau-Datum (siehe compute_iso_volid() in app.py) und reicht ihn durch. Fallback 'TUXFLOTTE' fuer Aufrufe ohne sechsten Parameter (z.B. manuelle Tests). Keine Aenderung an den GRUB-/isolinux-Boot-Configs noetig - iso-scan/filename=${iso_path} bzw. boot=casper referenzieren die Volume-ID nicht direkt, anders als ein frueherer Notiz-Stand vermuten liess. Co-Authored-By: Claude Sonnet 5 --- scripts/build_customer_iso.sh | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/scripts/build_customer_iso.sh b/scripts/build_customer_iso.sh index 1b352d4..8e5e240 100755 --- a/scripts/build_customer_iso.sh +++ b/scripts/build_customer_iso.sh @@ -13,7 +13,7 @@ set -euo pipefail # interaktiven Kiosk-Startseite. usage() { - echo "Usage: $0 [wifi_ssid] [wifi_psk]" >&2 + echo "Usage: $0 [wifi_ssid] [wifi_psk] [volid]" >&2 } SOURCE_ISO="${1:-}" @@ -21,6 +21,12 @@ OUTPUT_ISO="${2:-}" ACTIVATION_CODE="${3:-}" WIFI_SSID="${4:-}" WIFI_PSK="${5:-}" +# Vom Aufrufer (provisioning-server, compute_iso_volid()) bereits +# ISO9660-konform aufbereitet (Grossbuchstaben/Ziffern/Unterstrich, <=32 +# Zeichen) - dieses Skript validiert/sanitisiert das bewusst nicht nochmal, +# um die Sanitisierungslogik nicht doppelt zu pflegen. Fallback nur fuer +# Aufrufe ohne sechsten Parameter (z.B. manuelle Tests). +VOLID="${6:-TUXFLOTTE}" REPO_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" WORK_DIR="$(mktemp -d)" @@ -97,7 +103,7 @@ xorriso \ -indev "${SOURCE_ISO}" \ -outdev "${OUTPUT_ISO}" \ -compliance no_emul_toc \ - -volid TUXFLOTTE \ + -volid "${VOLID}" \ -map "${REPO_DIR}/grub/mint-boot-grub.cfg" /boot/grub/grub.cfg \ -map "${REPO_DIR}/grub/mint-isolinux-live.cfg" /isolinux/live.cfg \ -map "${custom_initrd}" /casper/initrd.lz \