Pre-flight checklist
Forge version
7.11.2
Electron version
43.4.1
Operating system
CachyOS (Arch-based), kernel 7.2.0-1-cachyos
Last known working Forge version
N/A
Expected behavior
electron-forge make SHOULD package the app and make distributable installers (deb/rpm), like how it did on Windows without changing a thing.
Actual behavior
Packaging just hangs with no message, mostly inside the "Copying files" / "Preparing native dependencies" / "Finalizing package" steps.
Steps to reproduce
I didn't see this at first, and I put it in Additional Information, sorry :(
Additional information
It's my first time trying a Linux build on this machine, the same repo and forge.config.js builds fine on Windows and gives me a working installer so I really don't think the config is the problem here.
Basically electron-forge make gets half way through packaging and then just stops. There's no error and no crash, it just sits there. Somewhere in these steps:
❯ Packaging for x64 on linux
❯ Copying files
❯ Preparing native dependencies
❯ Finalizing package
And it's not really consistent which one it dies on.
Most of the time it just hangs forever. I left it running once and after 14 minutes it had burned through like 9 seconds of actual CPU time, so whatever it's "doing" isn't much of anything.
Solutions I've already ruled out: pretty sure it's not disk, same thing happens on an exFAT external drive and on my btrfs root partition. Not memory either, free -h showed 9+GB free the whole time it was stuck. Not network, ss -tnp showed zero connections from the node process. Checked /proc/<pid>/status and it's sitting in S (sleeping) not D, so it's not blocked on disk IO at the kernel level.
I ran strace -p <pid> -f during one of the hangs and the main thread was just looping on epoll_pwait/write, basically redrawing the spinner over and over?? Worker threads were all idle in futex waits. So as far as I can tell literally nothing is happening even though Forge still says the step is "running."
When it does make progress, /proc/<pid>/fd shows it writing Electron locale .pak files one at a time. But it'll just randomly stop partway through, I watched it sit on ru.pak for like 6 minutes until I manually stopped it.
I cleared ~/.cache/electron for a fresh download, I cleared /tmp/electron-packager before every retry, same thing every time. I pulled @electron-forge/plugin-auto-unpack-natives out since I don't even have native dependencies, no change, I put it back. I tried just the deb target by itself with npx electron-forge make --targets=@electron-forge/maker-deb to rule out AppImage/RPM causing it, but it still hung. Same with maker-rpm. Updated all the @electron-forge/* packages to newest, but no difference. I checked dmesg and journalctl for OOM kills or crashes, but there was nothing.
I have not tried downgrading off Node 26 yet, that's my next move since it's pretty new and this could just be something nobody's reported yet or I haven't seen.
Repro from a clean install:
npm install
npx electron-forge make --targets=@electron-forge/maker-deb
forge.config.js:
const { FusesPlugin } = require('@electron-forge/plugin-fuses');
const { FuseV1Options, FuseVersion } = require('@electron/fuses');
const { MakerAppImage } = require('@reforged/maker-appimage');
module.exports = {
packagerConfig: {
asar: true,
electronLanguages: ['en-US', 'en'],
},
rebuildConfig: {},
makers: [
{ name: '@electron-forge/maker-wix', platforms: ['win32'], config: { language: 1033, manufacturer: 'ShellSurfer' } },
{ name: '@electron-forge/maker-zip', platforms: ['darwin'] },
{ name: '@electron-forge/maker-deb', config: {} },
{ name: '@electron-forge/maker-rpm', config: {} },
new MakerAppImage({ options: {} }),
],
plugins: [
{ name: '@electron-forge/plugin-auto-unpack-natives', config: {} },
new FusesPlugin({
version: FuseVersion.V1,
[FuseV1Options.RunAsNode]: false,
[FuseV1Options.EnableCookieEncryption]: true,
[FuseV1Options.EnableNodeOptionsEnvironmentVariable]: false,
[FuseV1Options.EnableNodeCliInspectArguments]: false,
[FuseV1Options.EnableEmbeddedAsarIntegrityValidation]: true,
[FuseV1Options.OnlyLoadAppFromAsar]: true,
}),
],
};
package.json dependencies:
"dependencies": {
"chroma-js": "^3.2.0",
"electron-prompt": "^1.7.0",
"electron-squirrel-startup": "^1.0.1"
}
Google hasn't been a massive help either.
Pre-flight checklist
Forge version
7.11.2
Electron version
43.4.1
Operating system
CachyOS (Arch-based), kernel 7.2.0-1-cachyos
Last known working Forge version
N/A
Expected behavior
electron-forge makeSHOULD package the app and make distributable installers (deb/rpm), like how it did on Windows without changing a thing.Actual behavior
Packaging just hangs with no message, mostly inside the "Copying files" / "Preparing native dependencies" / "Finalizing package" steps.
Steps to reproduce
I didn't see this at first, and I put it in Additional Information, sorry :(
Additional information
It's my first time trying a Linux build on this machine, the same repo and forge.config.js builds fine on Windows and gives me a working installer so I really don't think the config is the problem here.
Basically
electron-forge makegets half way through packaging and then just stops. There's no error and no crash, it just sits there. Somewhere in these steps:And it's not really consistent which one it dies on.
Most of the time it just hangs forever. I left it running once and after 14 minutes it had burned through like 9 seconds of actual CPU time, so whatever it's "doing" isn't much of anything.
Solutions I've already ruled out: pretty sure it's not disk, same thing happens on an exFAT external drive and on my btrfs root partition. Not memory either,
free -hshowed 9+GB free the whole time it was stuck. Not network,ss -tnpshowed zero connections from the node process. Checked/proc/<pid>/statusand it's sitting inS(sleeping) notD, so it's not blocked on disk IO at the kernel level.I ran
strace -p <pid> -fduring one of the hangs and the main thread was just looping on epoll_pwait/write, basically redrawing the spinner over and over?? Worker threads were all idle in futex waits. So as far as I can tell literally nothing is happening even though Forge still says the step is "running."When it does make progress,
/proc/<pid>/fdshows it writing Electron locale .pak files one at a time. But it'll just randomly stop partway through, I watched it sit on ru.pak for like 6 minutes until I manually stopped it.I cleared
~/.cache/electronfor a fresh download, I cleared/tmp/electron-packagerbefore every retry, same thing every time. I pulled@electron-forge/plugin-auto-unpack-nativesout since I don't even have native dependencies, no change, I put it back. I tried just the deb target by itself withnpx electron-forge make --targets=@electron-forge/maker-debto rule out AppImage/RPM causing it, but it still hung. Same with maker-rpm. Updated all the@electron-forge/*packages to newest, but no difference. I checked dmesg and journalctl for OOM kills or crashes, but there was nothing.I have not tried downgrading off Node 26 yet, that's my next move since it's pretty new and this could just be something nobody's reported yet or I haven't seen.
Repro from a clean install:
forge.config.js:
package.json dependencies:
Google hasn't been a massive help either.