Skip to content

After successful signing, notarization, and stapling Mac still refuses to verify the app ("... was blocked from use because it was not from an identified developer") #162

@davidmurdoch

Description

@davidmurdoch

I've been trying to get this to work for a week but can't seem to appease Apple. This is probably not even an issue with @electron/notarize, but I'm at my wits ends here and don't know what else to do.

Anyone able to point me in the right direction or suggest possible reasons?

Full logs are here: https://github.com/trufflesuite/ganache-ui/actions/runs/6054222144/job/16431228939#step:11:4484

Code that runs electron notarize: https://github.com/trufflesuite/ganache-ui/blob/chore/github_actions/scripts/build/afterSignHook.js

@electron/notarize DEBUG logs:

signing         file=dist/mac/Ganache.app identityName=Developer ID Application: ConsenSys AG (***) identityHash=C927DD3B556DC334E4573E643FB6F2F142E5FC5F provisioningProfile=none
afterSign hook triggered {
  appOutDir: '/Users/runner/work/ganache-ui/ganache-ui/dist/mac',
  outDir: '/Users/runner/work/ganache-ui/ganache-ui/dist',
  arch: 1,
  targets: [
    ArchiveTarget {
      name: 'zip',
      isAsyncSupported: true,
      outDir: '/Users/runner/work/ganache-ui/ganache-ui/dist',
      packager: [MacPackager],
      isWriteUpdateInfo: true,
      options: undefined
    },
    DmgTarget {
      name: 'dmg',
      isAsyncSupported: true,
      packager: [MacPackager],
      outDir: '/Users/runner/work/ganache-ui/ganache-ui/dist',
      options: [Object]
    }
  ],
  packager: MacPackager {
    info: Packager {
      cancellationToken: [CancellationToken],
      _metadata: [Object],
      _nodeModulesHandledExternally: false,
      _isPrepackedAppAsar: false,
      _devMetadata: [Object],
      _configuration: [Object],
      isTwoPackageJsonProjectLayoutUsed: false,
      eventEmitter: [EventEmitter],
      _appInfo: [AppInfo],
      tempDirManager: [TmpDir],
      _repositoryInfo: [Lazy],
      afterPackHandlers: [Array],
      debugLogger: [DebugLogger],
      nodeDependencyInfo: [Map],
      stageDirPathCustomizer: [Function (anonymous)],
      _buildResourcesDir: '/Users/runner/work/ganache-ui/ganache-ui/build',
      _framework: [ElectronFramework],
      toDispose: [Array],
      projectDir: '/Users/runner/work/ganache-ui/ganache-ui',
      _appDir: '/Users/runner/work/ganache-ui/ganache-ui',
      options: [Object]
    },
    platform: Platform {
      name: 'mac',
      buildConfigurationKey: 'mac',
      nodeName: 'darwin'
    },
    _resourceList: Lazy { _value: [Promise], creator: null },
    platformSpecificBuildOptions: {
      icon: 'static/icons/mac/icon.icns',
      hardenedRuntime: true,
      entitlements: './build/dmg/entitlements.mac.inherit.plist',
      category: 'public.app-category.developer-tools'
    },
    appInfo: AppInfo {
      info: [Packager],
      platformSpecificOptions: [Object],
      description: 'Personal Blockchain for Ethereum',
      version: '2.7.2',
      buildNumber: undefined,
      buildVersion: '2.7.2',
      productName: 'Ganache',
      sanitizedProductName: 'Ganache',
      productFilename: 'Ganache'
    },
    codeSigningInfo: Lazy { _value: [Promise], creator: null },
    _iconPath: Lazy { _value: [Promise], creator: null }
  },
  electronPlatformName: 'darwin'
}
Notarizing org.trufflesuite.ganache found at /Users/runner/work/ganache-ui/ganache-ui/dist/mac/Ganache.app
2023-09-01T21:54:27.174Z electron-notarize:spawn spawning cmd: xcrun args: [ '--find', 'notarytool' ] opts: {}
2023-09-01T21:54:31.123Z electron-notarize:spawn cmd xcrun terminated with code: 0
2023-09-01T21:54:31.124Z electron-notarize:notarytool starting notarize process for app: /Users/runner/work/ganache-ui/ganache-ui/dist/mac/Ganache.app
2023-09-01T21:54:31.125Z electron-notarize:helpers doing work inside temp dir: /var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/electron-notarize-ddefAu
2023-09-01T21:54:31.125Z electron-notarize:notarytool zipping application to: /var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/electron-notarize-ddefAu/Ganache.zip
2023-09-01T21:54:31.125Z electron-notarize:spawn spawning cmd: ditto args: [
  '-c',
  '-k',
  '--sequesterRsrc',
  '--keepParent',
  'Ganache.app',
  '/var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/electron-notarize-ddefAu/Ganache.zip'
] opts: { cwd: '/Users/runner/work/ganache-ui/ganache-ui/dist/mac' }
2023-09-01T21:56:07.907Z electron-notarize:spawn cmd ditto terminated with code: 0
2023-09-01T21:56:07.907Z electron-notarize:notarytool zip succeeded, attempting to upload to Apple
2023-09-01T21:56:07.908Z electron-notarize:spawn spawning cmd: xcrun args: [
  'notarytool',
  'submit',
  '/var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/electron-notarize-ddefAu/Ganache.zip',
  '--apple-id',
  '*********',
  '--password',
  '*********',
  '--team-id',
  '*********',
  '--wait',
  '--output-format',
  'json'
] opts: {}
2023-09-01T22:14:38.317Z electron-notarize:spawn cmd xcrun terminated with code: 0
2023-09-01T22:14:38.318Z electron-notarize:notarytool notarization success
2023-09-01T22:14:38.318Z electron-notarize:helpers work succeeded
2023-09-01T22:14:38.349Z electron-notarize:staple attempting to staple app: /Users/runner/work/ganache-ui/ganache-ui/dist/mac/Ganache.app
2023-09-01T22:14:38.349Z electron-notarize:spawn spawning cmd: xcrun args: [ 'stapler', 'staple', '-v', 'Ganache.app' ] opts: { cwd: '/Users/runner/work/ganache-ui/ganache-ui/dist/mac' }
2023-09-01T22:14:42.888Z electron-notarize:spawn cmd xcrun terminated with code: 0
Done notarizing org.trufflesuite.ganache
2023-09-01T22:14:42.888Z electron-notarize:staple staple succeeded
  • building        target=macOS zip arch=x64 file=dist/Ganache-2.7.2-mac.zip
  • building        target=DMG arch=x64 file=dist/Ganache-2.7.2-mac.dmg
  • building block map  blockMapFile=dist/Ganache-2.7.2-mac.zip.blockmap
  • publishing      publisher=Github (owner: trufflesuite, project: ganache-ui, version: 2.7.2)
  • uploading       file=Ganache-2.7.2-mac.zip.blockmap provider=github
  • uploading       file=Ganache-2.7.2-mac.zip provider=github
  • copy files      from=/Users/runner/work/ganache-ui/ganache-ui/static/icons/mac/icon.icns to=/Volumes/Ganache 2.7.2/.VolumeIcon.icns isUseHardLinks=false
  • copy files      from=/Users/runner/work/ganache-ui/ganache-ui/build/dmg/background.tiff to=/Volumes/Ganache 2.7.2/.background/background.tiff isUseHardLinks=false
  • execute command  command=sips -g pixelHeight -g pixelWidth /Users/runner/work/ganache-ui/ganache-ui/build/dmg/background.tiff workingDirectory=
  • command executed  executable=sips out=/Users/runner/work/ganache-ui/ganache-ui/build/dmg/background.tiff
  pixelHeight: 498
  pixelWidth: 658

  • building block map  blockMapFile=dist/Ganache-2.7.2-mac.dmg.blockmap
  • uploading       file=Ganache-2.7.2-mac.dmg.blockmap provider=github
  • uploading       file=Ganache-2.7.2-mac.dmg provider=github

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions