Skip to content
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

Sign .app to avoid the "app from an unidentified developer" prompt #13

Closed
lwouis opened this issue Aug 29, 2019 · 1 comment
Closed
Labels
enhancement New feature or request

Comments

@lwouis
Copy link
Owner

lwouis commented Aug 29, 2019

The .app is unsigned currently. When the user opens the app for the first time, they get a scary prompt, and must jump through hoops to allow the app to run:

image

Getting an apple certificate and signing the app would remove that friction.

Here is a tutorial: https://successfulsoftware.net/2012/08/30/how-to-sign-your-mac-os-x-app-for-gatekeeper/

An issue is that this means buying a 100$/year apple dev account. Beyond the money, it makes this less of an open-source project as i would need my personal paid account to sign. Forks would need their own accounts to sign. I don't think there is any way around this though. This is an Apple ecosystem limitation.

@lwouis lwouis added the enhancement New feature or request label Aug 29, 2019
@lwouis lwouis mentioned this issue Oct 15, 2019
@lwouis lwouis added the M size label Oct 17, 2019
@lwouis lwouis removed the M size label Jan 24, 2020
This was referenced Jan 27, 2020
@lwouis
Copy link
Owner Author

lwouis commented Jan 27, 2020

I researched code-signing in the OSS community. There is no way around paying Apple 礼金. I bit the bullet and just bought the certificate for ¥12,980. I don't want people to have a bad experience when launching the app for the first time. The certificate should be available for 5 years from now if I don't renew the developer account.

Adding this into CI was a bit tricky as Apple makes us jump through endless hoops with notarization. I hope it works on v3 release. As usual with CI, it's pretty hard to test changes. I tested as much as possible locally, but only the real travis build will tell if the new code is correct. Same with my work on #75.

Note even though it means that I'm personally signing the release builds by having my personal account used during CI. For local development, I added a script to generate a local self-signed certificate, so that anyone can contribute to the project without any barrier to entry :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant