chore(dx/desktop): get forge to run

This commit is contained in:
Elian Doran 2025-09-02 13:59:09 +03:00
parent bd349f5abc
commit ce0fd3cec2
No known key found for this signature in database
5 changed files with 100 additions and 44 deletions

View file

@ -29,7 +29,7 @@ if (!isDev) {
structured: true,
targets: [
{
src: "node_modules/@excalidraw/excalidraw/dist/prod/fonts/*",
src: "../../node_modules/@excalidraw/excalidraw/dist/prod/fonts/*",
dest: "",
}
]

View file

@ -15,6 +15,7 @@
},
"devDependencies": {
"@types/electron-squirrel-startup": "1.0.2",
"@triliumnext/commons": "workspace:*",
"@triliumnext/server": "workspace:*",
"copy-webpack-plugin": "13.0.1",
"electron": "37.4.0",
@ -27,14 +28,14 @@
"@electron-forge/maker-zip": "7.8.3",
"@electron-forge/plugin-auto-unpack-natives": "7.8.3",
"prebuild-install": "^7.1.1"
},
"config": {
"forge": "./electron-forge/forge.config.ts"
},
},
"scripts": {
"dev": "tsx scripts/start.mts",
"build": "tsx scripts/build.ts",
"start-prod": "pnpm build && cross-env TRILIUM_DATA_DIR=data TRILIUM_PORT=37841 electron dist",
"electron-forge:make": "pnpm build && electron-forge make dist",
"electron-forge:package": "pnpm build && electron-forge package dist",
"electron-forge:start": "pnpm build && electron-forge start dist",
"postinstall": "tsx scripts/rebuild.mts"
},
"license": "AGPL-3.0-only",
@ -133,27 +134,6 @@
"forwardAllArgs": false
}
}
},
"electron-forge:make": {
"dependsOn": [
"build",
"rebuild-deps"
],
"command": "pnpm -C apps/desktop exec cross-env NODE_INSTALLER=npm electron-forge make dist"
},
"electron-forge:package": {
"dependsOn": [
"build",
"rebuild-deps"
],
"command": "pnpm -C apps/desktop exec cross-env NODE_INSTALLER=npm electron-forge package dist"
},
"electron-forge:start": {
"dependsOn": [
"build",
"rebuild-deps"
],
"command": "pnpm -C apps/desktop exec cross-env NODE_INSTALLER=npm TRILIUM_DATA_DIR=./data electron-forge start dist"
}
}
}

View file

@ -15,7 +15,7 @@ async function main() {
// Copy node modules dependencies
build.copyNodeModules([ "better-sqlite3", "bindings", "file-uri-to-path", "@electron/remote" ]);
build.copy("/apps/server/node_modules/jsdom/lib/jsdom/living/xhr/xhr-sync-worker.js", "xhr-sync-worker.js");
build.copy("/node_modules/jsdom/lib/jsdom/living/xhr/xhr-sync-worker.js", "xhr-sync-worker.js");
// Integrate the client.
build.triggerBuildAndCopyTo("apps/client", "public/");
@ -35,6 +35,9 @@ function generatePackageJson() {
},
devDependencies: {
electron: devDependencies.electron
},
config: {
forge: "../electron-forge/forge.config.ts"
}
};
writeFileSync(join(build.outDir, "package.json"), JSON.stringify(packageJson, null, "\t"), "utf-8");

83
pnpm-lock.yaml generated
View file

@ -368,6 +368,9 @@ importers:
'@electron-forge/plugin-auto-unpack-natives':
specifier: 7.8.3
version: 7.8.3
'@triliumnext/commons':
specifier: workspace:*
version: link:../../packages/commons
'@triliumnext/server':
specifier: workspace:*
version: link:../server
@ -14578,8 +14581,6 @@ snapshots:
'@ckeditor/ckeditor5-core': 46.0.2
'@ckeditor/ckeditor5-upload': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-ai@46.0.2':
dependencies:
@ -14704,16 +14705,12 @@ snapshots:
'@ckeditor/ckeditor5-utils': 46.0.2
'@ckeditor/ckeditor5-widget': 46.0.2
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-cloud-services@46.0.2':
dependencies:
'@ckeditor/ckeditor5-core': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-code-block@46.0.2(patch_hash=2361d8caad7d6b5bddacc3a3b4aa37dbfba260b1c1b22a450413a79c1bb1ce95)':
dependencies:
@ -14725,6 +14722,8 @@ snapshots:
'@ckeditor/ckeditor5-ui': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-collaboration-core@46.0.2':
dependencies:
@ -14738,6 +14737,8 @@ snapshots:
'@types/luxon': 3.6.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
luxon: 3.6.1
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-comments@46.0.2':
dependencies:
@ -14759,6 +14760,8 @@ snapshots:
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
ckeditor5-collaboration: 46.0.2
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-core@46.0.2':
dependencies:
@ -14767,8 +14770,6 @@ snapshots:
'@ckeditor/ckeditor5-utils': 46.0.2
'@ckeditor/ckeditor5-watchdog': 46.0.2
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-dev-build-tools@43.1.0(@swc/helpers@0.5.17)(tslib@2.8.1)(typescript@5.9.2)':
dependencies:
@ -14933,8 +14934,6 @@ snapshots:
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-editor-classic@46.0.2':
dependencies:
@ -14944,8 +14943,6 @@ snapshots:
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-editor-decoupled@46.0.2':
dependencies:
@ -14955,8 +14952,6 @@ snapshots:
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-editor-inline@46.0.2':
dependencies:
@ -14990,6 +14985,8 @@ snapshots:
'@ckeditor/ckeditor5-table': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-emoji@46.0.2':
dependencies:
@ -15002,6 +14999,8 @@ snapshots:
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
es-toolkit: 1.39.5
fuzzysort: 3.1.0
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-engine@46.0.2':
dependencies:
@ -15044,6 +15043,8 @@ snapshots:
'@ckeditor/ckeditor5-ui': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-export-word@46.0.2':
dependencies:
@ -15057,6 +15058,8 @@ snapshots:
'@ckeditor/ckeditor5-ui': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-find-and-replace@46.0.2':
dependencies:
@ -15075,6 +15078,8 @@ snapshots:
'@ckeditor/ckeditor5-ui': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-format-painter@46.0.2':
dependencies:
@ -15094,6 +15099,8 @@ snapshots:
'@ckeditor/ckeditor5-ui': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-heading@46.0.2':
dependencies:
@ -15104,6 +15111,8 @@ snapshots:
'@ckeditor/ckeditor5-ui': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-highlight@46.0.2':
dependencies:
@ -15112,6 +15121,8 @@ snapshots:
'@ckeditor/ckeditor5-ui': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-horizontal-line@46.0.2':
dependencies:
@ -15130,6 +15141,8 @@ snapshots:
'@ckeditor/ckeditor5-utils': 46.0.2
'@ckeditor/ckeditor5-widget': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-html-support@46.0.2':
dependencies:
@ -15145,6 +15158,8 @@ snapshots:
'@ckeditor/ckeditor5-widget': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-icons@46.0.2': {}
@ -15162,6 +15177,8 @@ snapshots:
'@ckeditor/ckeditor5-widget': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-import-word@46.0.2':
dependencies:
@ -15174,6 +15191,8 @@ snapshots:
'@ckeditor/ckeditor5-ui': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-indent@46.0.2':
dependencies:
@ -15185,6 +15204,8 @@ snapshots:
'@ckeditor/ckeditor5-ui': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-inspector@5.0.0': {}
@ -15194,6 +15215,8 @@ snapshots:
'@ckeditor/ckeditor5-ui': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-line-height@46.0.2':
dependencies:
@ -15217,6 +15240,8 @@ snapshots:
'@ckeditor/ckeditor5-widget': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-list-multi-level@46.0.2':
dependencies:
@ -15240,6 +15265,8 @@ snapshots:
'@ckeditor/ckeditor5-ui': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-markdown-gfm@46.0.2':
dependencies:
@ -15277,6 +15304,8 @@ snapshots:
'@ckeditor/ckeditor5-utils': 46.0.2
'@ckeditor/ckeditor5-widget': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-mention@46.0.2(patch_hash=5981fb59ba35829e4dff1d39cf771000f8a8fdfa7a34b51d8af9549541f2d62d)':
dependencies:
@ -15286,6 +15315,8 @@ snapshots:
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-merge-fields@46.0.2':
dependencies:
@ -15298,6 +15329,8 @@ snapshots:
'@ckeditor/ckeditor5-widget': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-minimap@46.0.2':
dependencies:
@ -15306,6 +15339,8 @@ snapshots:
'@ckeditor/ckeditor5-ui': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-operations-compressor@46.0.2':
dependencies:
@ -15358,6 +15393,8 @@ snapshots:
'@ckeditor/ckeditor5-utils': 46.0.2
'@ckeditor/ckeditor5-widget': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-pagination@46.0.2':
dependencies:
@ -15464,6 +15501,8 @@ snapshots:
'@ckeditor/ckeditor5-ui': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-slash-command@46.0.2':
dependencies:
@ -15476,6 +15515,8 @@ snapshots:
'@ckeditor/ckeditor5-ui': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-source-editing-enhanced@46.0.2':
dependencies:
@ -15502,6 +15543,8 @@ snapshots:
'@ckeditor/ckeditor5-ui': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-special-characters@46.0.2':
dependencies:
@ -15523,6 +15566,8 @@ snapshots:
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-table@46.0.2':
dependencies:
@ -15535,6 +15580,8 @@ snapshots:
'@ckeditor/ckeditor5-widget': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-template@46.0.2':
dependencies:
@ -15577,6 +15624,8 @@ snapshots:
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
ckeditor5-collaboration: 46.0.2
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-typing@46.0.2':
dependencies:
@ -15643,6 +15692,8 @@ snapshots:
'@ckeditor/ckeditor5-engine': 46.0.2
'@ckeditor/ckeditor5-utils': 46.0.2
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@ckeditor/ckeditor5-widget@46.0.2':
dependencies:
@ -15662,6 +15713,8 @@ snapshots:
'@ckeditor/ckeditor5-utils': 46.0.2
ckeditor5: 46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41)
es-toolkit: 1.39.5
transitivePeerDependencies:
- supports-color
'@codemirror/autocomplete@6.18.6':
dependencies:
@ -20653,6 +20706,8 @@ snapshots:
ckeditor5-collaboration@46.0.2:
dependencies:
'@ckeditor/ckeditor5-collaboration-core': 46.0.2
transitivePeerDependencies:
- supports-color
ckeditor5-premium-features@46.0.2(bufferutil@4.0.9)(ckeditor5@46.0.2(patch_hash=8331a09d41443b39ea1c784daaccfeb0da4f9065ed556e7de92e9c77edd9eb41))(utf-8-validate@6.0.5):
dependencies:

View file

@ -1,6 +1,6 @@
import { execSync } from "child_process";
import { build as esbuild } from "esbuild";
import { rmSync } from "fs";
import { cpSync, existsSync, rmSync } from "fs";
import { copySync, emptyDirSync, mkdirpSync } from "fs-extra";
import { join } from "path";
@ -73,9 +73,27 @@ export default class BuildHelper {
}
copyNodeModules(nodeModules: string[]) {
for (const module of nodeModules) {
this.copy(`node_modules/${module}`, `node_modules/${module}/`);
for (const moduleName of nodeModules) {
const sourceDir = tryPath([
join(this.projectDir, "node_modules", moduleName),
join(this.rootDir, "node_modules", moduleName)
]);
const destDir = join(this.outDir, "node_modules", moduleName);
mkdirpSync(destDir);
cpSync(sourceDir, destDir, { recursive: true, dereference: true });
}
}
}
function tryPath(paths: string[]) {
for (const path of paths) {
if (existsSync(path)) {
return path;
}
}
console.error("Unable to find any of the paths:", paths);
process.exit(1);
}