To read all comments associated with this story, please click here.
True. And it's quite annoying that API and ABI is constantly broken. ABI breakage can be fixed through recompiling and/or relinking. API breakage is much worse.
I've played a lot with LFS, BLFS and recently CLFS (and CBLFS) in an attempt to create a multi-tier distribution, but it's painful to maintain. Of course, with me deviating a lot from the Linus FSH, it's kind of my own fault.
I've tried applying different package management systems, but neither .deb nor .rpm seem to be adequate, and attempting to use Slapt-get creates a dependency on a rather old tar-package. I like the latter approach though, since the extended slackware format is less obnoxius than .deb or .rpm.
This is the way it should be done, for a desktop distro, and Red Hat and the RHEL clones do this already, except in a very extreme way.
The kernel is locked to a version, and RH backports improvements to keep the API/ABI stable. I haven't paided attention to the toolchain as much, but I believe they follow a similar philosophy. Applications get updated with patches and revisions, but maybe not version numbers. Once again, I haven't looked at the applications that closely.
What you could do is use the RHEL kernel and toolchain as a base, and create a repo which provides source built software. Maybe have something like pacman and yaourt like Arch LInux has.
Edited 2010-11-26 17:38 UTC




I really like the idea.

Member since:
2005-10-02
This is a sensible approach AFAICT - and very close to my idea of a multi-tier distribution.
1) Stay rock-solid in regard to the toolchain (GCC, glibc, binutils and such) - updates every 18 months, except for critical bugfixes and security issues
2) 6 or 12 months update cycle for lower level libraries above the toolchain (the kernel (not part of the toolchain), GTK+/QT, WebKit and such) - of course with the usual quick releases when fixing critical bugs and/or security vulnerabilities
3) End user applications and libraries specific to these applications (bygfoot, firefox, libreoffice, chromium, epiphany blahblahblah) can be updated at will.
Another option is to make sure that API and ABI are not broken when releasing new versions. In this regard the *BSD's tend to be much ahead of GNU/Linux.