*Newbie Question* --> Is it viable to distribute Python apps over the Internet?

Graham Fawcett graham__fawcett at hotmail.com
Tue Apr 22 10:25:54 EDT 2003


Grant Edwards wrote:
> In article <mailman.1050946774.25112.python-list at python.org>, Jp Calderone wrote:
> 
>>It's easy to see why.  You're distributing an entire runtime
>>environment, instead of just your application.  When you write
>>VB code, you're only distributing your application.
> 
> 
> Has anybody tried distributing their Python app w/o bundled
> Python but with a wrapper/isntaller that will download and
> install Python if it isn't installed?  I'm currently
> distributing a very simple wxWindows app bundled with Python
> and wxWindows (so the download is pretty huge).  For customers
> that already have Python and wxWindows, it seems like a waste.
> 
> I've now idea how many customers (if any) already do have
> Python. I suspect very few do, so it's sort of a moot point.
> 

Excellent point. I took a peek at the Chandler 0.2 package that was
made available recently. It was ~13Mb, and it seemed an awful shame to
have so much "bloat" when a pre-installed interpreter (and wxPython
lib) could have cut the package down to almost nothing.

It would be great to see this integrated with the Python Package Index
as well, for a CPAN-style (grab what I need when I need it)
installation. Well, I assume that's the point of PyPI in the first
place.

Presumably a small C program could be written and made available as a
bootstrap to be placed in binary executable installers (Inno Setup,
etc) that could detect the absence of a Python environment and
download/install it prior to final installation of the application.

The Java Web Start model might be worth consideration as well. It
would cordon off the interpreter into a separate, single download,
take care of the PyPI/Distutils stuff, etc. and still leave the client
with a configuration-free environment. Just fire up the Python Web
Start, download the application stub, and let PWS do the rest. This
would also isolate and take care of differences between build
environments (*nix vs. Windows, for example, where, in the latter, the
presence of a compiler is an abberation).

I guess the moral of the story is, "contribute some time to
PyPI/Distutils development."  Or, befriend a PyPI/Distutils developer
and send him food and get-out-of-work-free tickets. ;-)

-- Graham




More information about the Python-list mailing list