Files
proxmox-spice-client/build/installer.nsh
T

56 lines
2.0 KiB
NSIS

; Proxmox SPICE Client — Custom NSIS Install Script
; Prüft ob virt-viewer installiert ist und installiert es bei Bedarf.
!macro customInstall
; Prüfen ob remote-viewer.exe bereits vorhanden ist
IfFileExists "$PROGRAMFILES64\VirtViewer\bin\remote-viewer.exe" vv_found
IfFileExists "$PROGRAMFILES\VirtViewer\bin\remote-viewer.exe" vv_found
; Nicht gefunden — Benutzer fragen
MessageBox MB_YESNO|MB_ICONQUESTION \
"VirtViewer wurde auf diesem System nicht gefunden.$\n$\n\
VirtViewer wird für SPICE-Verbindungen zu Proxmox-VMs benötigt.$\n\
Ohne VirtViewer können keine VMs geöffnet werden.$\n$\n\
Jetzt automatisch herunterladen und installieren (ca. 30 MB)?" \
IDYES vv_download IDNO vv_skip
vv_download:
DetailPrint "Lade VirtViewer herunter..."
nsExec::ExecToLog 'powershell.exe -NonInteractive -Command \
"Invoke-WebRequest \
-Uri \"https://gitlab.com/virt-viewer/virt-viewer/-/releases/v11.0/downloads/virt-viewer-x64-11.0-1.0.msi\" \
-OutFile \"$TEMP\virt-viewer-setup.msi\" \
-UseBasicParsing"'
Pop $0
${If} $0 != 0
MessageBox MB_OK|MB_ICONEXCLAMATION \
"Download fehlgeschlagen (Fehlercode: $0).$\n$\n\
Bitte VirtViewer nach der Installation manuell installieren:$\n\
https://gitlab.com/virt-viewer/virt-viewer/-/releases/v11.0"
Goto vv_skip
${EndIf}
DetailPrint "Installiere VirtViewer (bitte warten)..."
ExecWait 'msiexec /i "$TEMP\virt-viewer-setup.msi" /quiet /norestart' $0
Delete "$TEMP\virt-viewer-setup.msi"
${If} $0 == 0
DetailPrint "VirtViewer erfolgreich installiert."
${Else}
MessageBox MB_OK|MB_ICONEXCLAMATION \
"VirtViewer-Installation schlug fehl (Code: $0).$\n$\n\
Bitte nach Abschluss manuell installieren:$\n\
https://gitlab.com/virt-viewer/virt-viewer/-/releases/v11.0"
${EndIf}
Goto vv_skip
vv_found:
DetailPrint "VirtViewer bereits installiert — OK."
vv_skip:
!macroend
!macro customUnInstall
; Nichts extra — VirtViewer bleibt installiert
!macroend