GNOME Bugzilla – Bug 772035
Apple Sandbox and Appstore Upload issue.
Last modified: 2016-12-07 01:26:55 UTC
Hi, GStreamer, Thanks for your comment. I have a few more Inquiries regarding Appstore Upload.(AppSandbox) Streamer version : 1.6.4(using cerebra universal build) build platform : mac OS X 10.11 el capitan GStreamer.framework/Versions/1.0/libexec/gstreamer-1.0/gst-plugin-scanner GStreamer.framework/Versions/1.0/libexec/gstreamer-1.0/gst-ptp-helper Regarding Bug 771860 (https://bugzilla.gnome.org/show_bug.cgi?id=771860), I sorted out TestCase 1~3 Codesign problem with your help. StackOverFlow(https://stackoverflow.com/questions/25950544/codesign-what-are-unsealed-contents) However, I couldn't sort out TestCase 4 with StackOverFlow(https://stackoverflow.com/questions/25950544/codesign-what-are-unsealed-contents) There is a "TestCase 4" of Bug771860 AppLoader error down below - AppLoader Upload Error : ERROR ITMS-90296: "App sandbox not enabled. The following executables must include the "com.apple.security.app-sandbox" entitlement with a Boolean value of true in the entitlements property list: [( "com.myplayer.osx.pkg/Payload/MyApp.app/Contents/Frameworks/GStreamer.framework/Versions/1.0/libexec/gstreamer-1.0/gst-plugin-scanner", "com.myplayer.osx.pkg/Payload/MyApp.app/Contents/Frameworks/GStreamer.framework/Versions/1.0/libexec/gstreamer-1.0/gst-ptp-helper" )] Refer to App Sandbox page at https://developer.apple.com/devcenter/mac/app-sandbox/ for more information on sandboxing your app." ERROR ITMS-90260: "Bad Bundle Executable. You must include a valid CFBundleExecutable key in the nested bundle osx-framework [com.myplayer.osx.pkg/Payload/MyApp.app/Contents/Frameworks/GStreamer.framework] property list file." ERROR ITMS-90261: "Bad CFBundleExecutable. Cannot find executable file that matches the value of CFBundleExecutable in the nested bundle osx-framework [com.myplayer.osx.pkg/Payload/MyApp.app/Contents/Frameworks/GStreamer.framework] property list file." To sort out this error, I did some tests down below. Test1 1) I changed osx-framework to GStreamer in GStreamer.framework/Resources/Info.plist Modify -> Bundle name, Bundle identifier 2) Codesign - Terminal Input Command(Codesign for GStreamer.framework/Versions/1.0/lib Directory) : find MyApp.app/Contents/Frameworks/GStreamer.framework/Versions/1.0/ -name *.dylib | while read a ; do codesign —verbose —sign '3rd Party Mac Developer Application: My ID' ${a}; done & find MyApp.app/Contents/Frameworks/GStreamer.framework/Versions/1.0/ -name *.so | while read b ; do codesign —verbose —sign '3rd Party Mac Developer Application: My ID' ${b}; done | codesign —verbose —sign '3rd Party Mac Developer Application: My ID' MyApp.app/Contents/Frameworks/GStreamer.framework/Versions/1.0/lib/GStreamer - Terminal Input Command(Codesign for MyApp, MyFramework.framework, GStreamer.framework) : codesign —all-architectures -f —deep -s '3rd Party Mac Developer Application: My ID' —entitlements "MyApp.entitlements" "MyApp.app" 3) Try AppLoader Upload - Make PKG File and Upload : -> Result : Fail -> Error Message : ERROR ITMS-90260: "Bad Bundle Executable. You must include a valid CFBundleExecutable key in the nested bundle osx-framework [com.myplayer.osx.pkg/Payload/MyApp.app/Contents/Frameworks/GStreamer.framework] property list file." But, I Fixed One Error(ERROR ITMS-90261: "Bad CFBundleExecutable. Cannot find executable file that matches the value of CFBundleExecutable in the nested bundle osx-framework [com.myplayer.osx.pkg/Payload/MyApp.app/Contents/Frameworks/GStreamer.framework] property list file.") Test2. 1) I changed osx-framework to GStreamer in GStreamer.framework/Resources/Info.plist Modify -> Bundle name, Bundle identifier 2) Codesign - Terminal Input Command(Codesign for GStreamer.framework/Versions/1.0/lib Directory) : find MyApp.app/Contents/Frameworks/GStreamer.framework/Versions/1.0/ -name *.dylib | while read a ; do codesign —verbose —sign '3rd Party Mac Developer Application: My ID' ${a}; done & find MyApp.app/Contents/Frameworks/GStreamer.framework/Versions/1.0/ -name *.so | while read b ; do codesign —verbose —sign '3rd Party Mac Developer Application: My ID' ${b}; done | codesign —verbose —sign '3rd Party Mac Developer Application: My ID' MyApp.app/Contents/Frameworks/GStreamer.framework/Versions/1.0/lib/GStreamer - Terminal Input Command(Codesign for GStreamer.framework/Versions/1.0/libexec/gstreamer-1.0/gst-plugin-scanner) : codesign -f -v -s '3rd Party Mac Developer Application: My ID' —entitlements "MyApp.entitlements" "MyApp.app/Contents/Frameworks/GStreamer.framework/Versions/1.0/libexec/gstreamer-1.0/gst-plugin-scanner" - Terminal Input Command(Codesign for GStreamer.framework/Versions/1.0/libexec/gstreamer-1.0/gst-ptp-helper) : codesign -f -v -s '3rd Party Mac Developer Application: My ID' —entitlements "MyApp.entitlements" "MyApp.app/Contents/Frameworks/GStreamer.framework/Versions/1.0/libexec/gstreamer-1.0/gst-ptp-helper" - Terminal Input Command(Codesign for MyApp, MyFramework.framework, GStreamer.framework) : codesign —all-architectures -f —deep -s '3rd Party Mac Developer Application: My ID' —entitlements "MyApp.entitlements" "MyApp.app" 3) Try AppLoader Upload - Make PKG File and Upload : -> Result : Succes But, My app could not be executed. Test3. I succeed uploading but the app was not able to use. Therefore I tested again to find a reason. 1) I changed osx-framework to GStreamer in GStreamer.framework/Resources/Info.plist Modify -> Bundle name, Bundle identifier 2) Codesign - Terminal Input Command(Codesign for GStreamer.framework/Versions/1.0/lib Directory) : find MyApp.app/Contents/Frameworks/GStreamer.framework/Versions/1.0/ -name *.dylib | while read a ; do codesign —verbose —sign '3rd Party Mac Developer Application: My ID' ${a}; done & find MyApp.app/Contents/Frameworks/GStreamer.framework/Versions/1.0/ -name *.so | while read b ; do codesign —verbose —sign '3rd Party Mac Developer Application: My ID' ${b}; done | codesign —verbose —sign '3rd Party Mac Developer Application: My ID' MyApp.app/Contents/Frameworks/GStreamer.framework/Versions/1.0/lib/GStreamer - Terminal Input Command(Codesign for GStreamer.framework/Versions/1.0/libexec/gstreamer-1.0/gst-plugin-scanner) : codesign -f -v -s '3rd Party Mac Developer Application: My ID' "MyApp.app/Contents/Frameworks/GStreamer.framework/Versions/1.0/libexec/gstreamer-1.0/gst-plugin-scanner" - Terminal Input Command(Codesign for GStreamer.framework/Versions/1.0/libexec/gstreamer-1.0/gst-ptp-helper) : codesign -f -v -s '3rd Party Mac Developer Application: My ID' "MyApp.app/Contents/Frameworks/GStreamer.framework/Versions/1.0/libexec/gstreamer-1.0/gst-ptp-helper" - Terminal Input Command(Codesign for MyApp, MyFramework.framework, GStreamer.framework) : codesign —all-architectures -f —deep -s '3rd Party Mac Developer Application: My ID' —entitlements "MyApp.entitlements" "MyApp.app" 3) Try AppLoader Upload - Make PKG File and Upload : -> Result : Fail -> Error Message : ERROR ITMS-90260: "Bad Bundle Executable. You must include a valid CFBundleExecutable key in the nested bundle osx-framework [com.myplayer.osx.pkg/Payload/MyApp.app/Contents/Frameworks/GStreamer.framework] property list file." But, My app can be executed. it worked well with applying codesign on gat-plugin-scanner and gst-ptp-helper but when codesign and sandbox are applied, it was failed. How can I sort out this issue? Please let me know, if you have any question.
Thanks for taking the time to report this. This particular bug has already been reported into our bug tracking system, but please feel free to report any further bugs you find. *** This bug has been marked as a duplicate of bug 771860 ***
Hi Sebastian, Bug 771860 is actually that I posted. Bug 771860 was about that I couldn't apply codesign and it was sorted out with the help. This post is more related to this. when I applied sandbox and codesign on gst-plugin-scanner and gst-ptp-helper,gst_init doesnt work.