181 lines
5.8 KiB
Plaintext
181 lines
5.8 KiB
Plaintext
|
!include "MUI.nsh"
|
||
|
|
||
|
!define MUI_ABORTWARNING
|
||
|
!define MUI_COMPONENTSPAGE_SMALLDESC
|
||
|
|
||
|
!define MUI_HEADERIMAGE
|
||
|
!define MUI_HEADERIMAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Header\orange.bmp"
|
||
|
|
||
|
!define MUI_WELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\orange.bmp"
|
||
|
!define MUI_UNWELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\orange.bmp"
|
||
|
|
||
|
!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\orange-install.ico"
|
||
|
!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\orange-uninstall.ico"
|
||
|
|
||
|
!define VERSION "0.9.0"
|
||
|
!define PRODUCT_VERSION "0.9.0.0"
|
||
|
|
||
|
Name "QSynergy ${VERSION}"
|
||
|
OutFile "qsynergy-${VERSION}-setup.exe"
|
||
|
InstallDir "$PROGRAMFILES\QSynergy\"
|
||
|
|
||
|
BrandingText " "
|
||
|
|
||
|
SetCompressor /FINAL bzip2
|
||
|
|
||
|
; Registry key to check for directory (so if you install again, it will
|
||
|
; overwrite the old one automatically)
|
||
|
InstallDirRegKey HKLM "Software\Fidra\QSynergy" "Install_Dir"
|
||
|
|
||
|
; ---------------------------
|
||
|
; Pages
|
||
|
; ---------------------------
|
||
|
|
||
|
!insertmacro MUI_PAGE_WELCOME
|
||
|
!insertmacro MUI_PAGE_LICENSE "..\COPYING"
|
||
|
|
||
|
!insertmacro MUI_PAGE_COMPONENTS
|
||
|
!insertmacro MUI_PAGE_DIRECTORY
|
||
|
!insertmacro MUI_PAGE_INSTFILES
|
||
|
!insertmacro MUI_PAGE_FINISH
|
||
|
|
||
|
!insertmacro MUI_UNPAGE_CONFIRM
|
||
|
!insertmacro MUI_UNPAGE_INSTFILES
|
||
|
!insertmacro MUI_UNPAGE_FINISH
|
||
|
|
||
|
|
||
|
|
||
|
; ---------------------------
|
||
|
; Languages
|
||
|
; ---------------------------
|
||
|
|
||
|
!insertmacro MUI_LANGUAGE "English"
|
||
|
|
||
|
LangString qsynergy ${LANG_ENGLISH} "QSynergy program files"
|
||
|
LangString DESC_qsynergy ${LANG_ENGLISH} "The program files required for QSynergy."
|
||
|
|
||
|
LangString qt_dlls ${LANG_ENGLISH} "Qt libraries QSynergy needs to run"
|
||
|
LangString DESC_qt_dlls ${LANG_ENGLISH} "If you have Qt 4.3 or newer installed, you don't need to install this."
|
||
|
|
||
|
LangString startmenu ${LANG_ENGLISH} "Start menu entry"
|
||
|
LangString DESC_startmenu ${LANG_ENGLISH} "Create a start menu entry for QSynergy."
|
||
|
|
||
|
LangString desktopicon ${LANG_ENGLISH} "Desktop icon"
|
||
|
LangString DESC_desktopicon ${LANG_ENGLISH} "Create an icon on the desktop for QSynergy."
|
||
|
|
||
|
; ---------------------------
|
||
|
; Environment PATH manipulation
|
||
|
; ---------------------------
|
||
|
|
||
|
; !include "path_manip.nsh"
|
||
|
|
||
|
|
||
|
; ---------------------------
|
||
|
; Version stuff
|
||
|
; ---------------------------
|
||
|
|
||
|
VIProductVersion "${PRODUCT_VERSION}"
|
||
|
|
||
|
VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductName" "QSynergy ${VERSION} Setup"
|
||
|
VIAddVersionKey /LANG=${LANG_ENGLISH} "Comments" "Installs QSynergy ${VERSION} on your computer."
|
||
|
VIAddVersionKey /LANG=${LANG_ENGLISH} "CompanyName" "Fidra Software Entwicklung, Volker Lanz"
|
||
|
VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalTrademarks" ""
|
||
|
VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalCopyright" "2008 Fidra Software Entwicklung, Volker Lanz"
|
||
|
VIAddVersionKey /LANG=${LANG_ENGLISH} "FileDescription" "QSynergy ${VERSION} Setup"
|
||
|
VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" "${VERSION}"
|
||
|
|
||
|
|
||
|
; ---------------------------
|
||
|
; Callbacks
|
||
|
; ---------------------------
|
||
|
|
||
|
Function .onInit
|
||
|
!insertmacro MUI_LANGDLL_DISPLAY
|
||
|
FunctionEnd
|
||
|
|
||
|
Function un.onInit
|
||
|
!insertmacro MUI_LANGDLL_DISPLAY
|
||
|
FunctionEnd
|
||
|
|
||
|
|
||
|
; ---------------------------
|
||
|
; The stuff to install
|
||
|
; ---------------------------
|
||
|
|
||
|
Section $(qsynergy) section_qsynergy
|
||
|
SectionIn RO
|
||
|
|
||
|
SetOutPath "$INSTDIR"
|
||
|
File "..\release\qsynergy.exe"
|
||
|
File "..\README"
|
||
|
File "..\COPYING"
|
||
|
|
||
|
; Write the installation path into the registry
|
||
|
WriteRegStr HKLM "Software\Fidra\QSynergy" "Install_Dir" "$INSTDIR"
|
||
|
|
||
|
; Write the uninstall keys for Windows
|
||
|
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\QSynergy" "DisplayName" "QSynergy ${VERSION}"
|
||
|
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\QSynergy" "UninstallString" '"$INSTDIR\uninstall.exe"'
|
||
|
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\QSynergy" "NoModify" 1
|
||
|
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\QSynergy" "NoRepair" 1
|
||
|
WriteUninstaller "uninstall.exe"
|
||
|
SectionEnd
|
||
|
|
||
|
Section $(qt_dlls) section_qt_dlls
|
||
|
SetOutPath "$INSTDIR"
|
||
|
File "..\..\..\..\sw\qt\lib\qtcore4.dll"
|
||
|
File "..\..\..\..\sw\qt\lib\qtgui4.dll"
|
||
|
File "..\..\..\..\sw\qt\lib\qtnetwork4.dll"
|
||
|
SectionEnd
|
||
|
|
||
|
Section $(startmenu) section_startmenu
|
||
|
CreateDirectory "$SMPROGRAMS\QSynergy"
|
||
|
CreateShortCut "$SMPROGRAMS\QSynergy\QSynergy.lnk" "$INSTDIR\qsynergy.exe" "" "$INSTDIR\qsynergy.exe" 0
|
||
|
CreateShortCut "$SMPROGRAMS\QSynergy\README.lnk" "$INSTDIR\README" "" "$INSTDIR\README" 0
|
||
|
CreateShortCut "$SMPROGRAMS\QSynergy\COPYING.lnk" "$INSTDIR\COPYING" "" "$INSTDIR\COPYING" 0
|
||
|
CreateShortCut "$SMPROGRAMS\QSynergy\Uninstall.lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0
|
||
|
SectionEnd
|
||
|
|
||
|
Section $(desktopicon) section_desktopicon
|
||
|
CreateShortCut "$DESKTOP\QSynergy.lnk" "$INSTDIR\qsynergy.exe" "" "$INSTDIR\qsynergy.exe" 0
|
||
|
SectionEnd
|
||
|
|
||
|
; ---------------------------
|
||
|
; Uninstaller
|
||
|
; ---------------------------
|
||
|
|
||
|
Section "Uninstall"
|
||
|
; Remove registry keys
|
||
|
DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\QSynergy"
|
||
|
DeleteRegKey HKLM SOFTWARE\Fidra\QSynergy
|
||
|
|
||
|
; Remove files and uninstaller
|
||
|
Delete "$INSTDIR\uninstall.exe"
|
||
|
|
||
|
Delete "$INSTDIR\*.exe"
|
||
|
Delete "$INSTDIR\README"
|
||
|
Delete "$INSTDIR\COPYING"
|
||
|
Delete "$INSTDIR\*.dll"
|
||
|
|
||
|
; startmenu and desktop icon
|
||
|
Delete "$SMPROGRAMS\QSynergy\*.*"
|
||
|
Delete "$DESKTOP\QSynergy.lnk"
|
||
|
|
||
|
; Remove directories used
|
||
|
RMDir "$SMPROGRAMS\QSynergy"
|
||
|
RMDir "$INSTDIR"
|
||
|
SectionEnd
|
||
|
|
||
|
|
||
|
; ---------------------------
|
||
|
; Section descriptions
|
||
|
; ---------------------------
|
||
|
|
||
|
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
|
||
|
!insertmacro MUI_DESCRIPTION_TEXT ${section_qsynergy} $(DESC_qsynergy)
|
||
|
!insertmacro MUI_DESCRIPTION_TEXT ${section_qt_dlls} $(DESC_qt_dlls)
|
||
|
!insertmacro MUI_DESCRIPTION_TEXT ${section_startmenu} $(DESC_startmenu)
|
||
|
!insertmacro MUI_DESCRIPTION_TEXT ${section_desktopicon} $(DESC_desktopicon)
|
||
|
!insertmacro MUI_FUNCTION_DESCRIPTION_END
|
||
|
|