[buug] cockroaches and kernel build

Rick Moen rick at linuxmafia.com
Thu Aug 8 16:36:34 PDT 2002


Quoting Mark Hedges (hedges at ucsd.edu):

> Anyone know of any plans for apt-get on OpenBSD?

I see that Nick beat me to it.  And he's the perfect person to address 
other parts of this topic (a point I'll return to later), but I'll 
have a shot at those, instead:


Since the conversation has lamentably turned serious, I should stress
that what makes Debian work isn't really apt-get, but rather the
application of Debian Policy.  Since I've had this conversation before,
please pardon the FAQ reference:
http://linuxmafia.com/~rick/linux-info/debian-policy

Because of that consistent, enforced content policy, it's literally true
(not just an aspiration) that you need only install Debian on a host
once, and never need install new versions:  New "releases" are just new
starting points with improved starting hardware support, and have no
relevance to already-running systems.  Instead of big version jumps (and
downtime) at ~6 month intervals when new distribution "versions" come
out, a Debian system's admin just resynchronises it occasionally to
current versions of his installed packages on the Debian package
mirrors, which receive package revisions (from the 1000+ package
maintainers) on an ongoing basis.

E.g., every week or so (or at times of my choosing), I might do:

# apt-get update        # Fetch new package catalogues from pkg. sources.
# apt-get dist-upgrade  # Upgrade all installed software to newest
                        # versions indicated, if necessary fetching
                        # new packages to meet dependencies.

One specifies a set of "package sources" in /etc/apt/sources.list .
Typically, one has elected to "track" (as we say) one of three Debian
development tracks:

o  "stable" = highly conservative versions, somewhat behind the times
o  "unstable" = bleeding edge devel track; access to new packages as uploaded
o  "testing" = "unstable" with automated quarantining for quality control

Admins of desktop systems and most servers would generally be happiest
with "testing".  Most of the time, "stable" of necessity is too
trailing-edge and deprives you of access to goodies, and the "unstable"
track can make your system go drastically wrong because, e.g., the libc
or perl package maintainer made a ghastly error that he hadn't yet fixed
when you did your apt-get run.


_Anyhow_, my point is that just trying to graft apt-get (or imitate its
feature set) on an existing *ix without a radical overhaul of its
contents and development model is cargo-cult programming:  It doesn't
work as intended.  (Read my comments about Conectiva at the indicated 
URL, for more about that.)  Attempting such a graft gives you
Linux-Mandrake's urpmi, Red Hat's up2date/RHN, and so on -- half a loaf,
better than nothing.

Debian's package distribution is primarily binary-oriented.
Auto-building from Debianised source tarballs _is_ there, but not as well
developed.  Joey Hess is working on a full-blown Debian source-oriented
extension of the Debian framework.  (I can't find references on that at
the moment.)

The fact that you noticed the software toolchains on Debian working
properly is no accident:  Toolsets are essential to Debian, and much
effort goes into ensuring that problems get ironed out so that _any_
reasonable Debian system can build its packages without fragile
configuration requirements.

Completely source-oriented Linux distributions include Gentoo, Source
Mage, and Lunar Linux.  Nick Moffitt's newly developed GAR framework,
now being extensively used in the LNX-BBC project, is shaping up into 
the foundation of a full-blown source-oriented Linux distribution, and
should look familiar to those who've studied the BSD ports system -- but
much cleaner.

Please see:  http://www.linuxjournal.com/article.php?sid=5819

-- 
Cheers,                Emacs is a good operating system, but I prefer Linux.
Rick Moen
rick at linuxmafia.com



More information about the buug mailing list