Notarize SheepShaver for Catalina?

About SheepShaver, a PPC Mac emulator for Windows, MacOS X, and Linux that can run System 7.5.3 to MacOS 9.0.4.

Moderators: Cat_7, Ronald P. Regensburg, ClockWise

Post Reply
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Notarize SheepShaver for Catalina?

Post by emendelson »

Mostly as a learning exercise, I tried to build SheepShaver from kanjitalk755's code, using my Apple developer account so that I could create a notarized build that would run in Catalina without going through the Open menu. No matter what I did, I was only able to archive the app so that I could distribute the "Content" but not distribute the App from the Archive Manager, and this meant that I couldn't notarize the app.

Other people have had similar problems with other apps, but none of the solutions that I found online were able to work. It may have something to do with the SDL framework, but that's only a guess. If anyone is able to figure this out, please let us know.
kanjitalk755
Apple Corer
Posts: 239
Joined: Thu Nov 09, 2017 12:06 pm

Re: Notarize SheepShaver for Catalina?

Post by kanjitalk755 »

After investigating, it seems that it is necessary to register for Apple Developer Program (99USD/year).

https://developer.apple.com/documentati ... stribution
Use a “Developer ID” application, kernel extension, or installer certificate for your code-signing signature. (Don't use a Mac Distribution or local development certificate.)
https://developer.apple.com/support/developer-id
To distribute your Mac software with Developer ID, you will need to be a member of the Apple Developer Program or Apple Developer Enterprise Program, obtain a Developer ID certificate, and submit your app to be notarized by Apple.
https://developer.apple.com/support/compare-memberships
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Notarize SheepShaver for Catalina?

Post by emendelson »

I have an Apple Developer ID ($99/year) and I can notarize my AppleScript applications. The problem with SheepShaver seems to have something to do with the required "Hardened Runtime Enabled" setting, but I am still trying to figure out exactly what goes wrong. I will have more details soon, I hope, but this may not be worth the trouble to fix.

EDIT: Yes, if you build with "Hardened Runtime Enabled" and then archive and export the application, it crashes. SheepShaver apparently cannot run when built with Hardened Runtime Enabled. There is probably no reason to try to fix this.
kanjitalk755
Apple Corer
Posts: 239
Joined: Thu Nov 09, 2017 12:06 pm

Re: Notarize SheepShaver for Catalina?

Post by kanjitalk755 »

I have added an entitlement file to avoid crash when Hardened Runtime and JIT enabled.

https://github.com/kanjitalk755/macemu
emendelson
Forum All-Star
Posts: 1706
Joined: Tue Oct 14, 2008 12:12 am

Re: Notarize SheepShaver for Catalina?

Post by emendelson »

Thank you, kanjitalk755!

The app builds successfully with Hardened Runtime Enabled in the settings, and it runs from the output folder in the Project Settings dialog. But the Hardened Runtime feature is apparently not actually created until I archive the application. Unfortunately, the archived application crashes.

For what it is worth, here is the crash report:

https://www.dropbox.com/s/0vs6vbbi3dbrq ... t.txt?dl=1

I think this can only be solved by a real programmer (not me, obviously) working with a Developer account, and it may not be possible at all, so please do not spend any more time on it.

Thank you again for all your work on this project!`
Post Reply