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
