Type alias MakeUniversalOpts

MakeUniversalOpts: {
    x64AppPath: string;
    arm64AppPath: string;
    outAppPath: string;
    force?: boolean;
    mergeASARs?: boolean;
    singleArchFiles?: string;
    x64ArchFiles?: string;
    infoPlistsToIgnore?: string;
}

Options to pass into the makeUniversalApp function.

Requires absolute paths for input x64 and arm64 apps and an absolute path to the output universal app.

Type declaration

  • x64AppPath: string

    Absolute file system path to the x64 version of your application (e.g. /Foo/bar/MyApp_x64.app).

  • arm64AppPath: string

    Absolute file system path to the arm64 version of your application (e.g. /Foo/bar/MyApp_arm64.app).

  • outAppPath: string

    Absolute file system path you want the universal app to be written to (e.g. /Foo/var/MyApp_universal.app).

    If this file exists on disk already, it will be overwritten ONLY if MakeUniversalOpts.force is set to true.

  • Optional force?: boolean

    Forcefully overwrite any existing files that are in the way of generating the universal application.

    Default Value

    false

  • Optional mergeASARs?: boolean

    Merge x64 and arm64 ASARs into one.

    Default Value

    false

  • Optional singleArchFiles?: string

    If MakeUniversalOpts.mergeASARs is enabled, this property provides a minimatch pattern of paths that are allowed to be present in one of the ASAR files, but not in the other.

  • Optional x64ArchFiles?: string

    A minimatch pattern of binaries that are expected to be the same x64 binary in both

    Use this if your application contains binaries that have already been merged into a universal file using the lipo tool.

    See

    Apple's Building a universal macOS binary documentation

  • Optional infoPlistsToIgnore?: string

    A minimatch pattern of Info.plist paths that should not receive an injected ElectronAsarIntegrity value.

    Use this if your application contains another bundle that's already signed.