diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 7aafc2a7..c5abc6ac 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -405,8 +405,15 @@ jobs:
name: windows-arm64-build
path: build-arm64
+ - name: Read version from pubspec
+ id: version
+ shell: pwsh
+ run: |
+ $v = (Select-String -Path pubspec.yaml -Pattern '^version:\s*(\S+)').Matches[0].Groups[1].Value -replace '\+.*'
+ echo "version=$v" >> $env:GITHUB_OUTPUT
+
- name: Build installer and portables
- run: .\windows\build-installer.ps1 -X64BuildDir "build-x64" -Arm64BuildDir "build-arm64"
+ run: .\windows\build-installer.ps1 -X64BuildDir "build-x64" -Arm64BuildDir "build-arm64" -Version "${{ steps.version.outputs.version }}"
- name: Sign installer for WinSparkle (EdDSA)
if: env.SPARKLE_PRIVATE_KEY != ''
@@ -761,7 +768,8 @@ jobs:
windows
+ sparkle:edSignature="${WIN_ED_SIG}"
+ sparkle:installerArguments="/SILENT /SP-" />
XMLEOF
fi
diff --git a/windows/build-installer.ps1 b/windows/build-installer.ps1
index 0c141c9d..00c24e3c 100644
--- a/windows/build-installer.ps1
+++ b/windows/build-installer.ps1
@@ -149,7 +149,7 @@ Name: "{group}\{cm:UninstallProgram,{#Name}}"; Filename: "{uninstallexe}"
Name: "{autodesktop}\{#Name}"; Filename: "{app}\{#ExeName}"; Tasks: desktopicon
[Run]
-Filename: "{app}\{#ExeName}"; Description: "{cm:LaunchProgram,{#Name}}"; Flags: nowait postinstall skipifsilent
+Filename: "{app}\{#ExeName}"; Description: "{cm:LaunchProgram,{#Name}}"; Flags: nowait postinstall
[Code]
function IsX64: Boolean;
@@ -205,7 +205,7 @@ Name: "{group}\{cm:UninstallProgram,{#Name}}"; Filename: "{uninstallexe}"
Name: "{autodesktop}\{#Name}"; Filename: "{app}\{#ExeName}"; Tasks: desktopicon
[Run]
-Filename: "{app}\{#ExeName}"; Description: "{cm:LaunchProgram,{#Name}}"; Flags: nowait postinstall skipifsilent
+Filename: "{app}\{#ExeName}"; Description: "{cm:LaunchProgram,{#Name}}"; Flags: nowait postinstall
"@
}