Skip to content

Commit 9d8bb0f

Browse files
committed
Change windows installer to innosetup
1 parent 1f97a86 commit 9d8bb0f

File tree

2 files changed

+10
-31
lines changed

2 files changed

+10
-31
lines changed

sign-pkg-windows/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
## sign-pkg-windows
22

3-
Retrieve and unpack the `Windows-app` artifact from the preceding viewer build. Sign each of the embedded executables using the specified certificate, then run NSIS to package an installer (using files previously bundled into the `Windows-app` artifact). Sign the installer, then post it as a new artifact.
3+
Retrieve and unpack the `Windows-app` artifact from the preceding viewer build. Sign each of the embedded executables using the specified certificate, then run Innosetup ISCC to package an installer (using files previously bundled into the `Windows-app` artifact). Sign the installer, then post it as a new artifact.
44

55
| Input | Description |
66
| ----- | ----------- |

sign-pkg-windows/action.yaml

Lines changed: 9 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: sign-pkg-windows
22
description:
3-
Sign and package the Windows Linden viewer.
3+
Sign and package the Windows Alchemy Viewer.
44

55
inputs:
66
vault_uri:
@@ -55,38 +55,17 @@ runs:
5555
done
5656
5757
- name: Build the installer
58-
id: nsis
59-
shell: python
58+
id: iscc
59+
shell: bash
6060
run: |
61-
# Logic derived from viewer_manifest.py - still needed though?
62-
# Use Python because bash refuses to expand "${programfiles(x86)}" --
63-
# even though that's really the name of the Windows environment
64-
# variable.
65-
import os
66-
import shlex
67-
from shutil import which
68-
import subprocess
69-
nsis_path = which(
70-
"makensis",
71-
path=os.pathsep.join(
72-
os.path.join(program_files, subpath)
73-
for program_files in
74-
(os.getenv(var) for var in ('programfiles', 'programfiles(x86)'))
75-
for subpath in ('NSIS', r'NSIS\Unicode')
76-
if program_files))
77-
assert nsis_path
78-
79-
# This .nsi file was prepared by viewer_manifest.py (by substituting
80-
# values into a template .nsi file) and bundled into the top level of
81-
# the Windows-app artifact.
82-
command = [nsis_path, '/V2', 'secondlife_setup_tmp.nsi']
83-
print(shlex.join(command))
84-
subprocess.check_call(command, cwd='.app')
61+
pushd ".app"
62+
iscc.exe -Q alchemy_setup_tmp.iss
63+
popd
8564
86-
- name: Dump NSIS input file
87-
if: ${{ failure() && steps.nsis.conclusion == 'failure' }}
65+
- name: Dump ISS input file
66+
if: ${{ failure() && steps.isccZ.conclusion == 'failure' }}
8867
shell: bash
89-
run: cat '.app/secondlife_setup_tmp.nsi'
68+
run: cat '.app/alchemy_setup_tmp.iss'
9069

9170
- name: Export installer path to env
9271
shell: bash

0 commit comments

Comments
 (0)