popa.bogdanp
2020-1-1 21:50:01

Is it possible to notarize the output of raco exe for macOS Catalina? I have a Swift frontend to a Racket application that I want to distribute, but I can’t figure out how to notarize the Racket application. I’ve tried looking to see how DrRacket was notarized, but I don’t see anything relevant in the repo.


popa.bogdanp
2020-1-1 22:08:01

I figured it out. I added a build step to my Xcode project to codesign both my executable as well as the Racket executable that gets distributed with it. When I send the app for validation to Apple, it now passes.

Here’s the script:

https://gist.github.com/Bogdanp/70e02379321853baaec06847505cbbf3


samth
2020-1-1 22:46:01

What entitlements did you use? cc @jbclements


samth
2020-1-1 22:51:42

Also, the relevant code is in racket/distro-build, I think, but @jbclements or @mflatt would know more


liv.pinera
2020-1-1 23:17:15

Very interesting material. Thank you very much indeed for sharing it with m.e



popa.bogdanp
2020-1-1 23:23:33

Allowing JIT and unsigned exec memory in both the frontend and the core’s entitlements was the only way I could get it to work. I’d have assumed having the inherit entitlement would’ve let it… inherit those entitlements, but it doesn’t look like it.


liv.pinera
2020-1-2 06:57:30

You teach other courses using Racket, right?