# @felixrieseberg/electron-forge-maker-nsis

> An `electron-forge` maker for NSIS that supports `electron-forge` v6 and can be used as a replacement for `electron-builder`. Supports code-signing and basic updates with `electron-updater`.

Latest version **7.2.0** (published 2024-12-17) · MIT license · 0 weekly downloads

## Install

```sh
npm install @felixrieseberg/electron-forge-maker-nsis
pnpm add @felixrieseberg/electron-forge-maker-nsis
yarn add @felixrieseberg/electron-forge-maker-nsis
bun add @felixrieseberg/electron-forge-maker-nsis
```

## Health

**Score 35/100 (D)** — status: maintenance-mode.

Positive: has types; esm support; no vulnerabilities.

Warnings: low downloads.

Negative: stale; low maintenance score.

## Facts

| | |
|---|---|
| Version | 7.2.0 |
| Published | 2024-12-17 |
| First published | 2023-06-04 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Node | >=12.0.0 |
| Dependencies | 6 |
| Unpacked size | 26.3 KB |
| Known vulnerabilities | 0 (+1 in 1 direct dependencies) |
| Install scripts | no |
| GitHub stars | 18 |
| Author | Felix Rieseberg |
| Maintainers | felixrieseberg |

## Links

- npm: https://www.npmjs.com/package/@felixrieseberg/electron-forge-maker-nsis
- Repository: https://github.com/felixrieseberg/electron-forge-maker-nsis
- Issues: https://github.com/felixrieseberg/electron-forge-maker-nsis/issues
- npm.io page: https://npm.io/package/@felixrieseberg/electron-forge-maker-nsis

## Dependencies (6)

- [debug](https://npm.io/package/debug.md) ^4.4.0
- [fs-extra](https://npm.io/package/fs-extra.md) ^11.2.0
- [app-builder-lib](https://npm.io/package/app-builder-lib.md) ^24.13.3
- [electron-updater-yaml](https://npm.io/package/electron-updater-yaml.md) ^1.1.2
- [@electron/windows-sign](https://npm.io/package/@electron/windows-sign.md) ^1.2.0
- [@electron-forge/maker-base](https://npm.io/package/@electron-forge/maker-base.md) ^7.6.0

## Recent versions

- 7.2.0 (latest) — 2024-12-17
- 7.1.0 — 2024-12-13
- 7.0.0 — 2024-09-14
- 6.2.0 — 2024-07-07
- 6.1.0 — 2024-07-07
- 6.0.6 — 2023-06-07
- 6.0.5 — 2023-06-06
- 6.0.4 — 2023-06-06
- 6.0.3 — 2023-06-05
- 6.0.2 — 2023-06-05
- 6.0.1 — 2023-06-05
- 6.0.0 — 2023-06-04

## README

# electron-forge-maker-nsis [![npm][npm_img]][npm_url]

An `electron-forge` maker for NSIS that supports `electron-forge` v6 and can be used as a
replacement for `electron-builder`. Supports code-signing and basic updates with `electron-updater`.

This maker takes two configuration objects: `codesigning` for codesigning and `updater` for `electron-updater` support. Both of them are optional, the feature in question will simply be turned off if not provided.

- `codesigning` is passed directly to [@electron/windows-sign](https://github.com/electron/windows-sign) and supports all its options (except for `appDirectory`, which is provided directly by this maker).
- `updater`
  - `url`: URL to the location of yml files.
  - `updaterCacheDirName`: Name of the local cache. By default `${name}-updater`.
  - `channel`: Name of the update channel. By default `latest`.
  - `publisherName`: Used to verify the code signature. 

```ts
// forge.config.js with minimal configuration
makers: [
    {
      name: "@felixrieseberg/electron-forge-maker-nsis",
      config: {},
    }
  ]
```

```ts
  // forge.config.js with example configuration
  makers: [
    {
      name: "@felixrieseberg/electron-forge-maker-nsis",
      config: {
        codesigning: {
          certificateFile?: string;
          certificatePassword?: string;
        },
        updater: {
					url: "https://s3-us-west-2.amazonaws.com/my-bucket",
					updaterCacheDirName: "my-updater",
          channel: "latest",
          publisherName: "My Company, Inc."
				},
        getAdditionalConfig: () => {
          return {
            artifactName: "${productName} Setup ${version} ${arch}.${ext}"
          }
        }
      },
    }
  ]
```

## Updating

This tool supports ["generic" updates][https://www.electron.build/configuration/publish.html#publishers] with `electron-updater`. 

# License
MIT. Please see LICENSE for details.

[electron]: https://github.com/electron/electron
[npm_img]: https://img.shields.io/npm/v/@felixrieseberg/electron-forge-maker-nsis.svg
[npm_url]: https://npmjs.org/package/@felixrieseberg/electron-forge-maker-nsis

---
_Source: https://npm.io/package/@felixrieseberg/electron-forge-maker-nsis · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
