From 6fb1edf9276fb556e09dcfd17fd0edbe1ecd6249 Mon Sep 17 00:00:00 2001 From: Jan Hannemann Date: Tue, 26 Aug 2025 13:09:00 -0700 Subject: [PATCH 01/10] feat: MSIX maker doc --- config/makers/msix.md | 48 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 config/makers/msix.md diff --git a/config/makers/msix.md b/config/makers/msix.md new file mode 100644 index 0000000..25c37c4 --- /dev/null +++ b/config/makers/msix.md @@ -0,0 +1,48 @@ +--- +description: >- + Create a MSIX package that can be shipped as a direct download or to the Microsoft Store for your Electron app, using Electron + Forge. +--- + +# MSIX + +The MSIX target builds `.msix` packages which can be directly distributed to end user or to the [Microsoft Store](https://apps.microsoft.com/home). + +## Requirements + +You can only build the MSIX target on Windows 10 or 11 machines with the [Windows SDK](https://developer.microsoft.com/en-us/windows/downloads/windows-sdk/) installed. Check the [`electron-windows-msix` docs](https://github.com/bitdisaster/electron-windows-msix) for more information on platform requirements. + +## Installation + +```bash +npm install --save-dev @electron-forge/maker-msix +``` + +## Usage + +To use `@electron-forge/maker-msix`, add it to the `makers` array in your [Forge configuration](../configuration.md): + +{% code title="forge.config.js" %} +```javascript +module.exports = { + makers: [ + { + name: '@electron-forge/maker-msix', + config: { + manifestVariables: { + publisher: 'Electron Dev' + }, + cert: 'C:\\cert.pfx' + cert_pass: '12345' + } + } + ] +}; +``` +{% endcode %} + +Configuration options are documented in [`MakerMSIXConfig`](https://js.electronforge.io/interfaces/\_electron\_forge\_maker\_msix.MakerMSIXConfig.html). + +## Debugging + +For advanced debug logging for this maker, set the log level in the config to debug, `{logLevel = 'debug'}` environment variable. From c74dd9f4dcf78d4db8816110cd0d6697339d9242 Mon Sep 17 00:00:00 2001 From: Jan Hannemann Date: Wed, 27 Aug 2025 11:00:05 -0700 Subject: [PATCH 02/10] feat: add debug module support --- config/makers/msix.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/makers/msix.md b/config/makers/msix.md index 25c37c4..a9f87f3 100644 --- a/config/makers/msix.md +++ b/config/makers/msix.md @@ -45,4 +45,4 @@ Configuration options are documented in [`MakerMSIXConfig`](https://js.electronf ## Debugging -For advanced debug logging for this maker, set the log level in the config to debug, `{logLevel = 'debug'}` environment variable. +For advanced debug logging for this maker, add the `DEBUG=electron-windows-msix*` environment variable or set the log level to `debug` in the config object `{logLevel = 'debug'}`. From ba5221d2fca4e7d9792e9b65ca1edb004e32d93a Mon Sep 17 00:00:00 2001 From: Erick Zhao Date: Thu, 28 Aug 2025 17:25:13 -0700 Subject: [PATCH 03/10] lint? --- config/makers/msix.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/config/makers/msix.md b/config/makers/msix.md index a9f87f3..981f169 100644 --- a/config/makers/msix.md +++ b/config/makers/msix.md @@ -23,6 +23,7 @@ npm install --save-dev @electron-forge/maker-msix To use `@electron-forge/maker-msix`, add it to the `makers` array in your [Forge configuration](../configuration.md): {% code title="forge.config.js" %} + ```javascript module.exports = { makers: [ @@ -39,9 +40,10 @@ module.exports = { ] }; ``` + {% endcode %} -Configuration options are documented in [`MakerMSIXConfig`](https://js.electronforge.io/interfaces/\_electron\_forge\_maker\_msix.MakerMSIXConfig.html). +Configuration options are documented in [`MakerMSIXConfig`](https://js.electronforge.io/interfaces/_electron_forge_maker_msix.MakerMSIXConfig.html). ## Debugging From 561cad912d6fefd8c20bf20729aa8625a7e8cca2 Mon Sep 17 00:00:00 2001 From: Erick Zhao Date: Thu, 28 Aug 2025 17:31:23 -0700 Subject: [PATCH 04/10] missing comma --- config/makers/msix.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/makers/msix.md b/config/makers/msix.md index 981f169..23f6f86 100644 --- a/config/makers/msix.md +++ b/config/makers/msix.md @@ -33,7 +33,7 @@ module.exports = { manifestVariables: { publisher: 'Electron Dev' }, - cert: 'C:\\cert.pfx' + cert: 'C:\\cert.pfx', cert_pass: '12345' } } From 5f28da40531a439bc155de016b0d529742ba4d82 Mon Sep 17 00:00:00 2001 From: Erick Zhao Date: Thu, 28 Aug 2025 17:36:08 -0700 Subject: [PATCH 05/10] spaces --- config/makers/msix.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/config/makers/msix.md b/config/makers/msix.md index 23f6f86..72728a7 100644 --- a/config/makers/msix.md +++ b/config/makers/msix.md @@ -33,8 +33,8 @@ module.exports = { manifestVariables: { publisher: 'Electron Dev' }, - cert: 'C:\\cert.pfx', - cert_pass: '12345' + cert: 'C:\\cert.pfx', + cert_pass: '12345' } } ] From 0ad9af2305576788a587da9dde213230e339c726 Mon Sep 17 00:00:00 2001 From: Erick Zhao Date: Thu, 28 Aug 2025 22:12:58 -0700 Subject: [PATCH 06/10] update docs again --- config/makers/msix.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/config/makers/msix.md b/config/makers/msix.md index 72728a7..c38147a 100644 --- a/config/makers/msix.md +++ b/config/makers/msix.md @@ -6,7 +6,7 @@ description: >- # MSIX -The MSIX target builds `.msix` packages which can be directly distributed to end user or to the [Microsoft Store](https://apps.microsoft.com/home). +The [MSIX](https://learn.microsoft.com/en-us/windows/msix/overview) target builds `.msix` packages, which can be directly distributed to end user or to the [Microsoft Store](https://apps.microsoft.com/home). ## Requirements @@ -47,4 +47,5 @@ Configuration options are documented in [`MakerMSIXConfig`](https://js.electronf ## Debugging -For advanced debug logging for this maker, add the `DEBUG=electron-windows-msix*` environment variable or set the log level to `debug` in the config object `{logLevel = 'debug'}`. +For advanced debug logging for this maker, add the `DEBUG=electron-windows-msix*` environment variable +or set the `logLevel` to `debug` in the maker config. From 160ef46abd209600052fee3bab0ac417fa01ab07 Mon Sep 17 00:00:00 2001 From: Jan Hannemann Date: Fri, 5 Sep 2025 11:39:26 -0700 Subject: [PATCH 07/10] update to msix packager 2.0.0 --- config/makers/msix.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/config/makers/msix.md b/config/makers/msix.md index c38147a..e70b44b 100644 --- a/config/makers/msix.md +++ b/config/makers/msix.md @@ -33,8 +33,10 @@ module.exports = { manifestVariables: { publisher: 'Electron Dev' }, - cert: 'C:\\cert.pfx', - cert_pass: '12345' + windowsSignOptions : { + certificateFile: 'C:\\devcert.pfx', + certificatePassword: "122345" + } } } ] @@ -45,6 +47,8 @@ module.exports = { Configuration options are documented in [`MakerMSIXConfig`](https://js.electronforge.io/interfaces/_electron_forge_maker_msix.MakerMSIXConfig.html). +The maker-msix utilizes @electron/windows-sign via `windowsSignOptions` property, see documentation here [windows-sign](https://github.com/electron/windows-sign/blob/main/README.md). + ## Debugging For advanced debug logging for this maker, add the `DEBUG=electron-windows-msix*` environment variable From 024b500bb9f2d951110c80e2308152ff1d617d74 Mon Sep 17 00:00:00 2001 From: Erick Zhao Date: Wed, 15 Oct 2025 16:35:19 -0700 Subject: [PATCH 08/10] Fix documentation for MakerMSIXConfig and windows-sign Updated links and clarified the usage of windows-sign. --- config/makers/msix.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/config/makers/msix.md b/config/makers/msix.md index e70b44b..9bc9e4c 100644 --- a/config/makers/msix.md +++ b/config/makers/msix.md @@ -45,9 +45,9 @@ module.exports = { {% endcode %} -Configuration options are documented in [`MakerMSIXConfig`](https://js.electronforge.io/interfaces/_electron_forge_maker_msix.MakerMSIXConfig.html). +Configuration options are documented in [`MakerMSIXConfig`](https://js.electronforge.io/types/_electron_forge_maker_msix.MakerMSIXConfig.html). -The maker-msix utilizes @electron/windows-sign via `windowsSignOptions` property, see documentation here [windows-sign](https://github.com/electron/windows-sign/blob/main/README.md). +For advanced code-signing use-cases, this maker utilizes @electron/windows-sign via the `windowsSignOptions` property. see the [windows-sign](https://github.com/electron/windows-sign/blob/main/README.md) README for more details. ## Debugging From 8b379f67cfea9ffcc8b12ec60c1e3033e36119b6 Mon Sep 17 00:00:00 2001 From: Erick Zhao Date: Wed, 15 Oct 2025 16:41:10 -0700 Subject: [PATCH 09/10] Update MSIX documentation with experimental notice Add note about MSIX support being experimental in Electron Forge. --- config/makers/msix.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/config/makers/msix.md b/config/makers/msix.md index 9bc9e4c..3ae1d06 100644 --- a/config/makers/msix.md +++ b/config/makers/msix.md @@ -6,6 +6,12 @@ description: >- # MSIX +{% hint style="info" %} + +MSIX support was added in Electron Forge v7.10 and is currently **experimental**. Breaking changes to the configuration may be introduced between releases. + +{% endhint %} + The [MSIX](https://learn.microsoft.com/en-us/windows/msix/overview) target builds `.msix` packages, which can be directly distributed to end user or to the [Microsoft Store](https://apps.microsoft.com/home). ## Requirements From 4e805b60b9984938d6893a679e815df0c211a789 Mon Sep 17 00:00:00 2001 From: Erick Zhao Date: Wed, 15 Oct 2025 16:43:23 -0700 Subject: [PATCH 10/10] Fix formatting of windowsSignOptions in msix.md --- config/makers/msix.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/config/makers/msix.md b/config/makers/msix.md index 3ae1d06..def662a 100644 --- a/config/makers/msix.md +++ b/config/makers/msix.md @@ -39,9 +39,9 @@ module.exports = { manifestVariables: { publisher: 'Electron Dev' }, - windowsSignOptions : { + windowsSignOptions: { certificateFile: 'C:\\devcert.pfx', - certificatePassword: "122345" + certificatePassword: '122345' } } }