electron-builder.yml 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. # nEngine Editor — desktop distribution via electron-builder (F4, D41 #4/#6).
  2. #
  3. # Packages the D40 editor itself as a distributable desktop application. This
  4. # is the EDITOR's own electron-builder config — nengine-pack (apps/pack, D30/
  5. # D32/D36) stays the GAME packer and is deliberately NOT extended. Output goes
  6. # to `dist-app/` (kept separate from the build artifacts in `dist/` so
  7. # electron-builder's emptyOutDir can never wipe the tsc/vite outputs).
  8. appId: com.nengine.editor
  9. productName: nEngine Editor
  10. # The package name `@nengine/editor` would produce the unsafe executable name
  11. # `@nengineeditor` — AppImage refuses `@` in the internal executable path.
  12. executableName: nengine-editor
  13. directories:
  14. output: dist-app
  15. files:
  16. # The compiled app: main process (ESM, tsc.main -> dist/main), sandboxed
  17. # preload (CJS, tsc.preload -> dist/preload) and the vite renderer bundle
  18. # (dist/renderer). `main` in package.json points at dist/main/main.js; the
  19. # main process serves dist/renderer over the local loopback HTTP server.
  20. - dist/**
  21. - package.json
  22. # Runtime node_modules (production dependencies) are auto-collected by
  23. # electron-builder: @nengine/core / @nengine/mcp / @nengine/pack (workspace
  24. # symlinks -> their built dist), @modelcontextprotocol/sdk (used directly by
  25. # the embedded MCP server), yaml, zod, and transitively vite (via @nengine/pack
  26. # — the package dialog runs the real vite build). @nengine/render stays a
  27. # devDependency: the vite-built renderer bundle inlines it and the main process
  28. # never imports it at runtime, so pixi.js is not dragged into the packaged app.
  29. # electron-builder v26 handles the pnpm workspace symlink layout (verified F4).
  30. linux:
  31. target:
  32. - AppImage
  33. category: Development
  34. win:
  35. target:
  36. - nsis
  37. nsis:
  38. oneClick: true