Stable tag will be slipped Sunday and release engineering will begin Monday

Rahul Siddharthan rsidd at
Tue Apr 5 03:22:52 PDT 2005

Joerg Sonnenberger wrote:
>On Tue, Apr 05, 2005 at 03:50:03AM +0000, Rahul Siddharthan wrote:
>> So one either needs binary packages (apt downloads and
>> signature-verifies *all* needed updates before installing them) or
>> needs a mechanism that builds packages for *all* updates before
>> installing them (as I said, I think that exists for pkgsrc).

Hm, I'm not sure it's exactly what I mean, but now that I think about
it, what I mean is rather hard to do with source packages.

Suppose you want to install package A, which requires upgrading
package B, which requires upgrading package C.  Upgrading C will break
D and E so those too need to be upgraded.

In these circumstances, I want that:
1. All four packages B, C, D, E should be upgraded.
2. If any one of these cannot be upgraded, nothing should be done at all.

If I can download binary packages for A, B, C, D, E, this is easy
to ensure.  The trouble with a source-based system is that
building a package for B or D may require that the upgraded C be
installed already.  But if I install an upgraded C without having
already built packages for the rest, I risk breaking them.

I think pkg_comp (the add-on to pkgsrc that I refer to above) works 
around this, using nullfs.
It looks interesting. Also, the fact that pkgsrc/pkg_views can allow
different versions of C to coexist permits me to install an
upgraded version without breaking anything.  This is not possible
with FreeBSD's ports last time I checked, but I saw something about a
"compat" directory where old libraries are moved in the above
scripts, so maybe it is possible now to upgrade C without breaking
other stuff.


More information about the Kernel mailing list