[Interest] [Qt-interest] Latest on Mac App Store + sandboxing?
Paul Miller
paul at fxtech.com
Tue Feb 14 15:09:46 CET 2012
On 2/13/2012 4:48 PM, NoRulez wrote:
> I tried it also this way, but i want to be able to generate packages on
> a build server, so in my case the command line tools are simpler ;-)
>
> I had made a mistake in the example (point 2) in the last mail, here are
> "all" steps copied from my project
>
> So, let's say the bundle indentifier in this example is called BUNDLE
> (bundle.app) and the project PROJECT
>
> The APPLICATION_CERTIFICATE and INSTALLER_CERTIFICATE are the
> certificates which you have installed from http://developer.apple.com.
> APPLICATION_CERTIFICATE is something like "3rd Party Mac Developer
> Application: YOUR NAME"
> INSTALLER_CERTIFICATE is something like "3rd Party Mac Developer
> Installer: YOUR NAME"
>
> I use the following steps (Maybe you can handle this in a qmake's
> project file (*.pro) as a post build process, I use CMake as the build
> system so that way it is easier for me):
>
> 1.) macdeployqt BUNDLE
> 2.) remove unnecessary directories and files (plugins, frameworks and so on)
> 3.) unlock the keychain (/usr/bin/security unlock-keychain
> $HOME/Library/Keychains/login.keychain)
> 4.) Sign all frameworks (/usr/bin/codesign --force --verbose --verify
> --sign "APPLICATION_CERTIFICATE"
> BUNDLE/Contents/Frameworks/QtGui.framework/Versions/4/QtGui)
> 5.) Sign all plugins (/usr/bin/codesign --force --verbose --verify
> --sign "APPLICATION_CERTIFICATE"
> BUNDLE/Contents/PlugIns/imageformats/libqgif.dylib)
> 6.) Sign the application bundle (/usr/bin/codesign --force --verbose
> --verify --sign "APPLICATION_CERTIFICATE" BUNDLE)
> 7.) Run productbuild (/usr/bin/productbuild --component "BUNDLE"
> /Applications --sign "INSTALLER_CERTIFICATE" --product
> "BUNDLE/Contents/Info.plist" PROJECT.pkg)
> 8.) Try it with the installer (/usr/sbin/installer -store -pkg
> PROJECT.pkg -target /)
>
> That's it
Thanks for that - that was VERY helpful!
In fact, all I did was manually sign the two Qt Frameworks in my bundle
and then used Build+Archive (since I'm using XCode) to rebuild the
installer. We'll see what they say!
More information about the Interest
mailing list