Skip to content

Electron Forge not working for platform win32 #3492

Open
@Manavusc

Description

@Manavusc

Pre-flight checklist

  • I have read the contribution documentation for this project.
  • I agree to follow the code of conduct that this project uses.
  • I have searched the issue tracker for a bug that matches the one I want to file, without success.

Electron Forge version

7.2.0

Electron version

v28.2.1

Operating system

12.6

Last known working Electron Forge version

No response

Expected behavior

I want to build an electron app for Windows. It builds for platform darwin perfectly fine but with platform win32 it gives this error. I also tried to use hooks for a workaround but it didn't work out for me.

Error: /var/folders/6z/3wm3ngxn6xdb3bbqs3ysqcjc0000gn/T/electron-packager/tmp-1qiDkR/resources/app/node_modules/dtrace-provider/build/node_gyp_bins/python3: file "../../../../../../../../../../opt/homebrew/Cellar/[email protected]/3.11.6/Frameworks/Python.framework/Versions/3.11/bin/python3.11" links out of the package`

Actual behavior

These are my commands.
"make": "electron-forge make", "make:win": "ELECTRON_FORGE_DEBUG=true electron-forge make --platform=win32 --arch=x64",

The actual behavior should be I should be able to build the app but it fails at the packaging application step.

Steps to reproduce

forge.config.js

`const fs = require('fs')
const path = require('path')

module.exports = {
packagerConfig: {
asar: true,
},
hooks: {

  packageAfterPrune(config, buildPath) {
    console.log('Running packageAfterPrune hook...');
    if (process.platform === 'win32') {
      const dirs = glob.sync(
        path.join(buildPath, 'node_modules/**/node_gyp_bins'),
        {
          onlyDirectories: true,
        }
      );

      for (const directory of dirs) {
        fs.rmdirSync(directory, { recursive: true, force: true });
      }
    }
  },
},
rebuildConfig: {},
makers: [
  {
    name: '@electron-forge/maker-squirrel',
    config: {},
  },
  {
    name: '@electron-forge/maker-zip',
    platforms: ['darwin','win32'],
  },
  {
    name: '@electron-forge/maker-deb',
    config: {},
  },
  {
    name: '@electron-forge/maker-rpm',
    config: {},
  },
],
plugins: [
  {
    name: '@electron-forge/plugin-auto-unpack-natives',
    config: {},
  },
],

};`

package.json
{ "name": "aka-app", "version": "1.0.0", "description": "CSI-Cancer Kinect Recording App", "main": "main.js", "directories": { "test": "test" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "start:watch": "npx electronmon --trace-warnings .", "start-dev": "NODE_ENV=development electron --inspect=5858 .", "start-build": "electron .", "start": "electron-forge start", "package": "electron-forge package", "make": "electron-forge make", "make:win": "ELECTRON_FORGE_DEBUG=true electron-forge make --platform=win32 --arch=x64", "package:mac": "electron-packager . --platform=darwin --arch=arm64 --icon=icons/app.icns --prune=true --out=builds --overwrite=true --extra-resource=.env", "package:win": "electron-packager . --platform=win32 --arch=x64 --icon=icons/app.ico --out=builds" }, "keywords": [ "electron", "reactjs" ], "author": "Manav", "license": "ISC", "dependencies": { "@electron/remote": "^2.0.11", "bunyan": "^1.8.15", "dotenv": "^16.3.1", "dotenv-expand": "^10.0.0", "ffmpeg-static": "^5.2.0", "fluent-ffmpeg": "^2.1.2" }, "devDependencies": { "@electron-forge/cli": "^7.2.0", "@electron-forge/maker-deb": "^6.4.2", "@electron-forge/maker-rpm": "^6.4.2", "@electron-forge/maker-squirrel": "^6.4.2", "@electron-forge/maker-zip": "^6.4.2", "@electron-forge/plugin-auto-unpack-natives": "^6.4.2", "electron": "^28.2.1", "electron-packager": "^17.1.2" }, "electronForge": { "make": { "targets": [ "zip" ] }, "packagerConfig": { "extraResource": [ ".env" ] } } }

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    blocked/needs-reproIssues unable to be reproduced by maintainersbug

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions