#!Nsis Installer Command Script # @configure_input@ # To build an installer from the script you would normally do: # # makensis virt-viewer.nsis # # which will generate the output file 'virt-viewer-@VERSION@.exe' which is a Windows # installer containing your program. Name "VirtViewer @VERSION@" OutFile "virt-viewer-@VERSION@.exe" InstallDir "$LOCALAPPDATA\virt-viewer" InstallDirRegKey HKCU "Software\virt-viewer" "" RequestExecutionLevel user SetCompressor bzip2 ShowInstDetails hide ShowUninstDetails hide XPStyle on Page directory Page instfiles !define REG_UNINSTALL "Software\Microsoft\Windows\CurrentVersion\Uninstall\virt-viewer" !define REG_IEPOLICY "Software\Microsoft\Internet Explorer\Low Rights\ElevationPolicy\{96190E9D-6FBB-64DB-9095-29F6FDE0B897}" Function RegisterApplication ;Register uninstaller into Add/Remove panel (for local user only) WriteRegStr HKCU "${REG_UNINSTALL}" "DisplayName" "VirtViewer @VERSION@" WriteRegStr HKCU "${REG_UNINSTALL}" "DisplayIcon" "$\"$INSTDIR\bin\virt-viewer.exe$\"" WriteRegStr HKCU "${REG_UNINSTALL}" "Publisher" "virt-manager.org" WriteRegStr HKCU "${REG_UNINSTALL}" "DisplayVersion" "@VERSION@" WriteRegDWord HKCU "${REG_UNINSTALL}" "EstimatedSize" 32000 ;KB WriteRegStr HKCU "${REG_UNINSTALL}" "HelpLink" "http://www.virt-manager.org" WriteRegStr HKCU "${REG_UNINSTALL}" "URLInfoAbout" "http://www.virt-manager.org" WriteRegStr HKCU "${REG_UNINSTALL}" "InstallLocation" "$\"$INSTDIR$\"" WriteRegStr HKCU "${REG_UNINSTALL}" "InstallSource" "$\"$EXEDIR$\"" WriteRegDWord HKCU "${REG_UNINSTALL}" "NoModify" 1 WriteRegDWord HKCU "${REG_UNINSTALL}" "NoRepair" 1 WriteRegStr HKCU "${REG_UNINSTALL}" "UninstallString" "$\"$INSTDIR\Uninstall.exe$\"" WriteRegStr HKCU "${REG_UNINSTALL}" "Comments" "Uninstalls VirtViewer." WriteRegStr HKCU "${REG_IEPOLICY}" "AppPath" "$INSTDIR\bin" WriteRegStr HKCU "${REG_IEPOLICY}" "AppName" "remote-viewer.exe" WriteRegDWord HKCU "${REG_IEPOLICY}" "Policy" 3 FunctionEnd Function .onInit retry: System::Call 'kernel32::CreateMutexA(i 0, i 0, t "VirtViewerMutex") i .r1 ?e' Pop $R0 StrCmp $R0 0 end System::Call 'kernel32::CloseHandle(i r1) i.s' MessageBox MB_ICONEXCLAMATION|MB_RETRYCANCEL "VirtViewer is already running, quit any instance and retry." IDRETRY retry IDCANCEL cancel cancel: Abort end: FunctionEnd Section "VirtViewer" SectionIn RO WriteRegStr HKCU "Software\virt-viewer" "" $INSTDIR SetOutPath "$INSTDIR" File "deps.txt" SetOutPath "$INSTDIR\bin" !if ${HaveSpiceGtk} == True # gstreamer1 File "@prefix@/bin/gst-inspect-1.0.exe" File "@prefix@/bin/gst-launch-1.0.exe" File "@prefix@/bin/gst-typefind-1.0.exe" File "@prefix@/bin/libgstbase-1.0-0.dll" File "@prefix@/bin/libgstcontroller-1.0-0.dll" File "@prefix@/bin/libgstreamer-1.0-0.dll" # gstreamer1-plugins-base File "@prefix@/bin/libgstapp-1.0-0.dll" File "@prefix@/bin/libgstaudio-1.0-0.dll" File "@prefix@/bin/libgstfft-1.0-0.dll" File "@prefix@/bin/libgstpbutils-1.0-0.dll" File "@prefix@/bin/libgsttag-1.0-0.dll" File "@prefix@/bin/libusb-1.0.dll" File "@prefix@/bin/libusbredirhost-1.dll" File "@prefix@/bin/libusbredirparser-1.dll" File "@prefix@/bin/libcelt051-0.dll" File "@prefix@/bin/libopus-0.dll" File "@prefix@/bin/liborc-0.4-0.dll" File "@prefix@/bin/liborc-test-0.4-0.dll" File "@prefix@/bin/libspice-client-glib-2.0-8.dll" File "@prefix@/bin/libspice-controller-0.dll" File "@prefix@/bin/libspice-client-gtk-3.0-4.dll" !endif File "@prefix@/bin/libatk-1.0-0.dll" File "@prefix@/bin/libbz2-1.dll" File "@prefix@/bin/libcairo-2.dll" File "@prefix@/bin/libcairo-gobject-2.dll" File "@prefix@/bin/libepoxy-0.dll" File "@prefix@/bin/libcrypto-10.dll" File "@prefix@/bin/libexpat-1.dll" File "@prefix@/bin/libffi-6.dll" File "@prefix@/bin/libfontconfig-1.dll" File "@prefix@/bin/libfreetype-6.dll" File "@prefix@/bin/libgdk-3-0.dll" File "@prefix@/bin/libgdk_pixbuf-2.0-0.dll" File "@prefix@/bin/libgio-2.0-0.dll" File "@prefix@/bin/libglib-2.0-0.dll" File "@prefix@/bin/libgmodule-2.0-0.dll" File "@prefix@/bin/libgobject-2.0-0.dll" File "@prefix@/bin/libgthread-2.0-0.dll" File "@prefix@/bin/libgtk-3-0.dll" File "@prefix@/bin/iconv.dll" File "@prefix@/bin/libintl-8.dll" File "@prefix@/bin/libjpeg-62.dll" File "@prefix@/bin/libpango-1.0-0.dll" File "@prefix@/bin/libpangocairo-1.0-0.dll" File "@prefix@/bin/libpangoft2-1.0-0.dll" File "@prefix@/bin/libpangowin32-1.0-0.dll" File "@prefix@/bin/libpixman-1-0.dll" File "@prefix@/bin/libpng16-16.dll" File "@prefix@/bin/libssl-10.dll" File "@prefix@/bin/libtasn1-6.dll" File "@prefix@/bin/libxml2-2.dll" File "@prefix@/bin/libp11-kit-0.dll" File "@prefix@/bin/libssp-0.dll" File "@prefix@/bin/libwinpthread-1.dll" !if ${HaveLibvirt} == True File "@prefix@/bin/libssh2-1.dll" File "@prefix@/bin/libcurl-4.dll" File "@prefix@/bin/libportablexdr-0.dll" File "@prefix@/bin/libidn-11.dll" File "@prefix@/bin/libvirt-0.dll" File "@prefix@/bin/libvirt-qemu-0.dll" File "@prefix@/bin/libvirt-lxc-0.dll" File "@prefix@/bin/virsh.exe" File "@prefix@/bin/virt-pki-validate" File "@prefix@/bin/virt-xml-validate" !endif #gtkvnc !if ${HaveGtkVnc} == True File "@prefix@/bin/libgpg-error-0.dll" File "@prefix@/bin/libgcrypt-20.dll" File "@prefix@/bin/libgvnc-1.0-0.dll" File "@prefix@/bin/libgtk-vnc-2.0-0.dll" !endif File "@prefix@/bin/libgnutls-30.dll" File "@prefix@/bin/libgmp-10.dll" File "@prefix@/bin/libhogweed-4-2.dll" File "@prefix@/bin/libnettle-6-2.dll" File /nonfatal "@prefix@/bin/libgcc_s_sjlj-1.dll" File /nonfatal "@prefix@/bin/libgcc_s_seh-1.dll" #libgovirt (and its dependencies) !if ${HaveOVirt} == True File "@prefix@/bin/libgovirt-2.dll" File "@prefix@/bin/librest-0.7-0.dll" File "@prefix@/bin/librest-extras-0.7-0.dll" File "@prefix@/bin/libsoup-2.4-1.dll" File "@prefix@/bin/libsqlite3-0.dll" File "@prefix@/bin/libsoup-gnome-2.4-1.dll" !endif File /oname=remote-viewer.com "${DESTDIR}@prefix@/bin/windows-cmdline-wrapper.exe" File "${DESTDIR}@prefix@/bin/remote-viewer.exe" !if ${HaveLibvirt} == True File "${DESTDIR}@prefix@/bin/virt-viewer.exe" !endif File "@prefix@/bin/libreadline6.dll" File "@prefix@/bin/zlib1.dll" SetOutPath "$INSTDIR\etc" File /r "@prefix@/etc/fonts" File /r "@prefix@/etc/gtk-3.0" File /r "@prefix@/etc/libvirt" CreateDirectory "$INSTDIR\etc\gtk-3.0" SetOutPath "$INSTDIR\lib" File /r "@prefix@/lib/gdk-pixbuf-2.0" File /r "@prefix@/lib/gtk-3.0" !if ${HaveSpiceGtk} == True SetOutPath "$INSTDIR\lib\gstreamer-1.0" # gstreamer1 File "@prefix@/lib/gstreamer-1.0/libgstcoreelements.dll" # gstreamer1-plugins-base File "@prefix@/lib/gstreamer-1.0/libgstapp.dll" File "@prefix@/lib/gstreamer-1.0/libgstaudioconvert.dll" File "@prefix@/lib/gstreamer-1.0/libgstaudiorate.dll" File "@prefix@/lib/gstreamer-1.0/libgstaudioresample.dll" # gstreamer1-plugins-good File "@prefix@/lib/gstreamer-1.0/libgstautodetect.dll" File "@prefix@/lib/gstreamer-1.0/libgstdirectsoundsink.dll" # gstreamer1-plugins-bad File "@prefix@/lib/gstreamer-1.0/libgstdirectsoundsrc.dll" !endif !if ${HaveOVirt} == True SetOutPath "$INSTDIR\lib\gio\modules" File "@prefix@/lib/gio/modules/libgiognutls.dll" !endif SetOutPath "$INSTDIR\share" !if ${HaveLibvirt} == True File /r "@prefix@/share/libvirt" !endif File /r "@prefix@/share/glib-2.0" # fixme for all languages SetOutPath "$INSTDIR\share\locale\fr" !if ${HaveLibvirt} == True File "@prefix@/share/locale/fr/LC_MESSAGES/libvirt.*" File "${DESTDIR}@prefix@/share/locale/fr/LC_MESSAGES/virt-viewer.*" !endif # fixme: are the UI files shared between virt-viewer and remote-viewer? SetOutPath "$INSTDIR\share\virt-viewer\ui" File "${DESTDIR}@prefix@/share/virt-viewer/ui/*.xml" SetOutPath "$INSTDIR\share\icons\hicolor" File "/usr/share/icons/hicolor/index.theme" SetOutPath "$INSTDIR\share\icons\hicolor\16x16\apps" File "${DESTDIR}@prefix@/share/icons/hicolor/16x16/apps/virt-viewer.png" File "/usr/share/icons/Adwaita/16x16/apps/preferences-desktop-keyboard-shortcuts.png" SetOutPath "$INSTDIR\share\icons\hicolor\24x24\apps" File "${DESTDIR}@prefix@/share/icons/hicolor/24x24/apps/virt-viewer.png" SetOutPath "$INSTDIR\share\icons\hicolor\24x24\devices" File "${DESTDIR}@prefix@/share/icons/hicolor/24x24/devices/virt-viewer-usb.png" SetOutPath "$INSTDIR\share\icons\hicolor\32x32\apps" File "${DESTDIR}@prefix@/share/icons/hicolor/32x32/apps/virt-viewer.png" SetOutPath "$INSTDIR\share\icons\hicolor\48x48\apps" File "${DESTDIR}@prefix@/share/icons/hicolor/48x48/apps/virt-viewer.png" CreateDirectory "$INSTDIR\share\icons\Adwaita" SetOutPath "$INSTDIR\share\icons\Adwaita\16x16\places" File "/usr/share/icons/Adwaita/16x16/places/folder-documents-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/places/folder-download-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/places/folder-music-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/places/folder-pictures-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/places/folder-publicshare-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/places/folder-remote-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/places/folder-saved-search-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/places/folder-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/places/folder-templates-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/places/folder-videos-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/places/network-server-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/places/network-workgroup-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/places/start-here-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/places/user-bookmarks-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/places/user-desktop-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/places/user-home-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/places/user-trash-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\24x24\places" File "/usr/share/icons/Adwaita/24x24/places/folder-documents-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/places/folder-download-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/places/folder-music-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/places/folder-pictures-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/places/folder-publicshare-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/places/folder-remote-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/places/folder-saved-search-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/places/folder-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/places/folder-templates-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/places/folder-videos-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/places/network-server-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/places/network-workgroup-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/places/start-here-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/places/user-bookmarks-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/places/user-desktop-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/places/user-home-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/places/user-trash-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\32x32\places" File "/usr/share/icons/Adwaita/32x32/places/folder-documents-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/places/folder-download-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/places/folder-music-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/places/folder-pictures-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/places/folder-publicshare-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/places/folder-remote-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/places/folder-saved-search-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/places/folder-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/places/folder-templates-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/places/folder-videos-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/places/network-server-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/places/network-workgroup-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/places/start-here-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/places/user-bookmarks-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/places/user-desktop-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/places/user-home-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/places/user-trash-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\48x48\places" File "/usr/share/icons/Adwaita/48x48/places/folder-documents-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/places/folder-download-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/places/folder-music-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/places/folder-pictures-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/places/folder-publicshare-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/places/folder-remote-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/places/folder-saved-search-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/places/folder-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/places/folder-templates-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/places/folder-videos-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/places/network-server-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/places/network-workgroup-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/places/start-here-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/places/user-bookmarks-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/places/user-desktop-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/places/user-home-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/places/user-trash-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\64x64\places" File "/usr/share/icons/Adwaita/64x64/places/folder-documents-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/places/folder-download-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/places/folder-music-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/places/folder-pictures-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/places/folder-publicshare-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/places/folder-remote-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/places/folder-saved-search-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/places/folder-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/places/folder-templates-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/places/folder-videos-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/places/network-server-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/places/network-workgroup-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/places/start-here-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/places/user-bookmarks-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/places/user-desktop-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/places/user-home-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/places/user-trash-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\96x96\places" File "/usr/share/icons/Adwaita/96x96/places/folder-documents-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/places/folder-download-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/places/folder-music-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/places/folder-pictures-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/places/folder-publicshare-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/places/folder-remote-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/places/folder-saved-search-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/places/folder-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/places/folder-templates-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/places/folder-videos-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/places/network-server-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/places/network-workgroup-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/places/start-here-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/places/user-bookmarks-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/places/user-desktop-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/places/user-home-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/places/user-trash-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\16x16\devices" File "/usr/share/icons/Adwaita/16x16/devices/drive-harddisk-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/devices/drive-optical-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/devices/drive-removable-media-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\24x24\devices" File "/usr/share/icons/Adwaita/24x24/devices/drive-harddisk-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/devices/drive-optical-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/devices/drive-removable-media-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\32x32\devices" File "/usr/share/icons/Adwaita/32x32/devices/drive-harddisk-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/devices/drive-optical-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/devices/drive-removable-media-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\48x48\devices" File "/usr/share/icons/Adwaita/48x48/devices/drive-harddisk-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/devices/drive-optical-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/devices/drive-removable-media-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\64x64\devices" File "/usr/share/icons/Adwaita/64x64/devices/drive-harddisk-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/devices/drive-optical-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/devices/drive-removable-media-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\96x96\devices" File "/usr/share/icons/Adwaita/96x96/devices/drive-harddisk-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/devices/drive-optical-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/devices/drive-removable-media-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\16x16\status" File "/usr/share/icons/Adwaita/16x16/status/checkbox-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/status/checkbox-checked-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\24x24\status" File "/usr/share/icons/Adwaita/24x24/status/checkbox-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/status/checkbox-checked-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\32x32\status" File "/usr/share/icons/Adwaita/32x32/status/checkbox-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/status/checkbox-checked-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\48x48\status" File "/usr/share/icons/Adwaita/48x48/status/checkbox-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/status/checkbox-checked-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\64x64\status" File "/usr/share/icons/Adwaita/64x64/status/checkbox-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/64x64/status/checkbox-checked-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\96x96\status" File "/usr/share/icons/Adwaita/96x96/status/checkbox-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/96x96/status/checkbox-checked-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\16x16\actions" File "/usr/share/icons/Adwaita/16x16/actions/edit-clear-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/16x16/actions/view-restore.png" File "/usr/share/icons/Adwaita/16x16/actions/window-close.png" SetOutPath "$INSTDIR\share\icons\Adwaita\24x24\actions" File "/usr/share/icons/Adwaita/24x24/actions/edit-clear-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/24x24/actions/view-restore.png" File "/usr/share/icons/Adwaita/24x24/actions/window-close.png" SetOutPath "$INSTDIR\share\icons\Adwaita\32x32\actions" File "/usr/share/icons/Adwaita/32x32/actions/edit-clear-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/32x32/actions/view-restore.png" File "/usr/share/icons/Adwaita/32x32/actions/window-close.png" SetOutPath "$INSTDIR\share\icons\Adwaita\48x48\actions" File "/usr/share/icons/Adwaita/48x48/actions/edit-clear-symbolic.symbolic.png" File "/usr/share/icons/Adwaita/48x48/actions/view-restore.png" File "/usr/share/icons/Adwaita/48x48/actions/window-close.png" SetOutPath "$INSTDIR\share\icons\Adwaita\64x64\actions" File "/usr/share/icons/Adwaita/64x64/actions/edit-clear-symbolic.symbolic.png" SetOutPath "$INSTDIR\share\icons\Adwaita\96x96\actions" File "/usr/share/icons/Adwaita/96x96/actions/edit-clear-symbolic.symbolic.png" ReadEnvStr $0 COMSPEC SetOutPath "$INSTDIR" # make virt-viewer the default spice-x client WriteRegStr HKCU "Software\spice-space.org\spicex" "client" "$INSTDIR\bin\remote-viewer.exe --spice-controller" SectionEnd Section "Start Menu Shortcuts" CreateDirectory "$SMPROGRAMS\VirtViewer" CreateShortCut "$SMPROGRAMS\VirtViewer\Remote Viewer.lnk" "$INSTDIR\bin\remote-viewer.exe" "" "$INSTDIR\bin\remote-viewer.exe" 0 CreateShortCut "$SMPROGRAMS\VirtViewer\Uninstall.lnk" "$INSTDIR\Uninstall.exe" "" "$INSTDIR\Uninstall.exe" 0 SectionEnd Section "Uninstall" Delete /rebootok "$SMPROGRAMS\VirtViewer\Uninstall.lnk" Delete /rebootok "$SMPROGRAMS\VirtViewer\Remote Viewer.lnk" RMDir "$SMPROGRAMS\VirtViewer" DeleteRegKey HKCU "Software\spice-space.org\spicex\client" DeleteRegKey /ifempty HKCU "Software\spice-space.org\spicex" DeleteRegKey /ifempty HKCU "Software\spice-space.org" DeleteRegKey HKCU "Software\virt-viewer" DeleteRegKey HKCU "${REG_UNINSTALL}" DeleteRegKey HKCU "${REG_IEPOLICY}" RMDir /r "$INSTDIR\share" RMDir /r "$INSTDIR\lib\gtk-3.0" !if ${HaveSpiceGtk} == True # gstreamer1 Delete /rebootok "$INSTDIR\lib\gstreamer-1.0\libgstcoreelements.dll" # gstreamer1-plugins-base Delete /rebootok "$INSTDIR\lib\gstreamer-1.0\libgstapp.dll" Delete /rebootok "$INSTDIR\lib\gstreamer-1.0\libgstaudioconvert.dll" Delete /rebootok "$INSTDIR\lib\gstreamer-1.0\libgstaudiorate.dll" Delete /rebootok "$INSTDIR\lib\gstreamer-1.0\libgstaudioresample.dll" # gstreamer1-plugins-good Delete /rebootok "$INSTDIR\lib\gstreamer-1.0\libgstautodetect.dll" Delete /rebootok "$INSTDIR\lib\gstreamer-1.0\libgstdirectsoundsink.dll" # gstreamer1-plugins-bad Delete /rebootok "$INSTDIR\lib\gstreamer-1.0\libgstdirectsoundsrc.dll" RMDir "$INSTDIR\lib\gstreamer-1.0" !endif RMDir /r "$INSTDIR\lib\gdk-pixbuf-2.0" RMDir /r "$INSTDIR\etc\gtk-3.0" RMDir /r "$INSTDIR\etc\fonts" !if {HaveLibvirt} == True RMDir /r "$INSTDIR\etc\libvirt" !endif Delete /rebootok "$INSTDIR\bin\remote-viewer.com" Delete /rebootok "$INSTDIR\bin\remote-viewer.exe" Delete /rebootok "$INSTDIR\bin\libpangoft2-1.0-0.dll" Delete /rebootok "$INSTDIR\bin\libgdk_pixbuf-2.0-0.dll" Delete /rebootok "$INSTDIR\bin\libgdk-3-0.dll" !if ${HaveSpiceGtk} == True # gstreamer1 Delete /rebootok "$INSTDIR\bin\gst-inspect-1.0.exe" Delete /rebootok "$INSTDIR\bin\gst-launch-1.0.exe" Delete /rebootok "$INSTDIR\bin\gst-typefind-1.0.exe" Delete /rebootok "$INSTDIR\bin\libgstbase-1.0-0.dll" Delete /rebootok "$INSTDIR\bin\libgstcontroller-1.0-0.dll" Delete /rebootok "$INSTDIR\bin\libgstreamer-1.0-0.dll" # gstreamer1-plugins-base Delete /rebootok "$INSTDIR\bin\libgstapp-1.0-0.dll" Delete /rebootok "$INSTDIR\bin\libgstaudio-1.0-0.dll" Delete /rebootok "$INSTDIR\bin\libgstfft-1.0-0.dll" Delete /rebootok "$INSTDIR\bin\libgstpbutils-1.0-0.dll" Delete /rebootok "$INSTDIR\bin\libgsttag-1.0-0.dll" Delete /rebootok "$INSTDIR\bin\libusb-1.0.dll" Delete /rebootok "$INSTDIR\bin\libusbredirhost-1.dll" Delete /rebootok "$INSTDIR\bin\libusbredirparser-1.dll" Delete /rebootok "$INSTDIR\bin\libcelt051-0.dll" Delete /rebootok "$INSTDIR\bin\libopus-0.dll" Delete /rebootok "$INSTDIR\bin\liborc-test-0.4-0.dll" Delete /rebootok "$INSTDIR\bin\liborc-0.4-0.dll" Delete /rebootok "$INSTDIR\bin\libspice-client-glib-2.0-8.dll" Delete /rebootok "$INSTDIR\bin\libspice-controller-0.dll" Delete /rebootok "$INSTDIR\bin\libspice-client-gtk-3.0-4.dll" !endif Delete /rebootok "$INSTDIR\bin\zlib1.dll" Delete /rebootok "$INSTDIR\bin\libreadline6.dll" Delete /rebootok "$INSTDIR\bin\libffi-6.dll" Delete /rebootok "$INSTDIR\bin\libp11-kit-0.dll" Delete /rebootok "$INSTDIR\bin\libxml2-2.dll" Delete /rebootok "$INSTDIR\bin\libtasn1-6.dll" Delete /rebootok "$INSTDIR\bin\libssl-10.dll" Delete /rebootok "$INSTDIR\bin\libpng16-16.dll" Delete /rebootok "$INSTDIR\bin\libpixman-1-0.dll" Delete /rebootok "$INSTDIR\bin\libpangowin32-1.0-0.dll" Delete /rebootok "$INSTDIR\bin\libpangocairo-1.0-0.dll" Delete /rebootok "$INSTDIR\bin\libpango-1.0-0.dll" Delete /rebootok "$INSTDIR\bin\libjpeg-62.dll" Delete /rebootok "$INSTDIR\bin\libintl-8.dll" !if ${HaveLibvirt} == True Delete /rebootok "$INSTDIR\bin\libvirt-0.dll" Delete /rebootok "$INSTDIR\bin\libwinpthread-1.dll" Delete /rebootok "$INSTDIR\bin\libcurl-4.dll" Delete /rebootok "$INSTDIR\bin\libidn-11.dll" Delete /rebootok "$INSTDIR\bin\libssh2-1.dll" Delete /rebootok "$INSTDIR\bin\libportablexdr-0.dll" Delete /rebootok "$INSTDIR\bin\libvirt-qemu-0.dll" Delete /rebootok "$INSTDIR\bin\libvirt-lxc-0.dll" Delete /rebootok "$INSTDIR\bin\virsh.exe" Delete /rebootok "$INSTDIR\bin\virt-pki-validate" Delete /rebootok "$INSTDIR\bin\virt-xml-validate" Delete /rebootok "$INSTDIR\bin\virt-viewer.exe" !endif Delete /rebootok "$INSTDIR\bin\libgmp-10.dll" Delete /rebootok "$INSTDIR\bin\libhogweed-4-2.dll" Delete /rebootok "$INSTDIR\bin\libnettle-6-2.dll" Delete /rebootok "$INSTDIR\bin\libgcc_s_sjlj-1.dll" Delete /rebootok "$INSTDIR\bin\libgcc_s_seh-1.dll" !if ${HaveGtkVnc} == True Delete /rebootok "$INSTDIR\bin\libgpg-error-0.dll" Delete /rebootok "$INSTDIR\bin\libgcrypt-20.dll" Delete /rebootok "$INSTDIR\bin\libgvnc-1.0-0.dll" Delete /rebootok "$INSTDIR\bin\libgtk-vnc-2.0-0.dll" !endif Delete /rebootok "$INSTDIR\bin\libssp-0.dll" Delete /rebootok "$INSTDIR\bin\iconv.dll" Delete /rebootok "$INSTDIR\bin\libgtk-3-0.dll" Delete /rebootok "$INSTDIR\bin\libgthread-2.0-0.dll" Delete /rebootok "$INSTDIR\bin\libgobject-2.0-0.dll" Delete /rebootok "$INSTDIR\bin\libgnutls-30.dll" Delete /rebootok "$INSTDIR\bin\libgmodule-2.0-0.dll" Delete /rebootok "$INSTDIR\bin\libglib-2.0-0.dll" Delete /rebootok "$INSTDIR\bin\libgio-2.0-0.dll" Delete /rebootok "$INSTDIR\bin\libfreetype-6.dll" Delete /rebootok "$INSTDIR\bin\libfontconfig-1.dll" Delete /rebootok "$INSTDIR\bin\libexpat-1.dll" Delete /rebootok "$INSTDIR\bin\libcrypto-10.dll" Delete /rebootok "$INSTDIR\bin\libcairo-2.dll" Delete /rebootok "$INSTDIR\bin\libcairo-gobject-2.dll" Delete /rebootok "$INSTDIR\bin\libepoxy-0.dll" Delete /rebootok "$INSTDIR\bin\libbz2-1.dll" Delete /rebootok "$INSTDIR\bin\libatk-1.0-0.dll" !if ${HaveOVirt} == True Delete /rebootok "$INSTDIR\bin\libgovirt-2.dll" Delete /rebootok "$INSTDIR\bin\librest-0.7-0.dll" Delete /rebootok "$INSTDIR\bin\librest-extras-0.7-0.dll" Delete /rebootok "$INSTDIR\bin\libsoup-2.4-1.dll" Delete /rebootok "$INSTDIR\bin\libsqlite3-0.dll" Delete /rebootok "$INSTDIR\bin\libsoup-gnome-2.4-1.dll" !endif !if ${HaveOVirt} == True Delete /rebootok "$INSTDIR\lib\gio\modules\libgiognutls.dll" RMDir /r "$INSTDIR\lib\gio" !endif RMDir "$INSTDIR\bin" RMDir "$INSTDIR\lib" Delete /rebootok "$INSTDIR\deps.txt" RMDir "$INSTDIR" SectionEnd Section -post WriteUninstaller "$INSTDIR\Uninstall.exe" Call RegisterApplication SectionEnd