Skip to content

Move @electron/rebuild into optionalDependencies #4134

Description

@thorsent

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 feature request that matches the one I want to file, without success.

Problem description

Many firms disallow installation of node-gyp. This module is dragged in through @electron/rebuild, thus preventing @electron/forge from being installed without hacky workarounds.

I believe this problem can be solved by moving @electron/rebuild into optionalDependencies. Only a small percentage of electron projects require native module building, and those projects almost by definition won't have restrictions on node-gyp. Anyone else will be able to install the library without getting stuck at this point.

Proposed solution

Move @electron/rebuild into optionalDependencies.

Alternatives considered

To get around this problem, we've been using a resolution that points node-gyp to a fake library. But this requires some manual hand-holding with our customers.

Additional information

No response

Activity

  1. thorsent commented on Apr 20, 2026

    @thorsent
    Author

    This may start to affect more people because Yarn 4 apparently has increased security around git downloads during install.

    Image

    We are currently working around these issues with an override that essentially replaces @electron/node-gyp with an empty package.

    "overrides": {
       "@electron/node-gyp": "npm:empty-npm-package@1.0.0"
    }
    
  2. achou11 commented on Jul 20, 2026

    @achou11

    This may start to affect more people because Yarn 4 apparently has increased security around git downloads during install.
    Image

    We are currently working around these issues with an override that essentially replaces @electron/node-gyp with an empty package.

    "overrides": {
       "@electron/node-gyp": "npm:empty-npm-package@1.0.0"
    }
    

    Similar to what @thorsent has mentioned here, npm v12 disables git dependencies by default, which means installation errors will start surfacing if forge doesn't update @electron/rebuild

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions