|
|
Log in / Subscribe / Register

0install 1.0 released

From:  Thomas Leonard <talex5-AT-gmail.com>
To:  pr-AT-lwn.net
Subject:  0install 1.0 - the antidote to app-stores
Date:  Mon, 23 May 2011 16:26:04 +0100
Message-ID:  <BANLkTi=oVbgAgHbndos38kRNAQj9NQVRSg@mail.gmail.com>

0install 1.0 - the antidote to app-stores

Zero Install is a decentralised cross-distribution software
installation system available under the LGPL. It 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 is intended to complement, rather than replace, the
operating system's package management. 0install packages never
interfere with those provided by the distribution.

0install does not define a new packaging format; unmodified tarballs
or zip archives can be used. Instead, it defines an XML metadata
format to describe these packages and the dependencies between them. A
single metadata file can be used on multiple platforms (e.g. Ubuntu,
Debian, Fedora, FreeBSD, Mac OS X and Windows), assuming binary or
source archives are available that work on those systems.

0install also has some interesting features not often found in
traditional package managers. For example, while it will share
libraries whenever possible, it can always install multiple versions
of a package in parallel when there are conflicting requirements.
Installation is always side-effect-free (each package is unpacked to
its own directory and will not touch shared directories such as
/usr/bin), making it ideal for use with sandboxing technologies and
virtualisation.

The XML file describing the program's requirements can also be
included in a source-code repository, allowing full dependency
handling for unreleased developer versions. For example, a user can
clone a Git repository and build and test the program, automatically
downloading newer versions of libraries where necessary, without
interfering with the versions of those libraries installed by their
distribution, which continue to be used for other software.

Started in 2003, 0install is developed by volunteers from around the
world; contributors include Aleksey Lim, Anders F Björklund, Bastian
Eicher, Frank Richter, Mark Seaborn, Michel Alexandre Salim, Rene
Lopez, Thomas Leonard, Tim Cuthbertson and Tim Diels.

Hundreds of packages are currently available and a tutorial on the
web-site shows how to publish your own programs.

http://0install.net




to post comments

Great idea

Posted May 27, 2011 6:34 UTC (Fri) by Cato (guest, #7643) [Link] (2 responses)

This sounds like a great idea - the convenience of the Windows world where you download a .exe or .msi and it installs without hassles, and the developer can create one installable package for all Windows versions, yet some of the attributes of the Linux package management world with automatic updates, dependency management, etc.

I find myself using tarballs quite a lot for browsers, specific development tools/libraries, and Flash - so a widespread use of 0install would be a good thing. It would make it easier for people to use a standard distro without having to compile packages, which in the case of some OCaml packages can be a non-trivial exercise.

not really, unfortunately

Posted Jun 13, 2011 12:34 UTC (Mon) by gvy (guest, #11981) [Link] (1 responses)

"without hassles" is a lil' bit exaggerated when tawkin' of Windows world -- they tend to sweep hassles under the carpet for you to discover it later (and hopefully attribute to someone else's fault). Gobolinux folks seem to fail to understand whom they follow...

"so a widespread use of 0install would be a good thing" -- well, I have eczema, but widespread use of corticosteroids wouldn't be a good thing either. It's just another form of things going wrong, and just another band-aid which brings another problems after solving (rather working around) those which are "apparent".

Consider 0installing something requiring libabc.so.2 which is provided by system at that time, and then doing a system-wide upgrade with all the package managed software moving to libabc.so.3 (and no notion of anything else requiring older soname -- which would require some form of cooperation between 0install and existing system package management). It's not apparent a problem to those who would do the upgrades by reinstalling a newer distro version but that makes me cringe.

not really, unfortunately

Posted Jun 17, 2011 12:24 UTC (Fri) by talex (guest, #19139) [Link]

Consider 0installing something requiring libabc.so.2 which is provided by system at that time, and then doing a system-wide upgrade with all the package managed software moving to libabc.so.3 (and no notion of anything else requiring older soname -- which would require some form of cooperation between 0install and existing system package management).

What happens in that case is this:

Next time you run one of the 0install programs that depends on the older libabc, a box pops up prompting you to download either the older version of the library, or a newer version of the program that works with the new library. Either way, the new software is added to the 0install cache and everything continues working, and without disturbing any distribution packages.

The alternative, that software installed through 0install can prevent distribution packages from being upgraded, would be much less desirable in my opinion.


Copyright © 2011, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds