diff --git a/apps/desktop/electron-forge/forge.config.ts b/apps/desktop/electron-forge/forge.config.ts index 0b78b3e1f..1dc5310ff 100644 --- a/apps/desktop/electron-forge/forge.config.ts +++ b/apps/desktop/electron-forge/forge.config.ts @@ -70,7 +70,6 @@ const config: ForgeConfig = { ] }, rebuildConfig: { - force: true, extraModules: [ "better-sqlite3" ] }, makers: [ @@ -85,14 +84,30 @@ const config: ForgeConfig = { config: { options: { ...baseLinuxMakerConfigOptions, + desktopTemplate: undefined, // otherwise it would put in the wrong exec + icon: { + "128x128": path.join(APP_ICON_PATH, "png/128x128.png"), + }, id: "com.triliumnext.notes", runtimeVersion: "24.08", base: "org.electronjs.Electron2.BaseApp", baseVersion: "24.08", baseFlatpakref: "https://flathub.org/repo/flathub.flatpakrepo", finishArgs: [ + // Wayland/X11 Rendering "--socket=fallback-x11", - "--socket=wayland" + "--socket=wayland", + "--share=ipc", + // Open GL + "--device=dri", + // Audio output + "--socket=pulseaudio", + // Read/write home directory access + "--filesystem=home", + // Allow communication with network + "--share=network", + // System notifications with libnotify + "--talk-name=org.freedesktop.Notifications", ], modules: [ { diff --git a/apps/desktop/package.json b/apps/desktop/package.json index ce08cfaf6..1df37f089 100644 --- a/apps/desktop/package.json +++ b/apps/desktop/package.json @@ -15,7 +15,8 @@ "start-no-dir": "cross-env TRILIUM_PORT=37743 tsx ../../scripts/electron-start.mts src/main.ts", "build": "tsx scripts/build.ts", "start-prod": "pnpm build && cross-env TRILIUM_DATA_DIR=data TRILIUM_PORT=37841 ELECTRON_IS_DEV=0 electron dist", - "electron-forge:make": "pnpm build && cross-env electron-forge make dist", + "electron-forge:make": "pnpm build && electron-forge make dist", + "electron-forge:make-flatpak": "pnpm build && electron-forge make dist --targets=@electron-forge/maker-flatpak", "electron-forge:package": "pnpm build && electron-forge package dist", "electron-forge:start": "pnpm build && electron-forge start dist", "e2e": "pnpm build && cross-env TRILIUM_INTEGRATION_TEST=memory-no-store TRILIUM_PORT=8082 TRILIUM_DATA_DIR=data-e2e ELECTRON_IS_DEV=0 playwright test"