desktop
desktop copied to clipboard
[MM-55341][MM-56894] Use `electron-builder` to create the MSI installer, drop support for 32-bit Windows and the NSIS installer
Summary
This PR contains changes to revamp our Windows installer building process. It does away with the custom script we had to build the MSI installer, and elects to use electron-builder
with a few modifications to the flow.
Some features provided by the new MSI installer that work out of the box:
- One-click per-user installation, similar to our original EXE/NSIS installer
- Auto-update functionality built in, so that if you choose, you can still get automatic updates to the newest version.
- A host of administrative functionality via the command line:
- Per-machine installation by specifying
ALLUSERS=1
- Outright disabling of automatic updates by specifying
DISABLEAUTOUPDATE=1
- Ability to modify the installation directory by specifying
APPLICATIONFOLDER=<install directory>
- Per-machine installation by specifying
With this PR, this also marks the following changes in support for the Desktop App:
- The MSI installer is now officially out of beta :tada:
- 32-bit Windows will no longer be supported for newer versions, and we will be officially supporting ARM64 (in a beta capacity for the time being)
- The EXE/NSIS installer will no longer be distributed as the main way to setup the Desktop App, all users can either use the ZIP for portable installation, or the MSI.
I've added a number of people for review, I will make comments on the code to help people better understand some of the changes that are happening.
Ticket Link
https://mattermost.atlassian.net/browse/MM-55341 https://mattermost.atlassian.net/browse/MM-56894
Drop support for 32-bit Windows, add support for ARM64 (in beta)
Drop support for the EXE/NSIS installer, ship only the MSI
Link to built installer: https://github.com/mattermost/desktop/actions/runs/9020601613/artifacts/1488474351
Here are the test results below:
Test Summary for Linux on commit 0a4515f9c4bc0b84d5e2d2d99369c9589c1e35ab
All stable tests passed on Linux.
Test Summary for macOS on commit 0a4515f9c4bc0b84d5e2d2d99369c9589c1e35ab
All stable tests passed on macOS.
Test Summary for Windows on commit 0a4515f9c4bc0b84d5e2d2d99369c9589c1e35ab
All stable tests passed on Windows.
@yasserfaraazkhan When did you encounter this error? Was it reproducible?
Also, did you happen to try any of the admin commands?