Our primary concern at this stage is deployment for Windows users.
There's two things we have to do:
- Package a standalone Python program which can be run without requiring third party libraries to be installed
- Guide the user through Installation on their machine.
Packaging
- Py2Exe - proven tool for packaging a standalone Python program for Windows
- python win-setup.py py2exe
- Py2App - tool for packaging a standalone Python program for Mac OSX
- cx_Freeze - an alternative which might be worth looking at
Building
- A-A-P is a Python-based tool for downloading, building, and installing software written by Bram Moolenaar. It uses a collection of recipes, which can specify dependencies and build commands.
- SCons is also Python-based and came out of the Software Carpentry competition a few years ago. It also aims to be a cross-platform super make.
- sugar-jhbuild is a single custom Python script you download and it is smart enough to download/build all of the other software you need to build the Sugar Python environment for the One Laptop Per Child (OLPC). We could make a similar custom, cross-platform script for eXe.
Installation
- Windows Installer Authoring Tools for Developers
- InstallShield - widely used commercial tool for creating Windows installers - I (David) hate it, but it is one way to get a nice pretty MSI for Windows
- Wise Installer - another commercial installer tool, not so widely used, but from my experience is easy to use
- Visual Studio apparantly includes a reasonable installer tool
- NSIS - Nullsoft Scriptable Install System, not clear if it generates MSI files?
- IZFree - Free installer tools, still requires a lot of work to use
- InstallBase - another one
- Microsoft Installer SDK
- MaSaI - freeware/commercial by Waiheke Island hackers
- Installer2Go - freeware/commercial
- CornerHouse - another one