Sfoglia il codice sorgente

fix(bundler/nsis): auto append product name when choosing a new install path (#9478)

* Fix picking install folder
doesn't auto append product name folder for nsis installer

* Add change file

* patch -> patch:enhance

* Update nsis-append-product-name.md
Tony 1 anno fa
parent
commit
de7bcf3cc5

+ 5 - 0
.changes/nsis-append-product-name.md

@@ -0,0 +1,5 @@
+---
+'tauri-bundler': 'patch:enhance'
+---
+
+Append product name automatically when choosing a new install path using browse for nsis installer

+ 7 - 1
tooling/bundler/src/bundle/windows/templates/installer.nsi

@@ -48,6 +48,12 @@ Name "${PRODUCTNAME}"
 BrandingText "${COPYRIGHT}"
 OutFile "${OUTFILE}"
 
+; We don't actually use this value as default install path,
+; it's just for nsis to append the product name folder in the directory selector
+; https://nsis.sourceforge.io/Reference/InstallDir
+!define PLACEHOLDER_INSTALL_DIR "placeholder\${PRODUCTNAME}"
+InstallDir "${PLACEHOLDER_INSTALL_DIR}"
+
 VIProductVersion "${VERSIONWITHBUILD}"
 VIAddVersionKey "ProductName" "${PRODUCTNAME}"
 VIAddVersionKey "FileDescription" "${SHORTDESCRIPTION}"
@@ -388,7 +394,7 @@ Function .onInit
 
   !insertmacro SetContext
 
-  ${If} $INSTDIR == ""
+  ${If} $INSTDIR == "${PLACEHOLDER_INSTALL_DIR}"
     ; Set default install location
     !if "${INSTALLMODE}" == "perMachine"
       ${If} ${RunningX64}