mirror of
https://github.com/hyblocker/OpenVR-SpaceCalibrator.git
synced 2026-10-06 14:00:19 +02:00
(chore): nova rewrite initial commit
This commit is contained in:
commit
33a086637e
36 files changed
+1366
No files matched your search
@@ -0,0 +1,207 @@
|
||||
;--------------------------------
|
||||
;Include Modern UI
|
||||
|
||||
!include "MUI2.nsh"
|
||||
|
||||
;--------------------------------
|
||||
;General
|
||||
|
||||
!define OVERLAY_BASEDIR "..\client_overlay\bin\win64"
|
||||
!define ARTIFACTS_BASEDIR "..\bin\artifacts\Release"
|
||||
!define DRIVER_RESDIR "..\bin\driver_01spacecalibrator"
|
||||
|
||||
Name "Space Calibrator"
|
||||
OutFile "SpaceCalibrator.exe"
|
||||
InstallDir "$PROGRAMFILES64\SpaceCalibrator"
|
||||
InstallDirRegKey HKLM "Software\SpaceCalibrator\Main" ""
|
||||
RequestExecutionLevel admin
|
||||
ShowInstDetails show
|
||||
|
||||
; Define the version number
|
||||
!define VERSION "1.5.1.0"
|
||||
; Set version information
|
||||
VIProductVersion "${VERSION}"
|
||||
VIAddVersionKey /LANG=1033 "ProductName" "Space Calibrator"
|
||||
VIAddVersionKey /LANG=1033 "FileDescription" "Space Calibrator Installer"
|
||||
VIAddVersionKey /LANG=1033 "LegalCopyright" "Open source at https://github.com/hyblocker/OpenVR-SpaceCalibrator"
|
||||
VIAddVersionKey /LANG=1033 "FileVersion" "${VERSION}"
|
||||
VIAddVersionKey /LANG=1033 "ProductVersion" "${VERSION}"
|
||||
|
||||
;--------------------------------
|
||||
;Variables
|
||||
|
||||
VAR upgradeInstallation
|
||||
|
||||
;--------------------------------
|
||||
;Interface Settings
|
||||
|
||||
!define MUI_ABORTWARNING
|
||||
|
||||
;--------------------------------
|
||||
;Pages
|
||||
|
||||
!insertmacro MUI_PAGE_LICENSE "..\LICENSE"
|
||||
!define MUI_PAGE_CUSTOMFUNCTION_PRE dirPre
|
||||
!insertmacro MUI_PAGE_DIRECTORY
|
||||
!insertmacro MUI_PAGE_INSTFILES
|
||||
|
||||
!insertmacro MUI_UNPAGE_CONFIRM
|
||||
!insertmacro MUI_UNPAGE_INSTFILES
|
||||
|
||||
;--------------------------------
|
||||
;Languages
|
||||
|
||||
!insertmacro MUI_LANGUAGE "English"
|
||||
|
||||
;--------------------------------
|
||||
;Macros
|
||||
|
||||
;--------------------------------
|
||||
;Functions
|
||||
|
||||
Function dirPre
|
||||
StrCmp $upgradeInstallation "true" 0 +2
|
||||
Abort
|
||||
FunctionEnd
|
||||
|
||||
Function .onInit
|
||||
StrCpy $upgradeInstallation "false"
|
||||
|
||||
ReadRegStr $R0 HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenVRSpaceCalibrator" "UninstallString"
|
||||
StrCmp $R0 "" done
|
||||
|
||||
|
||||
; If SteamVR is already running, display a warning message and exit
|
||||
FindWindow $0 "Qt5QWindowIcon" "SteamVR Status"
|
||||
StrCmp $0 0 +3
|
||||
MessageBox MB_OK|MB_ICONEXCLAMATION \
|
||||
"SteamVR is still running. Cannot install this software.$\nPlease close SteamVR and try again."
|
||||
Abort
|
||||
|
||||
|
||||
MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION \
|
||||
"Space Calibrator is already installed. $\n$\nClick `OK` to upgrade the \
|
||||
existing installation or `Cancel` to cancel this upgrade." \
|
||||
IDOK upgrade
|
||||
Abort
|
||||
|
||||
upgrade:
|
||||
StrCpy $upgradeInstallation "true"
|
||||
done:
|
||||
FunctionEnd
|
||||
|
||||
;--------------------------------
|
||||
;Installer Sections
|
||||
|
||||
Section "Install" SecInstall
|
||||
|
||||
StrCmp $upgradeInstallation "true" 0 noupgrade
|
||||
DetailPrint "Uninstall previous version..."
|
||||
ExecWait '"$INSTDIR\Uninstall.exe" /S _?=$INSTDIR'
|
||||
Delete $INSTDIR\Uninstall.exe
|
||||
Goto afterupgrade
|
||||
|
||||
noupgrade:
|
||||
|
||||
afterupgrade:
|
||||
|
||||
SetOutPath "$INSTDIR"
|
||||
|
||||
File "${ARTIFACTS_BASEDIR}\LICENSE"
|
||||
File "${ARTIFACTS_BASEDIR}\README"
|
||||
File "${ARTIFACTS_BASEDIR}\SpaceCalibrator.exe"
|
||||
File "${ARTIFACTS_BASEDIR}\openvr_api.dll"
|
||||
File "${ARTIFACTS_BASEDIR}\manifest.vrmanifest"
|
||||
File "${ARTIFACTS_BASEDIR}\icon.png"
|
||||
File "${ARTIFACTS_BASEDIR}\taskbar_icon.png"
|
||||
|
||||
ExecWait '"$INSTDIR\vcredist_x64.exe" /install /quiet'
|
||||
|
||||
Var /GLOBAL vrRuntimePath
|
||||
nsExec::ExecToStack '"$INSTDIR\SpaceCalibrator.exe" -openvrpath'
|
||||
Pop $0
|
||||
Pop $vrRuntimePath
|
||||
DetailPrint "VR runtime path: $vrRuntimePath"
|
||||
|
||||
; Old beta driver
|
||||
StrCmp $upgradeInstallation "true" 0 nocleanupbeta
|
||||
Delete "$vrRuntimePath\drivers\000spacecalibrator\driver.vrdrivermanifest"
|
||||
Delete "$vrRuntimePath\drivers\000spacecalibrator\resources\driver.vrresources"
|
||||
Delete "$vrRuntimePath\drivers\000spacecalibrator\resources\settings\default.vrsettings"
|
||||
Delete "$vrRuntimePath\drivers\000spacecalibrator\bin\win64\driver_000spacecalibrator.dll"
|
||||
Delete "$vrRuntimePath\drivers\000spacecalibrator\bin\win64\space_calibrator_driver.log"
|
||||
RMdir "$vrRuntimePath\drivers\000spacecalibrator\resources\settings"
|
||||
RMdir "$vrRuntimePath\drivers\000spacecalibrator\resources\"
|
||||
RMdir "$vrRuntimePath\drivers\000spacecalibrator\bin\win64\"
|
||||
RMdir "$vrRuntimePath\drivers\000spacecalibrator\bin\"
|
||||
RMdir "$vrRuntimePath\drivers\000spacecalibrator\"
|
||||
nocleanupbeta:
|
||||
|
||||
SetOutPath "$vrRuntimePath\drivers\01spacecalibrator"
|
||||
File "${DRIVER_RESDIR}\driver.vrdrivermanifest"
|
||||
SetOutPath "$vrRuntimePath\drivers\01spacecalibrator\resources"
|
||||
File "${DRIVER_RESDIR}\resources\driver.vrresources"
|
||||
SetOutPath "$vrRuntimePath\drivers\01spacecalibrator\resources\settings"
|
||||
File "${DRIVER_RESDIR}\resources\settings\default.vrsettings"
|
||||
SetOutPath "$vrRuntimePath\drivers\01spacecalibrator\bin\win64"
|
||||
File "${DRIVER_RESDIR}\bin\win64\driver_01spacecalibrator.dll"
|
||||
|
||||
WriteRegStr HKLM "Software\SpaceCalibrator\Main" "" $INSTDIR
|
||||
WriteRegStr HKLM "Software\SpaceCalibrator\Driver" "" $vrRuntimePath
|
||||
|
||||
WriteUninstaller "$INSTDIR\Uninstall.exe"
|
||||
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenVRSpaceCalibrator" "DisplayName" "Space Calibrator"
|
||||
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenVRSpaceCalibrator" "UninstallString" "$\"$INSTDIR\Uninstall.exe$\""
|
||||
|
||||
CreateShortCut "$SMPROGRAMS\Space Calibrator.lnk" "$INSTDIR\SpaceCalibrator.exe"
|
||||
|
||||
SetOutPath "$INSTDIR"
|
||||
nsExec::ExecToLog '"$INSTDIR\SpaceCalibrator.exe" -installmanifest'
|
||||
nsExec::ExecToLog '"$INSTDIR\SpaceCalibrator.exe" -activatemultipledrivers'
|
||||
|
||||
SectionEnd
|
||||
|
||||
;--------------------------------
|
||||
;Uninstaller Section
|
||||
|
||||
Section "Uninstall"
|
||||
; If SteamVR is already running, display a warning message and exit
|
||||
FindWindow $0 "Qt5QWindowIcon" "SteamVR Status"
|
||||
StrCmp $0 0 +3
|
||||
MessageBox MB_OK|MB_ICONEXCLAMATION \
|
||||
"SteamVR is still running. Cannot uninstall this software.$\nPlease close SteamVR and try again."
|
||||
Abort
|
||||
|
||||
SetOutPath "$INSTDIR"
|
||||
nsExec::ExecToLog '"$INSTDIR\SpaceCalibrator.exe" -removemanifest'
|
||||
|
||||
Var /GLOBAL vrRuntimePath2
|
||||
ReadRegStr $vrRuntimePath2 HKLM "Software\SpaceCalibrator\Driver" ""
|
||||
DetailPrint "VR runtime path: $vrRuntimePath2"
|
||||
Delete "$vrRuntimePath2\drivers\01spacecalibrator\driver.vrdrivermanifest"
|
||||
Delete "$vrRuntimePath2\drivers\01spacecalibrator\resources\driver.vrresources"
|
||||
Delete "$vrRuntimePath2\drivers\01spacecalibrator\resources\settings\default.vrsettings"
|
||||
Delete "$vrRuntimePath2\drivers\01spacecalibrator\bin\win64\driver_01spacecalibrator.dll"
|
||||
Delete "$vrRuntimePath2\drivers\01spacecalibrator\bin\win64\space_calibrator_driver.log"
|
||||
RMdir "$vrRuntimePath2\drivers\01spacecalibrator\resources\settings"
|
||||
RMdir "$vrRuntimePath2\drivers\01spacecalibrator\resources\"
|
||||
RMdir "$vrRuntimePath2\drivers\01spacecalibrator\bin\win64\"
|
||||
RMdir "$vrRuntimePath2\drivers\01spacecalibrator\bin\"
|
||||
RMdir "$vrRuntimePath2\drivers\01spacecalibrator\"
|
||||
|
||||
Delete "$INSTDIR\LICENSE"
|
||||
Delete "$INSTDIR\README"
|
||||
Delete "$INSTDIR\SpaceCalibrator.exe"
|
||||
Delete "$INSTDIR\openvr_api.dll"
|
||||
Delete "$INSTDIR\manifest.vrmanifest"
|
||||
Delete "$INSTDIR\icon.png"
|
||||
Delete "$INSTDIR\taskbar_icon.png"
|
||||
|
||||
DeleteRegKey HKLM "Software\SpaceCalibrator\Main"
|
||||
DeleteRegKey HKLM "Software\SpaceCalibrator\Driver"
|
||||
DeleteRegKey HKLM "Software\SpaceCalibrator"
|
||||
DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenVRSpaceCalibrator"
|
||||
|
||||
Delete "$SMPROGRAMS\Space Calibrator.lnk"
|
||||
SectionEnd
|
||||
|
||||
Reference in new issue
Block a user