On Thu, 2003-08-07 at 16:22, Paul Iadonisi wrote:
As these tools go, yum is probably the better choice. At least
according to the yum developer, apt re-implements a lot of stuff that
rpm is already doing and there is likely a lot of Debian cruft in the
code. (I'm not slighting Debian, btw, it's just that from the
perspective of an rpm based system, much of the code could be considered
cruft.) There's also the fact that most (all?) of Red Hat's config
tools are written in python, so you can be fairly certain that the
rpm-python bindings are being well maintained (yum is written in
python).
Well I'm the yum developer and you'll note I made an addendum to my
reasons for not using apt-get on the yum webpage. I can no longer claim
they are reimplementing a lot of things. Though some of it is still the
case.
I'll also note my reason for putting that list up there was to get
people to stop telling me to just use apt. I have nothing against apt,
I've talked with a number of apt developers and they are very bright and
have a working program.
But from what I can tell, there is a problem with all of the tools
that allow you specify multiple repositories. And it's the reason I
won't use things like Ximian's (Novell's?) Desktop, even though it's
cool. And that is that different versions of a specific package may be
provided from multiple repositories. I know of no tools that, say,
allow you to specify that if a package exists in repository #1, then
never take any version of the package from repositories #2 - #5. Though
it might be a lot more work, I should even be able specify that if a
package from my lower priority repositories have any files that conflict
with any files from any packages in my highest priority repository, then
don't take that package from those lower priority repositories. Or at
least not without making lots of noises about possible later conflicts
with core distribution components.
This concept is commonly called pinning - it is available in apt but it
is 1. underdocumented and 2. not trivial for the complex cases or simple
cases.
We've fleshed out some options for doing this in yum and it will be
something I'll be working on for 2.5 and above.
But I should definitely be able to do this at the package level so
I
could, for example, be able to specify a list of packages (Gnome and
company) to get only from the Ximian repository and never get them from
the Red Hat repository.
The tricky part is that it is very easy to get your system fairly
seriously hosed if you mix-and-match a bit too much. Just b/c everything
resolves correctly in rpm-land doesn't mean it's necessarily all
correct.
-sv