SPICE liess sich nicht wieder ausschalten

In set_display() stand die Sicherung "USB ohne SPICE ist wirkungslos, also
SPICE mit einschalten". Beim Ausschalten sind die Anschluesse aber noch da -
die Regel hat die Absage prompt ueberstimmt und SPICE wieder eingeschaltet.
Weil sich dadurch nichts aenderte, kam am Ende "War schon so eingestellt".

Die Regel gehoert nur ins Anlegen, wo --usb die Anzeige mit hochzieht. Beim
nachtraeglichen Umstellen ist "aus" die staerkere Aussage: die Anschluesse
fallen mit weg, mit Hinweis.

    einschalten        -> vga=qxl, usb0, usb1
    ausschalten        -> entfernt vga, usb0, usb1
    nochmal aus        -> nichts zu tun
    aus trotz usb=2    -> Hinweis, dann trotzdem aus

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
duffyduck
2026-08-09 11:15:33 +02:00
co-authored by Claude Opus 5
parent fb3be26c33
commit fee8bbbab2
2 changed files with 10 additions and 5 deletions
+9 -4
View File
@@ -1286,10 +1286,15 @@ def set_display(proxmox, instance, spice, usb, progress=None):
raise RecoveryError("SPICE und USB-Weiterleitung gibt es nur bei "
"virtuellen Maschinen, nicht bei Containern.")
usb = max(0, min(14, int(usb or 0)))
if usb and not spice:
spice = True
step("SPICE wird mit eingeschaltet - ohne den Kanal waeren die "
"Anschluesse wirkungslos")
if not spice:
# SPICE aus ist die staerkere Aussage. Die Anschluesse fallen mit weg -
# ohne Kanal waeren sie ohnehin wirkungslos. (Beim Anlegen gilt die
# Regel andersherum: dort zieht --usb die Anzeige mit hoch, siehe
# plan(). Hier wuerde genau das die Absage ueberstimmen.)
if usb:
step("Die USB-Anschluesse fallen mit weg - ohne SPICE-Kanal "
"waeren sie wirkungslos")
usb = 0
config = proxmox.guest_config(instance.guest)
hat_spice = str(config.get("vga") or "").startswith("qxl")