Voidspace

Movable Python: The Portable Python Distribution

Movable Python - Python on a Stick

An Introduction

Python on a Stick
Author:Michael Foord
Contact:fuzzyman@voidspace.org.uk
Version:2.0.0
Date:2007/01/17
License:Movable Python License
Homepage:Movable Python Homepage
Download:Download Movable Python
Support:Movable Python Mailing List

Introduction

Multifeatured Movable Python

emoticon:python Movable Python is a distribution of Python, for Windows, that doesn't need to be installed. It easily fits onto a USB memory stick or flash drive. Python on a stick [1]. Smile

It is integrated with the Pythonwin IDE, to make Movable Python a portable Build, Test, and Run environment. It has a nice GUI to launch programs and control its behaviour. At last you can carry a full development environment around with you.

Movable Python is useful in the following situations:

  • Machines where you can't install programs.
  • Creating a 'clean' installation of Python for testing programs.
  • Where you need a portable 'Build, Test, and Run' Python environment.
  • Having several versions of Python on the same machine for forward / backward compatibility testing. (See the Mega-Pack.)
  • Easily deploying Python scripts without having to install Python.
  • Try before you buy - test Python without having to install it, including new versions .
  • 'Python Runtime Environment'. '.py' files can be associated with movpy.

Note

If you like Movable Python, don't forget to check out the other Voidspace Python Projects.

Purchasing

Movable Python is commercial software. The cost is very low. Educational and site licenses are also available.

Distributions can be downloaded from the Movable Python Shop.

If you want to try out Movable Python, there is a free trial version for Python 2.3.5 available for download from the shop.

Every distribution comes with full support, and free upgrades for a year. See Support and Compatibility, or just join the Mailing List.

Purchasing Movable Python supports the development of all the Voidspace Open Source Projects; like pythonutils and rest2web.

Pirating or illegally distributing Movable Python harms the Open Source software that it supports.

Usage

Movable Python distributions come as a single zip file. For more details on the contents of this zipfile, see the distributions page.

To use, unzip the contents and open the movpy directory. If you doubleclick on movpyw.exe it will bring up the GUI launcher. You can use this to launch scripts, the interpreter or an IDE.

From the command line, you can use movpy.exe and movpyw.exe in the same way as you would use python.exe and ``pythonw.exe. See the page on the command line for more details of the command line options available.

Distributions

The distributions come with the full Python standard library. They also include several tools and add-on libraries.

There are five different distributions available :

  • Python 2.2.3

  • Python 2.3.5

  • Python 2.4.4

  • Python 2.5.0

  • The Mega-Pack

    The Mega Pack has all four versions of Movable Python, preconfigured so that you can launch programs with any of the interpreters. It also comes with IronPython, and a couple of bonus freebies.

Each distribution comes with several popular third party extendion modules, like pywin32, wxPython and PIL (plus lots more). For a full list of all the extension modules included, see the distributions page.

There are also several additonal extension modules (including SPE the Python IDE) packaged esspecially for movable Python. Visit the extendion modules for links to download them.

If you would like to see your favourite extension or tool included in this list, contact me or post suggestions on the Mailing List.

It is easy to add further extension modules to your Movable Python distribution. See Customising Your Distribution.

There is also a portable version of IDLE, called Movable IDLE available for free download. This is built with Python 2.4.3 and comes with the full Python standard library, but lacks a lot of the features of Movable Python.

Custom Distributions

If you would like a custom build of Movable Python, contact me.

Possible reasons for wanting a custom build include :

  • Builds containing particular extension modules.

    For example VPython, SciPy, or SimPy. (Or alternative GUI toolkits).

  • Versions of movpy.exe designed only to run a specific set of programs.

  • Builds to act as a generic executable for a Python application.

    Your main script can still be kept as a Python script without having to recompile with py2exe after making changes.

    This could allow a program to have upgradeable components (including auto-updates) but still be deployed as an executable.

    Updates can use any module in the standard library without having to worry about dependencies.

  • The standard builds don't use bytecode optimisation, or compress the library.zip. This is because some modules (for example doctests) require docstrings, and compressing the library slows it down. Builds with bytecode optimisation or compression can be made available on request.

  • Builds created under Windows 98 may help resolve compatibility issues with some extension modules.

Support and Compatibility

Movable Python is under active development, and will continue to improve. You can see some of the new features that may be added on the TODO Page.

If you purchase Movable Python, you are entitled to free upgrades [2] for one year from the date of purchase.

Technical support is provided via the Mailing List. I respond quickly to bug reports, and will work with you to resolve any issues that arise.

Movable Python contains the full Python interpreter and standard library. This means that it is capable of running any code that normal Python can. For an example of a large and complex program that runs under Movable Python, see SPE the Python editor. Smile

A lot of work has gone into ensuring that programs run with Movable Python run in the same environment as a normal Python program. There are still some very slight differences. See the ISSUES Page for more details on these.

Any problems (programs not running) are likely to be with third party extension modules.

Usually only with:

  • Modules that make registry entries when they are installed.
  • Modules that assume the Python executable name or rely on the directory structure of a normal installation.
  • Modules that attempt to detect when they are running in a frozen environment and behave differently.

These cases are uncommon and usually resolvable.

Please use the Mailing List for:

  • Bug reports
  • Feature requests
  • Suggestions
  • Questions

Movable Python & Windows 98

There is compatibility code with Movable Python, to help it run under Windows 98.

It has not been possible to test this thoroughly, as I no longer have access to a Windows 98 box.

If you have problems, then get in touch and they can almost certainly be fixed.


Footnotes

[1]Python on a stick, get your gannet ripple here. Silly Monty Python reference supplied by John Davenport.
[2]Upgrades are provided within the same Python version as the one(s) you purchase. If you want a different version of Python, that must be purchased separately.

Return to Top
Part of the Movable Python Docs
Page last modified Wed Jan 17 17:26:35 2007.

Buy it Now

Powered by Python

Site Built with rest2web

Hosting for an agile web


Site Built with rest2web

Python on Voidspace