Hi @d_schmidt, sorry for coming late here.
I've run some additional tests and I've some final considerations to share
- Fresh macOS (10.15)
- Cinema >= R21 does RUN out of the box
- Plugin running on Cinema >= R21 does RUN ONLY if notarized
- Cinema < R21 does NOT RUN being not notarized
- Plugin running on Cinema < 21 does NOT RUN – independently of being notarized or not – because Cinema doesn’t run (see #1.2);
- Upgraded macOS (from 10.xx to 10.15)
- Cinema >= R21 does RUN out of the box being it notarized
- Plugin running on Cinema >= R21:
- Installed before the upgrade to 10.15: does RUN – independently of being notarized or not – because already existing on the system at the time of the os upgrade;
- Installed after the upgrade to 10.15: does RUN ONLY if notarized because not existing on the system at the time of the os upgrade;
- Cinema < R21:
- Installed before the upgrade to 10.15: does RUN – despite not being notarized – because already existing on the system at the time of the os upgrade;
- Installed after the upgrade to 10.15: does NOT RUN because not existing on the system at the time of the os upgrade;
- Plugin running on Cinema < 21:
- Installed before the upgrade to 10.15: does RUN – independently of being notarized or not – because already existing on the system at the time of the os upgrade;
- Installed after the upgrade to 10.15: does RUN ONLY if notarized because not existing on the system at the time of the os upgrade;
- Former macOS (< 10.15)
- Cinema (no matter what version) does RUN – independently of being notarized or not.
- Plugin running on Cinema (no matter what version) does RUN – independently of being notarized or not.
I've also experienced during the tests, that non-notarized application/plugins can run on Catalina if the quarantine attribute is removed from the Zip archive that contains the application/plugin before unarchiving the application and running it.
Although this is not a recommended workflow, it can be achieved by calling:
$ xattr -d "com.apple.quarantine" <zip file>
Now about notarizing already built plugins: as already mentioned by @kbar it is possible and this afternoon I tried and it went ok.
Before notarizing the zip archive shipping the plugin as described in our documentation, you have to:
- sign the plugin;
- enforce the hardened runtime;
- create the zip archive
- submit the zip archive to the notarization service
- wait for Apple to notarize the archive.
In the end steps 1 and 2 are achieved by calling
$ codesign -f -s "Developer ID Application: <Your Name>" --options runtime <xlib file>
whilst the remaining ones are the same reported in the link above.
With this method I've successfully signed and notarized the latticeplane binaries found in the archive on Maxon Labs and made them working on R19 and R20 in Catalina. Finally these additional notes will be added in the documentation.
Cheers, R