howto py2exe/py2app for self updating application

SPE - Stani's Python Editor spe.stani.be at gmail.com
Sat Apr 22 09:03:25 EDT 2006


Hi,

I'm creating a GUI program
with wxPython which will be distributed  for Mac and Windows. The
audience of the program is not technical at all (eg they've never
heard about Python yet ;-), so everything should go automatically. The
program should be able to update itself and to update its database
(collection of .txt files). These are two separated things and don't
happen simultaneously. I thought of the following:

- seperate the code which will be updated and zip it to use a zipimport
- zip the .txt files

These files can then be downloaded (urllib or so) and if the download
has completed succesfully, replace their old files. For the updated
python code it is necessary to restart the program for the database
not.

These questions arise:

++ How can I bundle a zipimport file with py2exe/py2app? Let say this
is the
folder layout of the program:
application.py
code.zip (contains main.py, ui.py, etc..) *
data.zip (contains .txt files) *
other files (preferably bundled but not necessary) such as the
wxPython libraries and whatever py2app will want to include

(* means should be remote updatable/synchronizable)

application.py is just a dummy file which calls code.main.main()

Should I declare code.zip as a data file or as a python package?

Of course it would be nice if someone be so kind to suggest a simple
setup.py recipee for this...

++ I have Python2.4, wxPython2.6.3, OS X 10.4 Will it run on other
versions of OS X? If not will a version compiled with py2app on OS X
10.3 run on
OS X 10.4 or do I need to provide a file for every OS X version?

++ Do I have to declare something special for py2app and wxPython?

Thanks in advance,

Stani

PS Please cc your answer to spe.stani.be IatI gmail.com




More information about the Python-list mailing list