From 451b0bfa87a3f02e87e36b180b7c1f70ce25d7b0 Mon Sep 17 00:00:00 2001 From: abbey <61197745+affectioned@users.noreply.github.com> Date: Mon, 16 Jun 2025 22:17:13 +0200 Subject: [PATCH] updated installer for winget & added versioning (#1264) * update installer for window's winget & add proper versioning to the installer - also fixed plugins not being referenced properly * changed passing version to installer.nsi from an include file instead of args * Fix local favorites import * Fix instance info disabled content settings & VR overlay warning * fix change autoUpdateVRCX * Search by userNotes, notes in playerList and friendsList * Cef v137.0.100 * Electron v36.4.0 --------- Co-authored-by: Natsumi Co-authored-by: pa --- Installer/build-installer.bat | 14 ++++++++++++++ Installer/installer.nsi | 14 +++++++++++--- Installer/version_define.nsh | 1 + 3 files changed, 26 insertions(+), 3 deletions(-) create mode 100644 Installer/version_define.nsh diff --git a/Installer/build-installer.bat b/Installer/build-installer.bat index 48962cce..5e25b0fc 100644 --- a/Installer/build-installer.bat +++ b/Installer/build-installer.bat @@ -1,2 +1,16 @@ +setlocal + +:: Retrieve the version string from the 'Version' file located in the parent directory. +:: Load version from file into environment variable +for /f "usebackq delims=" %%v in ("..\Version") do set "VERSION=%%v" +set "VERSION=%VERSION%.0" + +:: Append ".0" to the version. This converts 'X.X.X' to 'X.X.X.0', +:: satisfying NSIS's strict four-part version format (e.g., for VIProductVersion). +:: Winget will treat 'X.X.X.0' as equal to 'X.X.X', so it won't trigger an unnecessary update. +echo !define PRODUCT_VERSION_FROM_FILE "%VERSION%" > version_define.nsh + +:: Compile the NSIS installer. "C:\Program Files (x86)\NSIS\makensis.exe" installer.nsi + pause \ No newline at end of file diff --git a/Installer/installer.nsi b/Installer/installer.nsi index 7217c17b..daef1c47 100644 --- a/Installer/installer.nsi +++ b/Installer/installer.nsi @@ -5,11 +5,15 @@ ;https://nsis.sourceforge.io/NsProcess_plugin ;https://nsis.sourceforge.io/Inetc_plug-in +!addplugindir "Plugins\x86-unicode" + ;-------------------------------- ;Version + !include "version_define.nsh" + + !define PRODUCT_VERSION ${PRODUCT_VERSION_FROM_FILE} + !define VERSION ${PRODUCT_VERSION_FROM_FILE} - !define PRODUCT_VERSION "1.0.0.0" - !define VERSION "1.0.0.0" VIProductVersion "${PRODUCT_VERSION}" VIFileVersion "${VERSION}" VIAddVersionKey "FileVersion" "${VERSION}" @@ -166,6 +170,10 @@ Section "Install" SecInstall WriteRegStr HKLM "Software\VRCX" "InstallDir" $INSTDIR WriteUninstaller "$INSTDIR\Uninstall.exe" WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VRCX" "DisplayName" "VRCX" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VRCX" "Publisher" "vrcx-team" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VRCX" "DisplayVersion" "${VERSION}" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VRCX" "DisplayArch" "x64" + WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VRCX" "InstallLocation" "$INSTDIR" WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VRCX" "UninstallString" "$\"$INSTDIR\Uninstall.exe$\"" WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\VRCX" "DisplayIcon" "$\"$INSTDIR\VRCX.ico$\"" @@ -212,4 +220,4 @@ Section "Uninstall" Delete "$SMPROGRAMS\VRCX.lnk" Delete "$DESKTOP\VRCX.lnk" ${EndIf} -SectionEnd +SectionEnd \ No newline at end of file diff --git a/Installer/version_define.nsh b/Installer/version_define.nsh new file mode 100644 index 00000000..cc0af198 --- /dev/null +++ b/Installer/version_define.nsh @@ -0,0 +1 @@ +!define PRODUCT_VERSION_FROM_FILE "2025.05.09.0"