471,306 Members | 857 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 471,306 software developers and data experts.

Using eggs or py2exe to distribute apps

Hi,

I'm to the stage where I need to deploy the app I built with wxPython.
I've been able to successfully build it w/py2exe into a binary (about
10MB size in total).

What I'd like to do is create an automatic updater, so that I can have
users download updated versions of my *application code* without having
to have them redownload everything (the interpreter, etc) via a complete
redownload (I want to package some things as "components").

Eggs seem like an ideal solution, but I haven't had any luck using them
in conjunction with py2exe.

It would seem that the most effective solution would be to package a
python interpreter (with wxPython, etc already included) into the
distributed app's directory and not use py2exe at all; however, since
everything would be included in the distribution, it would seem that the
full python distro would be huge (50MB at least), which defeats the
purpose of wanting to build the app into "components".

Worst-case scenario would be to have them redownload the 10MB update
each time, but that's less than ideal, since the audience for my program
would have more frequent/less substantial updates over time, rather than
big updates all at once.

Any guidance or suggestions are very much appreciated.

Marcus
Jul 20 '07 #1
2 2291
Hey,

Use pyInstaller ;)

http://pyinstaller.hpcf.upr.edu/cgi-bin/trac.cgi

Easier to use in comparison to py2exe ... very good tool - try it!

Bye,

Matthias
Jul 20 '07 #2
On Jul 20, 5:39 am, Marcus <mcshutter...@dwx.comwrote:
Hi,

I'm to the stage where I need to deploy the app I built with wxPython.
I've been able to successfully build it w/py2exe into a binary (about
10MB size in total).

What I'd like to do is create an automatic updater, so that I can have
users download updated versions of my *application code* without having
to have them redownload everything (the interpreter, etc) via a complete
redownload (I want to package some things as "components").

Eggs seem like an ideal solution, but I haven't had any luck using them
in conjunction with py2exe.
It should be possible. exclude your application code from being
packaged, copy an egg file to your disribution directory and add it to
sys.path.

It would seem that the most effective solution would be to package a
python interpreter (with wxPython, etc already included) into the
distributed app's directory and not use py2exe at all; however, since
everything would be included in the distribution, it would seem that the
full python distro would be huge (50MB at least), which defeats the
purpose of wanting to build the app into "components".

Worst-case scenario would be to have them redownload the 10MB update
each time, but that's less than ideal, since the audience for my program
would have more frequent/less substantial updates over time, rather than
big updates all at once.

Any guidance or suggestions are very much appreciated.
You can try bbfreeze from http://cheeseshop.python.org/pypi/bbfreeze/
(of which I'm the author). It has support for egg files. If you
package your application code as an egg, it will by default copy your
whole egg (either as a directory or zipped) to the distribution
folder.

>
Marcus

Jul 20 '07 #3

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

6 posts views Thread by Brad Clements | last post: by
2 posts views Thread by Marc Ederis | last post: by
reply views Thread by upward_spiral2001 | last post: by
reply views Thread by kschnee | last post: by
4 posts views Thread by Simon Dahlbacka | last post: by
1 post views Thread by Dave Guenthner | last post: by
17 posts views Thread by Harry George | last post: by

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.