-
-
Notifications
You must be signed in to change notification settings - Fork 200
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Please sign and notarize macOS app #686
Comments
I don’t know how to do that. |
This GitHub action contains example of app sign and notarization https://github.com/marketplace/actions/xcode-notarization |
To acquire the ApiKey used in app sign, developers must pay $99 per year to Apple. I don't think it is feasible for a free open-source project. |
I did buy a Comodo code signing certificate to sign Windows .exes here: Could I use that to sign or is that not applicable on Mac? |
I also have a SignPath certificate for open source projects provided by SignPath. Wondering if I can use that? @SabotageAndi would you know? |
No, for macOS sign, you need Apple Developer Subscription. It is also required to publish an app to the macOS AppStore. I have this subscription. I could publish this app as a free app from my subscription if it is suitable for you. |
That would be nice, thanks for the offer! |
Cool I will try. The version v2.1.820 crashed on macOS. |
This is the only thing preventing distribution via Homebrew: Homebrew/homebrew-cask#156909 (comment) In the meantime, I've put the cask in a third party repo (https://github.com/jwosty/homebrew-structuredlogviewer), so you can install it like so |
@KirillOsenkov I can help with sign and notarize scripts for this task. But it requires some preparation from you with apple dev account. More or less comprehensive list of what needs to be prepared on macOS machine owned by you:
And changes to the build script that needs to be made (can be done by anybody, as it doesn't require apple dev account access at this point). All of these steps below can be automated in the script for each build:
Hopefully I am not missing anything. |
OK I'll try to find time for this soon, thanks! |
I am now on Step 6: I have the .p12 file and it's protected with a password. Where do I put it now? How do I encrypt it? I assume I can't make this file public, right? |
@KirillOsenkov I think a GitHub action secret? |
OK, I created three Repository secrets under Actions. Where do I put the p12 file and how do I additionally encrypt it? |
I used |
Yeah, storing p12 file as a base64 secret should be good. |
OK, I made the following 4 secrets: APPLE_ID_EMAIL |
Some helpful info in the two issues I linked above ^^ |
@KirillOsenkov started PR here #842 I also think TeamID might be necessary in the signing and notarizing. You can include that in the secrets too: https://developer.apple.com/help/account/manage-your-team/locate-your-team-id/ And to be safe, let's add certificate name to the secrets too. |
I added APPLE_CERT_NAME with the value |
@KirillOsenkov that should be enough, thanks. Now need to figure out how to access these secrets from appveyor. |
Oh, I added them to GitHub Actions, I can add to AppVeyor too. Sorry it wasn't clear. Will have to be a bit later though. |
Oh, and to clarify, I'm fine with either AppVeyor or GitHub Actions for the Mac signing+notarization. I'd like to keep the existing logic in AppVeyor (because of the SignPath integration and I'm used to it), but for Mac we can do either, whatever works for you. |
@KirillOsenkov I don't have issues with AppVeyor. But you probably would need to push encrypted secrets into YAML file. |
OK here you go:
|
I can't run macOS app I got message:
The text was updated successfully, but these errors were encountered: