Noncommital Premarital Mischief

    @electron/fuses
    TypeScript icon, indicating that this package has built-in type declarations

    1.6.1 • Public • Published

    @electron/fuses

    Flip Electron Fuses and customize your packaged build of Electron

    Usage

    import { flipFuses, FuseVersion, FuseV1Options } from '@electron/fuses';
    
    // During your build / package process
    await flipFuses(
      require('electron'), // Returns the path to the electron binary
      {
        version: FuseVersion.V1,
        [FuseV1Options.RunAsNode]: false, // Disables ELECTRON_RUN_AS_NODE
        [FuseV1Options.EnableCookieEncryption]: true, // Enables cookie encryption
        [FuseV1Options.EnableNodeOptionsEnvironmentVariable]: false, // Disables the NODE_OPTIONS environment variable
        [FuseV1Options.EnableNodeCliInspectArguments]: false, // Disables the --inspect and --inspect-brk family of CLI options
        [FuseV1Options.EnableEmbeddedAsarIntegrityValidation]: true, // Enables validation of the app.asar archive on macOS
        [FuseV1Options.OnlyLoadAppFromAsar]: true, // Enforces that Electron will only load your app from "app.asar" instead of its normal search paths
        [FuseV1Options.LoadBrowserProcessSpecificV8Snapshot]: true, // Loads V8 Snapshot from `browser_v8_context_snapshot.bin` for the browser process
      },
    );

    Apple Silicon

    For arm64 macOS builds of your app if you are not immediately codesigning your app after flipping the fuses you will need to pass resetAdHocDarwinSignature: true to the flipFuses method. Otherwise the app will refuse to launch with code signature validation errors. This is a new security measure on Apple Silicon devices.

    import { flipFuses, FuseVersion, FuseV1Options } from '@electron/fuses';
    
    await flipFuses(
      require('electron'),
      {
        version: FuseVersion.V1,
        resetAdHocDarwinSignature: targetPlatform === 'darwin' && targetArch === 'arm64',
        [FuseV1Options.RunAsNode]: false,
      },
    );

    Install

    npm i @electron/fuses

    DownloadsWeekly Downloads

    4,752

    Version

    1.6.1

    License

    MIT

    Unpacked Size

    48.3 kB

    Total Files

    16

    Last publish

    Collaborators

    • electron-cfa