[maemo-developers] [maemo-developers] The future of the Application installer

From: Riku Voipio rvoipio+maemo at movial.fi
Date: Tue Nov 8 12:36:39 EET 2005
On Monday 07 November 2005 18:35, Marius Vollmer wrote:
> "ext Koen Kooi" <koen at handhelds.org> writes:
> > I like the idea of extra software being in /var/lib/install so it can't
> > mess up the rootfs is something goes wrongs.

> Hmm.  That is something I have been thinking about, but it would
> require changes to the way dpkg etc work, no?

Isn't that the entire point of free software? :)

> The cleanest way to get this would probably be to add an option to
> dpkg that would make it perform the unpacking and configuring of
> packages as a specified user (instead of as root).  I think I would
> still have it update the package database as root since anything else
> seems to require too big changes.

In an ideal world, most applications would be installed with minimal 
privileges, but there is a possibility of installing applications requiring 
more privileges (like vpn applications or device drivers for add-on 
hardware).

Also, I find it quite important that software compilation process does not 
need to be changed much. Currently you have to configure with 
--prefix=/var/lib/install and then in debian/rules move the files back around 
to /. 

One way of making this possible would be installing normal apps 
to /var/lib/install, privileged apps in /var/lib/install-trusted, and make an 
unionfs[1] of these and /. Probably to somewhere else than /, so that stock 
applications don't get broken if applications install for example a broken 
gtk. 

So in the end we would have in fstab something like:

none /union/lib  
dirs=/lib=ro, /var/lib/install-trusted/lib=ro,/var/lib/install/lib=rw
none /union/usr  
dirs=/usr=ro, /var/lib/install-trusted/usr=ro,/var/lib/install/usr=rw
...

and all user application are run as "chroot /union userapp", where chrooting 
is automatically done by tasknavigator. 

unionfs with one leaf being user-writable however has some security 
implications, so the whole thing needs carefull review.  However, the 
possibility of having the cake (of safe app installation) and eating it (of 
almost unmodified debs) it seems worth it.

Cheers,
Riku

[1] http://www.fsl.cs.sunysb.edu/project-unionfs.html

More information about the maemo-developers mailing list