Windows was the only platform whose installer unpacked the entire server node_modules tree (thousands of loose files) next to app.asar, purely so a future WSL backend could read it — dominating NSIS install and update time for every user while the WSL backend is off by default. Package the server bundle + a hoisted, win32+linux production dependency tree into resources/server.asar instead (native binaries in the server.asar.unpacked sibling). The Windows primary runs the server from inside the archive via the asar-aware ELECTRON_RUN_AS_NODE runtime — the same mechanism macOS/Linux already use for app.asar — and enabling the WSL backend extracts the sidecar once into a version-keyed directory under the desktop state dir (DesktopWslServerTree), swept and re-extracted on app updates. Extraction failures surface through the existing WSL preflight retry/reason channel. app.asar now carries only the desktop main-process dependencies on Windows; macOS and Linux packaging is unchanged. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Wout Stiens committed on 8/10/2026, 1:58:55 PMparent78f462c
10 files changedLine totals unavailable