Files
zeekayandHanzo Dev 674b6badb1 release: apt conflict broke every Linux bundle; Forge config was ESM
Two real failures in the first tagged release (run 30333608746):

- ubuntu-22.04 died in apt with "held broken packages": the step asked for
  BOTH libappindicator3-dev and libayatana-appindicator3-dev, and those two
  conflict by declaration. Tauri v2 wants the ayatana one; the other is gone.

- forge.config.js used `export default` while its package.json is CommonJS
  (deliberately — the built main process uses __dirname, so it must be CJS).
  Forge loads that file with require, so it would have thrown on the first
  `npm run make`. The two Vite node configs also hand-set `lib.formats` with
  no `lib.entry`; @electron-forge/plugin-vite supplies entry, format and
  externals itself, so they are back to empty and correct.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-27 23:09:44 -07:00

27 lines
1012 B
JavaScript

// Electron Forge + Vite. Three bundles — main, preload, renderer — because
// contextIsolation is on and the renderer never sees Node.
//
// CommonJS on purpose: the built main process is CJS (it uses __dirname), so
// package.json has no "type": "module" and Forge loads this file with require.
module.exports = {
packagerConfig: { asar: true, icon: "icons/icon" },
makers: [
{ name: "@electron-forge/maker-squirrel", config: {} },
{ name: "@electron-forge/maker-zip", platforms: ["darwin"] },
{ name: "@electron-forge/maker-deb", config: {} },
{ name: "@electron-forge/maker-rpm", config: {} },
],
plugins: [
{
name: "@electron-forge/plugin-vite",
config: {
build: [
{ entry: "src/main.ts", config: "vite.main.config.ts", target: "main" },
{ entry: "src/preload.ts", config: "vite.preload.config.ts", target: "preload" },
],
renderer: [{ name: "main_window", config: "vite.renderer.config.ts" }],
},
},
],
};