The Zero Install system

Dr Thomas Leonard [ contact | GPG public key | blog | donations ]

The Zero Install Injector

NameZero Install Injector
MaintainerThomas Leonard
LicenseGNU Lesser General Public License
SCMGIT repository

The injector (0launch) is a small Python program. You ask it to run a program by giving it the program's full name (a web address). The injector does not need to be installed or run as root. It does not write to any shared directories (like /usr/bin or /usr/lib). It stores downloads in a cache directory so that you don't need to download anything twice, and programs can still be used when you are off-line.

Packages

RPMs

Experimental binary and source RPMs: More up-to-date RPMs are available for some systems through the SUSE build service. Please test these and report back (DO NOT install the -test packages). Note that the Mandriva package doesn't work on 2007.1 without a minor fix.

Debs
Other

If an injector package for your distribution is listed above, install that and then try using it! Otherwise, follow the instructions below to install using the generic tarball.

Installing from tarball

To use the injector, you will need:

Download the latest .tar.bz2 archive from the download page (and the corresponding .sig file if you want to verify it), or using wget:

$ wget http://osdn.dl.sourceforge.net/sourceforge/zero-install/zeroinstall-injector-0.33.tar.bz2
$ wget http://osdn.dl.sourceforge.net/sourceforge/zero-install/zeroinstall-injector-0.33.tar.bz2.sig

Check that the signature is correct using GPG (this also ensures that GPG is installed correctly). You'll need my GPG key, which you can download and import using --recv-key (or manually):

$ gpg --recv-key --keyserver www.keyserver.net 59A53CC1
$ gpg zeroinstall-injector-0.33.tar.bz2.sig
gpg: Signature made Sun 04 May 2008 14:12:24 BST using DSA key ID 59A53CC1
gpg: Good signature from "Thomas Leonard <XXXXX@gmail.com>"
gpg: Good signature from "Thomas Leonard <XXXXX@users.sourceforge.net>"
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: 9242 9807 C985 3C07 44A6  8B9A AE07 8280 59A5 3CC1

The warning is just to tell you that you haven't yet established that the key really belongs to me (ultra-paranoid users will now cross-check the finger-print using some other source of information).

You should now extract the archive, and change directory inside it:

$ tar xjf zeroinstall-injector-0.33.tar.bz2
$ cd zeroinstall-injector-0.33
Installing normallyInstalling without root access

For a normal install, either su to root, install, and exit from root, or use sudo:

$ sudo python setup.py install

If you don't have the root password, use this command. You'll need to make sure that ~/bin is in $PATH, and ~/lib/python is in $PYTHONPATH in this case.

$ python setup.py install --home ~
$ export PATH=$HOME/bin:$PATH
$ export PYTHONPATH=$HOME/lib/python
error: invalid Python installation: unable to open /usr/lib/python2.3/config/Makefile
You need to install the python-dev package, not just python.
package init file 'zeroinstall/0launch-gui/__init__.py' not found (or not a regular file)
This is just a warning and is harmless.

You now have two new commands: 0launch, which takes the URL of a program and runs it, and 0alias, which lets you use short names instead of URLs.