Search Unity

Unity Notarization issues for OSx build

Discussion in 'macOS' started by srilakshmim, Oct 9, 2019.

  1. srilakshmim

    srilakshmim

    Joined:
    Sep 23, 2013
    Posts:
    12
    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
     
  2. srilakshmim

    srilakshmim

    Joined:
    Sep 23, 2013
    Posts:
    12
    "severity": "error",
    "code": null,
    "path": "DOMain.zip/DOMain.app/Contents/MacOS/UnityAnalytics.dylib",
    "message": "The binary is not signed.",
    "docUrl": null,
    "architecture": "x86_64"
     
  3. teamcap

    teamcap

    Joined:
    Jun 25, 2019
    Posts:
    1
    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"
     
    gavrilosostaric1234 likes this.
  4. gavrilosostaric1234

    gavrilosostaric1234

    Joined:
    Mar 3, 2020
    Posts:
    1
    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
     
  5. andrews_unity

    andrews_unity

    Unity Technologies

    Joined:
    Dec 11, 2015
    Posts:
    264
    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.
     
  6. Gillissie

    Gillissie

    Joined:
    May 16, 2011
    Posts:
    305
    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.
     
    Last edited: Jul 20, 2020
  7. andrews_unity

    andrews_unity

    Unity Technologies

    Joined:
    Dec 11, 2015
    Posts:
    264
    Yes we are aware of the meta file issue :( and are working on a resolution to that.