electron-userland / electron-builder

A complete solution to package and build a ready for distribution Electron app with “auto update” support out of the box
https://www.electron.build
MIT License
13.64k stars 1.74k forks source link

Notarization fails on MacOS 10.15.3 #4656

Closed Ankitr19 closed 4 years ago

Ankitr19 commented 4 years ago

We are trying to notarize our electron app, but the notarization is not working . It fails with the following issue :-

"issues": [ { "severity": "error", "code": null, "path": "/Contents/Resources/app/node_modules/fsevents/build/Release/.node", "message": "The binary is not signed.", "docUrl": null, "architecture": "x86_64" }, { "severity": "error", "code": null, "path": "/Contents/Resources/app/node_modules/fsevents/build/Release/.node", "message": "The signature does not include a secure timestamp.", "docUrl": null, "architecture": "x86_64" } ]

How to resolve this error, and also if we have a method for deep code signing in electron-builder?

sethlu commented 4 years ago

@eschirtz Sorry about the delay. Can you open an issue at electron-osx-sign and I can take a closer look at the issue? My take on the problem you're having right now is that the tensorflow shared objects (.so) are not codesigned. If you're using electron-osx-sign, then you can explicitly provide a list of paths to these binary files to include them during codesigning.

davidmurdoch commented 4 years ago

Finally we resolve this issue by moving fsevents dependencies to devDependencies.

https://github.com/electron-userland/electron-builder/issues/4656#issuecomment-590809499

@parachvte I'm currently trying the "devDependencies" workaround for fsevents (I think ours is coming from chokidar, which should technically be in "dependencies" for us). I don't understand how this could work though. Any insight as to why this would work at all?

parachvte commented 4 years ago

@davidmurdoch I would suggest that you check for an upgrade of fsevents or chokidar, I think that newer version of it/them already resolved the issue. By upgrading all dependencies (that requires old version of fsevents) to the newer version will solve your problem.

The second option is to sign code by calling electron-osx-sign command programmatically, specify paths to be signed manually as @sethlu suggested.

Also you could consider testing for https://github.com/electron/electron-osx-sign/pull/169 and get it merge into electron-builder main stream so everyone can benefit.

eschirtz commented 4 years ago

@sethlu

That actually did work (specifying the binaries). Would you still like me to open an issue in that repo, or is this the expected functionality?

Thank you!

sethlu commented 4 years ago

@eschirtz I'm glad it worked! This is the expected behavior at the moment before https://github.com/electron/electron-osx-sign/pull/169 is merged in. If you're interested in giving this PR a try perhaps we can make it available to everyone who may get similar issues of binary files missing codesigning.

portah commented 4 years ago

@sethlu Your patch worked. All binaries included in my bundle were signed.

sethlu commented 4 years ago

@portah Thanks for testing! https://github.com/electron/electron-osx-sign/pull/169 is just merged and will come with a next release in a few days.

stale[bot] commented 4 years ago

Is this still relevant? If so, what is blocking it? Is there anything you can do to help move it forward?

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

gregoirepuget commented 2 years ago

Solution to use puppeteer and notorize app : https://www.npmjs.com/package/puppeteer-chromium-resolver