Distributing Python apps

Norman Skrzypinski zypin at sympatico.ca
Sat Jan 4 16:47:42 EST 2003


David Bolen wrote:
> I'm assuming Windows since you mention the Visual
> languages.

Hi, David.

I am developing applications for individuals, not businesses.  (Although,
some of the financial applications will be useful for small businesses on a
shoestring budget, too.)

I'd like the software to be available to anyone who has a floppy disk and
access to a computer.  My first target is the largest group, Windows users;
but, I don't want to ignore the people who have Mac and Linux.  To me,
that's one of the many attractions of Python - everyone can use it.

A rough draft of my first two applications, written in Visual Basic,
produced .exe files that are 350-460 KB.  The complete application would
probably be about 750 KB.  A data file, for 12 months, for a typical user,
would be about 500 KB.  So, the entire app and one year's data would easily
fit on a floppy disk, and could be used at home, school, work, or the
library.

> While it may not be at the level of the VB "create a installer" sort
> of thing, I use Gordon McMillan's installer package along with the
> InnoSetup Windows installer (for typical Windows installation
> packages) and I find it very easy and capable.  The installer is a
> simple execution to collect all the appropriate files together, and
> while you have to do some manual work to create the configuration file
> for InnoSetup, it's simple enough and no worse than using something
> like InstallShield with a VC application.

This is what I want ...

To buy: enter the credit card number, download the software.  To install:
click on the filename, choose the directory for file storage, choose the
directory for the shortcut.  To use: click on the shortcut.

Downloading and installing Python on every user's machine is not acceptable,
to me.

> Others here will no doubt mention py2exe which is an alternative to
> Gordon's package.  There are also alternatives to InnoSetup (such as
> NSIS).
>
> If you need more cross-platform support, Gordon's installer does
> support Linux (you'd skip the InnoSetup step).
>
> Of course, you could always use the included distutils support to
> build a setup file for your package and distribute it that way.  Your
> targets would need Python but not a developer environment (unless your
> package includes custom extensions that need compiling, and even then
> I think you can include the pre-built binaries with your
> distribution).  This is actually a fairly common way to distribute
> Python modules, although I can understand your desire for a more
> standalone approach, particularly for Windows users, as that's what I
> also do for some of my packages.
>
> Any of these seem fairly developer-friendly to at least this developer :-)

>From one developer to another: Thanks for your thoughtful reply.

> -- David

Norm

PS:  I quite strongly disagree with the nutritional advice given by your
company.






More information about the Python-list mailing list