mirror of
https://github.com/AgentSeal/codeburn.git
synced 2026-10-21 05:23:19 +00:00
build(app): an ARM64 Windows installer that actually contains the program
7-Zip compresses ARM64 executables with its ARM64 branch filter by default. The decoder inside the NSIS installer predates that filter, so extraction dropped every .exe and .dll while the data files landed, and the installer exited zero with no program in the directory. A new package:win:arm64 script pins the BCJ filter through the electron-builder override, and the distribution notes say why.
This commit is contained in:
parent
7d4c86bc82
commit
058bd57808
2 changed files with 10 additions and 0 deletions
|
|
@ -313,6 +313,15 @@ shows **"Windows protected your PC"**. Users click **"More info" → "Run
|
|||
anyway"** to launch it. This is expected for an unsigned build; the only fix is
|
||||
a purchased code-signing (Authenticode/EV) certificate.
|
||||
|
||||
**ARM64 builds.** `npm --prefix app run package:win:arm64` builds the installer for ARM64
|
||||
Windows. It sets `ELECTRON_BUILDER_7Z_FILTER=BCJ`, and that is not optional: 7-Zip
|
||||
compresses ARM64 executables with its ARM64 branch filter by default, the 7-Zip decoder
|
||||
inside the NSIS installer predates that filter, and the installer then silently drops
|
||||
every .exe and .dll while the data files land, leaving an install with no program in it.
|
||||
The x64 build is unaffected because its default filter is one the decoder knows. The
|
||||
per-architecture archives inside a universal installer get the same treatment, so an
|
||||
installer built with both `--x64` and `--arm64` needs the variable too.
|
||||
|
||||
**Distribution policy.** The Microsoft Store build (Store ID `9P0R4ZL5XMB8`) is
|
||||
the recommended Windows install. This NSIS setup `.exe` and the tray `.msi`
|
||||
under the `windows-v*` releases are a developer preview: unsigned, SmartScreen
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@
|
|||
"package:arm64": "npm run stage-cli && npm run build && electron-builder --mac --arm64",
|
||||
"package:x64": "npm run stage-cli && npm run build && electron-builder --mac --x64",
|
||||
"package:win": "npm run stage-cli && npm run stage-menubar && npm run build && electron-builder --win",
|
||||
"package:win:arm64": "npm run stage-cli && npm run stage-menubar && npm run build && cross-env ELECTRON_BUILDER_7Z_FILTER=BCJ electron-builder --win nsis --arm64",
|
||||
"package:store": "npm run stage-cli && npm run stage-menubar:store && npm run build && electron-builder --win appx --x64",
|
||||
"package:linux": "npm run stage-cli && npm run build && electron-builder --linux",
|
||||
"package:snap": "npm run stage-cli && npm run build && electron-builder --linux snap --x64"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue