diff --git a/gitnexus-desktop/scripts/package.mjs b/gitnexus-desktop/scripts/package.mjs index f84df654f..d4a3d5534 100644 --- a/gitnexus-desktop/scripts/package.mjs +++ b/gitnexus-desktop/scripts/package.mjs @@ -286,17 +286,25 @@ const rebuildPackagedNativeModules = () => { for (const resourceRoot of resourceRoots) { const packagedRuntimeRoot = path.join(resourceRoot, 'gitnexus'); const packagedNodeModulesRoot = path.join(packagedRuntimeRoot, 'node_modules'); + const packagedRuntimePackageJson = path.join(packagedRuntimeRoot, 'package.json'); if (!fs.existsSync(packagedNodeModulesRoot)) { continue; } + if (!fs.existsSync(packagedRuntimePackageJson)) { + console.warn( + `[build] skipping native module rebuild because runtime package.json is missing at ${packagedRuntimePackageJson}`, + ); + continue; + } + const rebuildCommand = [ `npx --yes -p @electron/rebuild@${electronRebuildVersion} electron-rebuild`, '--force', '--types prod,optional', `--version "${electronVersion}"`, - `--module-dir "${packagedNodeModulesRoot}"`, + `--module-dir "${packagedRuntimeRoot}"`, process.platform === 'win32' ? '--sequential' : '', ] .filter(Boolean)