Linked by Tom5 on Tue 24th May 2011 21:13 UTC
Linux Zero Install, the decentralised cross-distribution software installation system, announced 0install 1.0 today, after 8 years in development. 0install allows software developers to publish programs directly from their own web-sites, while supporting features familiar from centralised distribution repositories such as shared libraries, automatic updates and digital signatures. It complements, rather than replaces, the OS's package management. As well as allowing developers to create a single package that works across Linux, BSDs, Mac OS X and Windows, it could help make software available on more minor platforms. OSNews covered decentralised installation systems in 2007.
Thread beginning with comment 474696
To view parent comment, click here.
To read all comments associated with this story, please click here.
Tom5
Member since:
2005-09-17

One interesting thing is that when you "install" a program, you're actually creating a launcher that runs 0launch. For example, to add a shell command "rox" to run ROX-Filer, you can do:

$ 0alias rox http://rox.sourceforge.net/2005/interfaces/ROX-Filer

That creates a script (e.g. ~/bin/rox):

#!/bin/sh
exec 0launch http://rox.sourceforge.net/2005/interfaces/ROX-Filer "$@"

0launch doesn't care whether the program is installed or not. It selects the best version of ROX-Filer, checks the cache, and downloads anything that's missing. So, I can take my little ~/bin directory to another machine and all my programs are available (installed lazily the first time I run them). And that works even if I move from e.g. a 64-bit system to a 32-bit one, or from Linux to FreeBSD.

(note: that doesn't mean it uses the network every time you run "rox"... if everything needed is already cached then it runs immediately)

Of course, you can also take the cache (~/.cache/0install.net) with you if you have more space or a slower network, or a shared network home directory. You can share a single cache between different architectures without problems. e.g. ROX-Filer would be downloaded again if you moved from Linux to FreeBSD because it's a C program (Linux and FreeBSD binaries would coexist in the cache), but Python programs would be shared automatically.

Edited 2011-05-26 12:38 UTC

Reply Parent Score: 1

jabbotts Member since:
2007-09-06

Hm.. add in a usb that that becomes a very nice portable system to keep in your packet along side your portableapps usb for windows systems.

Reply Parent Score: 2