From e266b501980395ad1300f1f1c76383aec0640e7c Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 26 Apr 2025 03:23:47 +0300 Subject: [PATCH] chore(nx/forge): fix prebuilds and build from dist --- apps/desktop/{ => electron-forge}/forge.config.cjs | 2 +- apps/desktop/package.json | 11 ++++++++--- apps/desktop/webpack.config.cjs | 10 +++++++++- pnpm-lock.yaml | 3 +++ 4 files changed, 21 insertions(+), 5 deletions(-) rename apps/desktop/{ => electron-forge}/forge.config.cjs (99%) diff --git a/apps/desktop/forge.config.cjs b/apps/desktop/electron-forge/forge.config.cjs similarity index 99% rename from apps/desktop/forge.config.cjs rename to apps/desktop/electron-forge/forge.config.cjs index 52e5ef059..a2a72bd90 100644 --- a/apps/desktop/forge.config.cjs +++ b/apps/desktop/electron-forge/forge.config.cjs @@ -92,7 +92,7 @@ module.exports = { ] }, rebuildConfig: { - force: true + force: false }, makers: [ { diff --git a/apps/desktop/package.json b/apps/desktop/package.json index 33594e50e..b20c10fc1 100644 --- a/apps/desktop/package.json +++ b/apps/desktop/package.json @@ -2,7 +2,7 @@ "name": "@triliumnext/desktop", "version": "0.0.1", "private": true, - "main": "dist/main.js", + "main": "main.js", "dependencies": { "@electron/remote": "2.1.2", "better-sqlite3": "^11.9.1", @@ -23,8 +23,13 @@ "@electron-forge/maker-rpm": "7.8.0", "@electron-forge/maker-squirrel": "7.8.0", "@electron-forge/maker-zip": "7.8.0", - "@electron-forge/plugin-auto-unpack-natives": "7.8.0" + "@electron-forge/plugin-auto-unpack-natives": "7.8.0", + "prebuild-install": "^7.1.1" }, + "config": { + "forge": "../electron-forge/forge.config.cjs" + }, + "packageManager": "pnpm@10.9.0+sha512.0486e394640d3c1fb3c9d43d49cf92879ff74f8516959c235308f5a8f62e2e19528a65cdc2a3058f587cde71eba3d5b56327c8c33a97e4c4051ca48a10ca2d5f", "scripts": { "start-prod": "nx build desktop && cross-env TRILIUM_DATA_DIR=data TRILIUM_RESOURCE_DIR=dist TRILIUM_PORT=37841 electron dist/main.js", "rebuild": "electron-rebuild" @@ -73,7 +78,7 @@ }, "electron-forge:package": { "dependsOn": [ "build" ], - "command": "pnpm exec electron-forge package apps/desktop" + "command": "pnpm exec cross-env DEBUG=electron-rebuild electron-forge package apps/desktop/dist" } } } diff --git a/apps/desktop/webpack.config.cjs b/apps/desktop/webpack.config.cjs index 6e61d2842..90b9d03ce 100644 --- a/apps/desktop/webpack.config.cjs +++ b/apps/desktop/webpack.config.cjs @@ -18,7 +18,7 @@ module.exports = { assets: ["./src/assets"], optimization: false, outputHashing: 'none', - generatePackageJson: true, + generatePackageJson: false, externalDependencies: [ "electron/main", "@electron/remote/main", @@ -44,6 +44,14 @@ module.exports = { { from: "../../node_modules/@electron/remote", to: join(outputDir, "node_modules/@electron/remote") + }, + { + from: "../../node_modules/prebuild-install", + to: join(outputDir, "node_modules/better-sqlite3/node_modules/prebuild-install") + }, + { + from: "package.json", + to: join(outputDir, "package.json") } ] }) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b53f3a78a..efa2194e3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -340,6 +340,9 @@ importers: electron: specifier: 35.1.5 version: 35.1.5 + prebuild-install: + specifier: ^7.1.1 + version: 7.1.3 apps/desktop-e2e: {}