-
Notifications
You must be signed in to change notification settings - Fork 25
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
Codesign on macOS #727
Codesign on macOS #727
Conversation
…to release anyways
The extracted OpenStudioApp.app itself is not codesigned and notarized
The order in which CPack does stuff is weird as hell when subdirectories are involved, but basically It adds the install(CODE ) commands from the top level CMakeLists, which includes calling the install_codesign_script.cmake Then it includes the specific subdirectories 's cmake_install.cmake which means it'll try to sign something that wasn't installed (copied) yet!
was added only in 3.9
On the self hosted runner I tweaked the sudoers file... maybe it'll work
… Break up install scripts per component, and do cleanup of cmake lists to avoid signing Radiance like 20 times total.
There's an intermittent failure in the packaging step, that has been preexisting for a while, but which is annoying the crap out of me during all this testing. There's a create_symlink failing sometimes, but restarting the run usually makes it work... OpenStudioApplication/src/openstudio_app/CMakeLists.txt Lines 446 to 484 in bcae7d2
|
… upload to release anyways" This reverts commit 76ffef6.
Ok, finally all green, aside from that nagging intermittent failure. Renabling all workflows now. Assuming I can pass CI just fine, this can drop. |
Wow @jmarrec this is a lot of work, very impressive! I left some comments/questions |
See it failing on develop here: https://github.com/openstudiocoalition/OpenStudioApplication/actions/runs/10610974805/job/29409504326?pr=730#step:17:1875 |
Included works
The absolutely required bit is
The rules are going to be tightened in the fall when macOS Sequoia releases: https://9to5mac.com/2024/08/06/macos-sequoia-makes-it-harder-to-run-apps-that-dont-follow-apples-security-rules/
In addition, I chose to also codesign and harden the inner apps, libraries, and executables. This will help for the tar.gz one probably.
I also added some QA/QC scripts that will, on GHA
Demonstration
Before signing
You get a an eject warning, and you have to right click > Open if you want to install it.
With signing