Well said. I was making a broad generalisation and I did say "for the most part". The exceptions and caveats you have rightly elucidated below.

Cheers

Jason

Jim Cheetham wrote:
On Fri, Apr 04, 2003 at 08:02:56AM +1200, Jason wrote:

Chris, with all due respect, you are wrong IMHO. URPMI works GREAT and I have yet had it to fail for me...
...
BTW, there are basically 3 ways to install software in Linux, APT, RPM and from Source. All have their benefits but with modern packaging systems dependency hell is a thing of the past for the most part.


Dependancy hell is still present in all software distribution methods.
ALL of them ...

The only way to avoid dependancy problems is to only use packages from a
single coherent authority. The moment you try to mix-and-match (which is
very common, because whatever package authority you use, will have
different goals and interests to yourself) you open yoursef up to
dependancy problems.

The moment you have anything on your system that did not arrive through
your packaging system, problems start to brew.

This has nothing to do with the actual packaging system in use, be it
RPM, apt, or anything. It's a function of how closely you follow the
updates from your central authority.

Now, rpm has been criticised in the past, because a package could tell
you that it had unsatisfied dependancies, but had no way of telling you
how to satify them. I understand that this has been largely addressed
with the systhesis list feature.

Debian's packaging system had a better knowledge of the "whole world",
and such apparently unresolveable dependancies were much rarer. BSD
ports is also much more tightly controlled, and less likely to fail.
Gentoo seems to have it's packages in order, too ... as does Fink for
OSX.

However, all of them will cause problems if you don't update often
enough. Eventually a package version will come out that needs an update
to a core package - one that either you don't feel like downloading,
because it's too big, or you don't want to install, because it will
require downtime/reboot, or other large-scale changes to your system. At
that point in time, you begin to diverge from the central authority,
because your goals are different from theirs :-)

A couple of examples - I have a FreeBSD server that has a version of NTP
thats got a security vulnerability. The fix is a newer version, but
that's only been issued for the 'current' version of FreeBSD, not the
one I'm running. Either I upgrade my whole OS, which involves downtime
on the server, or I do without the ntp package. Planning to upgrade the
OS takes a lot of time, it will happen "eventually". In the meantime, I
have removed the vulnerable NTP package.
(To be fair, BSDs are often set up to download and build everything, but
they don't actually install anything until you ask for it ... which is
similar to having a binary distribution, at one level)

On my Mac, I'm running X and many useful programs, but it's on the end
of a slow dialup link. I've installed The GIMP, so I have all the GTK
libraries. I'd like to use Konqueror, but I haven't yet got any of the
KDE libraries, and they're huge. So I won't install Konqueror, because I
don't want to spend n hours of my life handholding the modem through the
required downloads.

So, if you're happy with the choice of packages your central authority
pumps out, you have the bandwidth to download them all, and you don't
mind occasional downtime while installing them ... then you're probably
running a workstation on an office LAN. In which case, you'll probably
be completely happy with urpmi :-) and Mandrake ...

-jim






Reply via email to