Is it possible to deploy a Python application on the Mac App Store?

14,146

Solution 1

I packaged Pennywise, which is available on the Mac App Store. It's based on Virgil's moneyGuru, which uses Python, PyObjC, and py2app.

You will have to follow Apple's process for preparing an application for submission to the Mac App Store. Most importantly, you will want to add the proper keys to your Info.plist, and remove any automatic updating mechanism, e.g. Sparkle. It's not strictly required, but you will probably also want to implement receipt checking. Using Xcode will make the submission process much easier. You can look at the moneyGuru source code for an example of how to use Xcode as the final part of the build process.

Py2app embeds a copy of the Python framework in the bundle, so I don't know whether Apple would approve an application that only linked to the system framework. While the primary binary can't support PPC, Apple does not seem to check the architectures of binaries in embedded frameworks.

One final caveat: I wouldn't recommend this process for writing new applications. Using Python, PyObjC, and py2app seriously complicates the build process and introduces additional dependencies.

Solution 2

I know it's possible because I know of at least one Python-based app that is in the app store ("Pennywise", which is based on my own app, moneyGuru, which uses Python + PyObjc + py2app). I didn't do it myself, so I'm not sure of the details.

Solution 3

I wrote a comprehensive article explaining how to build and submit a Python app to the Mac App Store. It includes source code and build scripts for a barebones example app that I have successfully submitted.

Solution 4

Yes, it is possible, as long as you adhere with the full set of approval guidelines. This means that the python interpreter will have to be bundled into your application, for example.

See here for a full list of requirements:

https://developer.apple.com/appstore/mac/resources/approval/guidelines.html

Solution 5

It is quite possible. My app is currently listed:

http://itunes.apple.com/us/app/quickwho/id419483981?mt=12&ls=1#

Bundled up with py2app, no worries.

Share:
14,146
FogleBird
Author by

FogleBird

Hello! Check out my website to learn more about me... http://www.michaelfogleman.com/

Updated on July 02, 2022

Comments

  • FogleBird
    FogleBird almost 2 years

    Does Apple accept Python applications for distribution on the new Mac App Store?

    If so, how should the application be packaged? Is py2app sufficient? Something else?