From 5b0da3942e3318283cc153b8c5ca3cc82657ff38 Mon Sep 17 00:00:00 2001 From: Andrew Belt Date: Mon, 18 Mar 2019 06:37:52 -0400 Subject: [PATCH] Reenable NSIS installer --- Makefile | 4 +- installer-banner.bmp | Bin 34254 -> 0 bytes installer.nsi | 216 ++++++++++++++++++------------------------- 3 files changed, 91 insertions(+), 129 deletions(-) delete mode 100644 installer-banner.bmp diff --git a/Makefile b/Makefile index baf6b714..9030b158 100644 --- a/Makefile +++ b/Makefile @@ -144,8 +144,8 @@ ifdef ARCH_WIN cd dist && zip -5 -r Rack-$(VERSION)-$(ARCH).zip Rack # Make NSIS installer # pacman -S mingw-w64-x86_64-nsis - # makensis installer.nsi - # mv Rack-setup.exe dist/Rack-$(VERSION)-$(ARCH).exe + makensis installer.nsi + mv installer.exe dist/Rack-$(VERSION)-$(ARCH).exe endif # Rack SDK diff --git a/installer-banner.bmp b/installer-banner.bmp deleted file mode 100644 index 616104b3eee8387d9c5f8285174a63a33b7a765d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34254 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 diff --git a/installer.nsi b/installer.nsi index 9964a5c4..d208df90 100644 --- a/installer.nsi +++ b/installer.nsi @@ -1,127 +1,89 @@ - -!include "MUI2.nsh" - -Name "VCV Rack" -OutFile "Rack-setup.exe" -SetCompressor "bzip2" -CRCCheck On - -;Default installation folder -InstallDir "$PROGRAMFILES\VCV" - -;Get installation folder from registry if available -InstallDirRegKey HKCU "Software\VCV Rack" "" - -;Request admin permissions so we can install to Program Files and add a registry entry -RequestExecutionLevel admin - - - -!define MUI_ICON "icon.ico" - -!define MUI_HEADERIMAGE -!define MUI_HEADERIMAGE_BITMAP "installer-banner.bmp" ; 150x57 -; !define MUI_WELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\win.bmp" ; 164x314 -; !define MUI_UNWELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\win.bmp" ; 164x314 -!define MUI_COMPONENTSPAGE_NODESC - - -; Pages - -!insertmacro MUI_PAGE_COMPONENTS -!insertmacro MUI_PAGE_DIRECTORY - -Var VST_64_DIR -!define MUI_DIRECTORYPAGE_VARIABLE $VST_64_DIR -!define MUI_DIRECTORYPAGE_TEXT_TOP "Bridge 64-bit VST plugin install directory" -!define MUI_PAGE_CUSTOMFUNCTION_PRE VST_64_DIR_PRE -!insertmacro MUI_PAGE_DIRECTORY - -Var VST_32_DIR -!define MUI_DIRECTORYPAGE_VARIABLE $VST_32_DIR -!define MUI_DIRECTORYPAGE_TEXT_TOP "Bridge 32-bit VST plugin install directory" -!define MUI_PAGE_CUSTOMFUNCTION_PRE VST_32_DIR_PRE -!insertmacro MUI_PAGE_DIRECTORY - -!insertmacro MUI_PAGE_INSTFILES - -!insertmacro MUI_UNPAGE_CONFIRM -!insertmacro MUI_UNPAGE_INSTFILES - -!insertmacro MUI_LANGUAGE "English" - - -; Sections - -Section "VCV Rack" VCVRACK - SectionIn RO - SetOutPath "$INSTDIR" - - CreateDirectory $OUTDIR - File /r /x "Bridge" "dist\Rack" - - ;Store installation folder - WriteRegStr HKCU "Software\VCV Rack" "" $INSTDIR - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VCV Rack" "DisplayName" "VCV Rack" - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VCV Rack" "UninstallString" "$\"$INSTDIR\UninstallRack.exe$\"" - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VCV Rack" "QuietUninstallString" "$\"$INSTDIR\UninstallRack.exe$\" /S" - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VCV Rack" "InstallLocation" "$\"$INSTDIR$\"" - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VCV Rack" "Publisher" "VCV" - - ;Create uninstaller - WriteUninstaller "$INSTDIR\UninstallRack.exe" - - ;Create shortcuts - CreateDirectory "$SMPROGRAMS" - ; Set working directory of shortcut - SetOutPath "$INSTDIR\Rack" - CreateShortcut "$SMPROGRAMS\VCV Rack.lnk" "$INSTDIR\Rack\Rack.exe" -SectionEnd - - -Section "Bridge 64-bit VST plugin" VST_64 - StrCpy $OUTDIR $VST_64_DIR - CreateDirectory $OUTDIR - File "dist\Rack\Bridge\VCV-Bridge-64.dll" - File "dist\Rack\Bridge\VCV-Bridge-fx-64.dll" -SectionEnd - - -Section "Bridge 32-bit VST plugin" VST_32 - StrCpy $OUTDIR $VST_32_DIR - CreateDirectory $OUTDIR - File "dist\Rack\Bridge\VCV-Bridge-32.dll" - File "dist\Rack\Bridge\VCV-Bridge-fx-32.dll" -SectionEnd - - -Section "Uninstall" - RMDir /r "$INSTDIR\Rack" - Delete "$INSTDIR\UninstallRack.exe" - RMDir "$INSTDIR" - - Delete "$SMPROGRAMS\VCV Rack.lnk" - - DeleteRegKey /ifempty HKCU "Software\VCV Rack" - DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VCV Rack" -SectionEnd - - -; Functions - -Function VST_64_DIR_PRE - ${Unless} ${SectionIsSelected} ${VST_64} - Abort - ${EndUnless} -FunctionEnd - -Function VST_32_DIR_PRE - ${Unless} ${SectionIsSelected} ${VST_32} - Abort - ${EndUnless} -FunctionEnd - -Function .onInit - StrCpy $VST_64_DIR "$PROGRAMFILES\Steinberg\VSTPlugins" - StrCpy $VST_32_DIR "$PROGRAMFILES (x86)\Steinberg\VSTPlugins" -FunctionEnd +!include "MUI2.nsh" + +Name "VCV Rack" +OutFile "installer.exe" +SetCompressor /solid "lzma" +CRCCheck On + +; Default installation folder +InstallDir "$PROGRAMFILES\VCV\Rack" + +; Get installation folder from registry if available +InstallDirRegKey HKLM "Software\VCV\Rack" "" + +; Request admin permissions so we can install to Program Files and add a registry entry +RequestExecutionLevel admin + + +; MUI pages + +!define MUI_ICON "icon.ico" +!define MUI_HEADERIMAGE +;!define MUI_HEADERIMAGE_BITMAP "installer-banner.bmp" ; 150x57 +;!define MUI_WELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\win.bmp" ; 164x314 +;!define MUI_UNWELCOMEFINISHPAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Wizard\win.bmp" ; 164x314 + +!define MUI_COMPONENTSPAGE_NODESC +!insertmacro MUI_PAGE_COMPONENTS + +!insertmacro MUI_PAGE_DIRECTORY + +!insertmacro MUI_PAGE_INSTFILES + +!define MUI_FINISHPAGE_RUN "$INSTDIR\Rack.exe" +!define MUI_FINISHPAGE_RUN_TEXT "Launch VCV Rack" +!insertmacro MUI_PAGE_FINISH + +!insertmacro MUI_UNPAGE_CONFIRM + +!insertmacro MUI_UNPAGE_INSTFILES + +!insertmacro MUI_LANGUAGE "English" + + +; Sections + +Section "VCV Rack" VCV_RACK_SECTION + SectionIn RO + SetOutPath "$INSTDIR" + + File /r "dist\Rack\*" + + ; Store installation folder + WriteRegStr HKLM "Software\VCV\Rack" "" "$INSTDIR" + + ; Write uninstaller info + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VCV Rack" "DisplayName" "VCV Rack" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VCV Rack" "DisplayIcon" "$\"$INSTDIR\Rack.exe$\"" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VCV Rack" "UninstallString" "$\"$INSTDIR\Uninstall.exe$\"" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VCV Rack" "QuietUninstallString" "$\"$INSTDIR\Uninstall.exe$\" \S" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VCV Rack" "InstallLocation" "$\"$INSTDIR$\"" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VCV Rack" "Publisher" "VCV" + SectionGetSize ${VCV_RACK_SECTION} $0 + WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VCV Rack" "EstimatedSize" $0 + + ; Create uninstaller + WriteUninstaller "$INSTDIR\Uninstall.exe" + + ; Create shortcuts + CreateDirectory "$SMPROGRAMS" + CreateShortcut "$SMPROGRAMS\VCV Rack.lnk" "$INSTDIR\Rack.exe" +SectionEnd + + +Section "Uninstall" + Delete "$INSTDIR\Uninstall.exe" + Delete "$INSTDIR\*" + RMDir /r "$INSTDIR\res" + RMDir "$INSTDIR" + RMDir "$INSTDIR\.." + + Delete "$SMPROGRAMS\VCV Rack.lnk" + + DeleteRegKey HKLM "Software\VCV\Rack" + DeleteRegKey /ifempty HKLM "Software\VCV" + DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VCV Rack" +SectionEnd + + +; Functions