[olpc-software] Package manager stuff

Jim Gettys jg at laptop.org
Wed Mar 15 00:42:57 UTC 2006


On Tue, 2006-03-14 at 18:53 +0000, Mike Hearn wrote:
> Oh, another potential advantage, better power consumption.
> 
> RPM and other package managers are very resource intensive. On my
> computer they use lots of memory, and trigger lots of disk activity as
> they swap and move files around, update databases, regenerate caches and
> so on.


Somehow, we never perceived this problem on the iPAQ with ipkg. And
installing software is an occasional activity.  Maybe other package
managers are a pig; certainly some of my experiences with RPM on systems
with everything installed left me with a bad taste in my mouth, though
it smelled like out and out bugs.  But it doesn't have to be this way,
and my bad experience with RPM is when I've installed *everything* RH
shipp.

The work is proportional to the number of packages installed (primarily)
or in repositories (where you need the index data on the local system)..
We certainly won't have 5 gig of software installed, nor do we need to
support repositories with the 18,000 packages that Debian does.

If you want to see the number of packages in Familiar, where we use
ipkg, see http://familiar.handhelds.org/releases/v0.8.2/feed/
This is for two user environments, GPE (GTK+/X based), and Opie (QT
embedded based).

You will note many, many small packages: this again is to save space on
flash; we typically spit out just about all kernel modules and drivers
into separate packages.

> 
> Done right, merging in an application should be very lightweight: no
> copying of files, no updating of databases, no memory overhead. Just
> namespace manipulation.
> 

Look, I'm a fan of Plan 9 ideas in general, and composable name spaces
in general; (I see from your mail address you are too).  In fact, union
mounts are only one piece of the problem.  In the Linux context, not all
the facilities are fully present (yet); as Alan says, in Linux, we ain't
yet to prime time on Union mounts.

In fact, it isn't union mounts that are most interesting: it is
composable name spaces (see) http://cm.bell-labs.com/sys/doc/names.html.

IIRC, these have been slipped into Linux, though most people don't know
it is present, nor has anyone exploited this fact.  Try going that
direction rather than pressing Union mounts....  As Alan says, there be
dragons lurking there.

But no matter how hard you try, it doesn't solve the problem of knowing
what your application/content depends on, unless you claim everything
any set of software or content is always put in the same directory.  I
don't believe we have enough flash for that to succeed.  So whatever you
call it, package system or not, it is this dependency information that
is key.

				- Jim

-- 
Jim Gettys
One Laptop Per Child





More information about the olpc-software mailing list