Unity Notarization issues for OSx build

Hi All

I am facing issue with Unity Notarization. I am able to codesign the app after zipping it ,and is uploaded for notarization. I am getting a invalid package with errors for macOS library files.

“severity”: “error”,
“code”: null,
“path”: “My.zip/My.app/Contents/Plugins/steam_api.bundle/Contents/MacOS/libsteam_api.dylib”,
“message”: “The signature of the binary is invalid.”,
“docUrl”: null,
“architecture”: “i386”

Thanks
Sri

“severity”: “error”,
“code”: null,
“path”: “DOMain.zip/DOMain.app/Contents/MacOS/UnityAnalytics.dylib”,
“message”: “The binary is not signed.”,
“docUrl”: null,
“architecture”: “x86_64”

Hi!

First delete all meta file from My.app then try sign libsteam_api.dylib file, and after this sign whole app
ie.:

codesign --deep --force --verify --verbose --timestamp --options runtime --entitlements "My.entitlements" --sign "Developer ID Application : YourCompanyName" "My.app/Contents/Plugins/steam_api.bundle/Contents/MacOS/libsteam_api.dylib""
codesign --deep --force --verify --verbose --timestamp --options runtime --entitlements "My.entitlements" --sign "Developer ID Application : YourCompanyName " "My.app"
1 Like

This actually worked thanks! I just deleted all .meta files from the steam_api.bundle and then signed the libsteam_api.dylib and finally signed my .app and everything works fine . Notarization was successful

Yea so the way notarization works is all libs must be signed including 3rd party ones you can do as explained above a deep signing and force to essentially sign libs you did not build such as the steam one.

I’m running into this issue too, mainly with the Steamworks library. How do you “delete all meta file” from an app? What are the meta files?

[Edit] The statement above is confusing. You simply need to re-sign the library file with the “–force” (or -f) option. Without that option, it won’t replace the existing signature.

Yes we are aware of the meta file issue :frowning: and are working on a resolution to that.