diff options
| author | Bennett Goble <signal@lindenlab.com> | 2022-12-13 13:48:14 -0800 | 
|---|---|---|
| committer | Bennett Goble <signal@lindenlab.com> | 2023-04-04 12:21:07 -0700 | 
| commit | b09f61f6bfe8fdaaff2693180af8b7b26d3a9176 (patch) | |
| tree | 263b06a3993339405544968c9af358ac857fb18f | |
| parent | b28971e4bf8cb41ea9eecead2b5676720355e30b (diff) | |
SL-18679: Find newer NSIS installation path
| -rw-r--r-- | indra/newview/installers/windows/installer_template.nsi | 1 | ||||
| -rwxr-xr-x | indra/newview/viewer_manifest.py | 30 | 
2 files changed, 9 insertions, 22 deletions
| diff --git a/indra/newview/installers/windows/installer_template.nsi b/indra/newview/installers/windows/installer_template.nsi index 60e26274cb..5fb42ce2fd 100644 --- a/indra/newview/installers/windows/installer_template.nsi +++ b/indra/newview/installers/windows/installer_template.nsi @@ -26,7 +26,6 @@  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;; Compiler flags
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 -Unicode true
  SetOverwrite on				# Overwrite files
  SetCompress auto			# Compress if saves space
  SetCompressor /solid lzma	# Compress whole installer as one block
 diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 89481add29..c312c1d248 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -790,27 +790,15 @@ class WindowsManifest(ViewerManifest):          # Check two paths, one for Program Files, and one for Program Files (x86).          # Yay 64bit windows. -        for ProgramFiles in 'ProgramFiles', 'ProgramFiles(x86)': -            NSIS_path = os.path.expandvars(r'${%s}\NSIS\makensis.exe' % ProgramFiles) -            if os.path.exists(NSIS_path): -                break -        installer_created=False -        nsis_attempts=3 -        nsis_retry_wait=15 -        for attempt in range(nsis_attempts): -            try: -                self.run_command([NSIS_path, '/V2', self.dst_path_of(tempfile)]) -            except ManifestError as err: -                if attempt+1 < nsis_attempts: -                    print("nsis failed, waiting %d seconds before retrying" % nsis_retry_wait, file=sys.stderr) -                    time.sleep(nsis_retry_wait) -                    nsis_retry_wait*=2 -            else: -                # NSIS worked! Done! -                break -        else: -            print("Maximum nsis attempts exceeded; giving up", file=sys.stderr) -            raise +        nsis_path = "makensis.exe" +        for program_files in '${programfiles}', '${programfiles(x86)}': +            for nesis_path in 'NSIS', 'NSIS\\Unicode': +                possible_path = os.path.expandvars(f"{program_files}\\{nesis_path}\\makensis.exe") +                if os.path.exists(possible_path): +                    nsis_path = possible_path +                    break + +        self.run_command([possible_path, '/V2', self.dst_path_of(tempfile)])          self.sign(installer_file)          self.created_path(self.dst_path_of(installer_file)) | 
