Yesterday I sent an audio .AU plugin to a beta tester. It was packaged in a .pkg installer that was code-signed, notarized, and stapled. I sent it to them via Google Drive.
The tester reported that it installed okay. But when they try to open an instance of the plugin in Logic, they got an error saying: "Load Plugin Error. Failed to load plug-in: detected corrupted plug-in data." followed by a message saying to contact the manufacturer.
The plugin loads fine on my end (we are both using Logic, M1 native, OS 12.6.3). My best guess is that Google Drive did a virus scan and that somehow caused Gatekeeper to reject the file (although it still allowed the tester to install it as if everything was normal).
I then sent the exact same file to the tester via another method (not Google Drive) and the plugin loads fine, as expected.
This is the second time I've experienced something like this with the newer Macs rejecting an otherwise valid file seemingly because it was loaded onto Google Drive.
Any ideas what's going on here? Should Google Drive be off-limits for my plugins? Like, I'd need to tell my users that the plugin might not work if they ever put it on Google Drive? Thanks.
The most common cause of such problems is that your code is packaged incorrectly resulting in the code signature being stored in extended attributes. Non-Apple file systems tend to drop extended attributes so, if your code signature relies on them, it breaks your code signature.
However, it’s hard to be sure without seeing the code in question. Can you replicate this with a dummy plug-in that you’re willing to share here? If so, please post a link.
Note See tip 14 for advice on posting links.
If not, try looking through your product to see if there are code signature extended attributes on either the installer package itself or any items within that. See TN3126 Inside Code Signing: Hashes for info on what those extended attributes look like. See Placing Content in a Bundle for advice on how to structure your code. It contains this great ‘money’ quote:
If you put content in the wrong location, you may encounter hard-to-debug code signing and distribution problems.
See the following for specific advice on how to sign and package code for the Mac:
Alternatively, you could open a DTS tech support incident and we can pick this up in private.
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"