[gobolinux-users] Source repositories and other suggestions

Michael Homer gobo-users-dufus at wotfun.com
Wed Nov 29 01:31:38 UTC 2006

On 11/29/06, Martin Baldan <martinobal at gmail.com> wrote:
> On 11/29/06, Michael Homer <gobo-users-dufus at wotfun.com> wrote:
> > So you're envisaging a system where you have to re-run SymlinkProgram,
> > for every installed program, every time you run or compile something?
> > I don't see how else you can effect this (on Linux; Plan9 and possibly
> > Hurd could do it).
> No, I'm just proposing additional verifications ("tested compatibility"
> requirements) at compile time, and a lightweight daemon that regularly
> checks for updates in the "tested compatibilities" information, and informs
> the user when an upgrade is recommended. Just a little overhead at compile
> time and no overhead at runtime (plus the small overhead of the daemon).
If different programs need different specific versions, you're going
to have to re-SymlinkProgram them every time you run them. If they
don't, there wasn't a problem to start with.

> > On another (i.e. non-Gobo) system, /usr/lib/libpangocairo-1.0.so.0
> > would just be overwritten with a new symlink to
> > libpangocairo-1.0.so.0.1302.0 when you installed this version. There
> > should be guaranteed compatibility for all versions holding that
> > symlink; if not, it's the library that's broken and it needs to be
> > fixed. Libraries with the same name should hold ABI compatibility.
> They should, but do they always do? From a user point of view, I think it's
> important that, once you check that a program works, you know its libraries
> won't be replaced by other supposedly compatible libraries without your
> consent. Gobolinux lets you keep old libraries along with new ones. I want
> it lo leverage this fact. In the worst case, if the user always says "no" to
> upgrades, this could lead to a system having too many versions of each
> library. To avoid this, you can trust your upgrades to the upgrade manager,
> who would upgrade apps on its own, but only based on information about real
> tests, performed by users and uploaded automatically to an online database,
> not based on assumptions, as it's currently done.
Wait, you want to install libraries, but not actually use them for
anything? What's the point? I'm more puzzled now than before.

Gobolinux doesn't let you keep old versions around that have the same
soname. Or rather, it does, but they will have no effect, since no
program will use them. If they have different sonames, there wasn't a
problem to begin with.

If you want to wait a while after a new (compatible) version of a
library comes out, you don't install it. When you do, you can get rid
of the old one, because it's not being used any more.

This sort of system would be possible (desirable, I still think is
questionable, and only barely possible in complex cases) on something
like Plan9 that lets you provide wholly different filesystems to
different processes. It's not really possible otherwise.

More information about the gobolinux-users mailing list