Better windows installer (#2387)

* feat: Add redist to windows installer * feat: Add new windows icon

Konstantin Ullrich committed Jul 19, 2025 at 00:47 UTC 9b768e8ff1cae5c371f6e93a8b62671d8015387d
5 files changed +35 -2
pubspec_base.yaml
+10
@@ -150,6 +150,7 @@ dev_dependencies:
150 git:
151 url: https://github.com/cake-tech/google-translator.git
152 version: 1.0.0
153 + msix: ^3.16.9
154
155 dependency_overrides:
156 bech32:
@@ -221,3 +222,12 @@ flutter:
222 - asset: assets/fonts/Lato-Medium.ttf
223 - asset: assets/fonts/Lato-Semibold.ttf
224 - asset: assets/fonts/Lato-Bold.ttf
225 +
226 +msix_config:
227 + display_name: Cake Wallet
228 + publisher_display_name: Cake Labs
229 + identity_name: com.cakewallet.wallet
230 + msix_version: 1.0.0.1
231 + logo_path: assets/images/app_logo.png
232 + trim_logo: false
233 + capabilities: internetClient
scripts/windows/.gitignore
+2 -1
@@ -1 +1,2 @@
1 -actions-runner
\ No newline at end of file
1 +actions-runner
2 +vc_redist.x64.exe
scripts/windows/README.md new
+21
@@ -0,0 +1,21 @@
1 +# Windows Build Instructions
2 +
3 +## Prerequisites
4 +
5 +Before building the Windows installer, make sure you have the following prerequisites:
6 +
7 +1. Inno Setup installed on your system
8 +2. Microsoft Visual C++ Redistributable for Visual Studio 2022 (x64) installer
9 +
10 +## Downloading the VC++ Redistributable Installer
11 +
12 +The Windows installer requires the Microsoft Visual C++ Redistributable for Visual Studio 2022 (x64) installer. You need to download it from Microsoft's website and place it in the same directory as the Inno Setup script (`build_exe_installer.iss`).
13 +
14 +1. Download the VC++ Redistributable installer from: https://aka.ms/vs/17/release/vc_redist.x64.exe
15 +2. Save the file as `vc_redist.x64.exe` in the `scripts\windows` directory
16 +
17 +## Building the Installer
18 +
19 +Once you have downloaded the VC++ Redistributable installer, you can build the Windows installer by running the Inno Setup script.
20 +
21 +The installer will include the VC++ Redistributable and install it during the Cake Wallet installation process.
scripts/windows/build_exe_installer.iss
+2 -1
@@ -33,6 +33,7 @@ Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{
33
34 [Files]
35 Source: "..\..\build\windows\x64\runner\Release\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
36 +Source: "vc_redist.x64.exe"; DestDir: "{tmp}"; Flags: deleteafterinstall
37 ; NOTE: Don't use "Flags: ignoreversion" on any shared system files
38
39 [Icons]
@@ -40,5 +41,5 @@ Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
41 Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
42
43 [Run]
44 +Filename: "{tmp}\vc_redist.x64.exe"; Parameters: "/install /quiet /norestart"; StatusMsg: "Installing VC++ Redistributable..."; Flags: waituntilterminated
45 Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent
44 -
windows/runner/resources/app_icon.ico
Binary files a/windows/runner/resources/app_icon.ico and b/windows/runner/resources/app_icon.ico differ