fix(monorepo/electron): rewrite package.json to avoid flaky config implementations in electron-forge

This commit is contained in:
Elian Doran 2025-04-19 12:34:24 +03:00
parent 8733acebf5
commit abcf08e68c
No known key found for this signature in database
2 changed files with 14 additions and 6 deletions

View File

@ -51,8 +51,5 @@
"@electron-forge/maker-squirrel": "7.8.0", "@electron-forge/maker-squirrel": "7.8.0",
"@electron-forge/maker-zip": "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"
},
"packagerConfig": {
"executableName": "trilium"
} }
} }

View File

@ -18,12 +18,13 @@ try {
*/ */
fs.copySync("../server/build", path.join(DEST_DIR, "node_modules", "@triliumnext/server")); fs.copySync("../server/build", path.join(DEST_DIR, "node_modules", "@triliumnext/server"));
copyPackageJson();
/** /**
* Copy assets. * Copy assets.
*/ */
const assetsToCopy = new Set([ const assetsToCopy = new Set([
"./package.json", "./forge.config.cjs",
"./forge.config.cjs",
"./scripts/electron-forge/desktop.ejs", "./scripts/electron-forge/desktop.ejs",
"./scripts/electron-forge/sign-windows.cjs", "./scripts/electron-forge/sign-windows.cjs",
]); ]);
@ -51,7 +52,17 @@ try {
console.log("Copying complete!") console.log("Copying complete!")
} catch(err) { } catch(err) {
console.error("Error during copy:", err.message) console.error("Error during copy:", err)
process.exit(1) process.exit(1)
} }
/**
* Rewrite the name field of `package.json` since electron-forge does not support forward slashes in the name.
* Other attempts to rewrite the name field in the forge config have failed.
*/
function copyPackageJson() {
const packageJsonPath = path.join("package.json");
const packageJson = fs.readJSONSync(packageJsonPath);
packageJson.name = "trilium";
fs.writeJSONSync(path.join(DEST_DIR, "package.json"), packageJson, { spaces: 2 });
}