-
-
Notifications
You must be signed in to change notification settings - Fork 586
Description
Pre-flight checklist
- I have read the contribution documentation for this project.
- I agree to follow the code of conduct that this project uses.
- I have searched the issue tracker for a feature request that matches the one I want to file, without success.
Problem description
Currently, Electron Forge provides a maker for AppX packages on Windows @electron-forge/maker-appx
. However, Microsoft has been encouraging developers to use MSIX packaging as the modern replacement for AppX. It would be very useful if Forge offered a first-class maker for MSIX, similar to the AppX maker, so developers can generate signed .msix packages directly during the build process.
Proposed solution
Implement a new maker package, e.g. @electron-forge/maker-msix
, modeled closely after the existing @electron-forge/maker-appx
.
Under the hood, the maker would:
- Collect metadata (publisher, display name, package name, version, certificate, etc.) from forge.config.js.
- Use Microsoft’s
MakeAppx.exe
(part of the Windows SDK) to package the Electron app folder into an .msix file. - Optionally call SignTool.exe to sign the package if a certificate path and password are provided.
This approach keeps the implementation consistent with existing makers and leverages tools already available in the Windows SDK, while abstracting the boilerplate away from developers
not sure if this is the best approach
Alternatives considered
-
Using
@electron-forge/maker-appx
to generate .appx and then manually converting to .msix with makeappx.exe pack. -
Writing a custom Forge maker class that shells out to
makeappx.exe
. While possible, it’s boilerplate and less maintainable than an officially supported maker.
Additional information
No response