I was going to ask a question about code signing , but I'm happy to
report a solution instead!
I am currently developing under Mavericks and have a py33-pyqt4
application which I have 'frozen' into an app using cx_Freeze 4.3.2
(installed with PIP). I recently joined the Mac Developer Program in
order to be able to code sign my application. After much pain and
suffering I was eventually able to sign my app successfully. I think I
had to sign just about every file in the bundle, including the .pyc
files within library.zip and even .png and .jpg files, but I got there
in the end. I added it to a .zip archive, uploaded it to my webpage, and
the download worked fine; just a warning asking if I wanted to open an
application downloaded from the Internet.
Then, I created a .dmg image containing my app, but when I downloaded
and tried to open it I was warned that it was damaged. More pain and
suffering ensued, but the solution was pretty straightforward. I first
had to create a read-write .dmg image containing my app, code-sign the
app inside the .dmg and then convert the image to read-only after that.
(I signed and verified the app before placing it in the .dmg and then
resigned-it after it was added.) I'm using "DMG Architect" from the App
Store, but I don't think that matters to the process.
I'm looking forward to cx_Freeze 4.3.3 when it becomes available and
seeing how well it handles code-signing!
Best regards,
Tim Grove
from https://developer.apple.com/library/mac/technotes/tn2206/_index.html:
*Shipping your Signed Code*
Code signing uses extended attributes. If the extended attributes are
lost then the program's identity will be break. Thus, when you ship your
program, you must use a mechanism that preserves extended attributes.
One way to guarantee preservation of extended attributes is by packing
up your signed code in a read-write disk image (DMG) file before signing
and then, after signing, converting to read-only. You should also be
careful to not move your application from a system later than Mac OS X
10.3 to a system at or earlier than Mac OS X 10.3 and then back to a
system later than MAc OS 10.3 again as it will drop the extended
attributes following that transport pattern. You probably don't need to
use a disk image until the final package stage so another less
heavy-handed method would be to use ZIP files.
------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos. Get
unparalleled scalability from the best Selenium testing platform available.
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________
cx-freeze-users mailing list
cx-freeze-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cx-freeze-users