[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: what about APT-RPM?



Bart Whiteley wrote :

> Could you please elaborate on "much cleaner way"?

I could let Seth answer that one :-)
Very quickly summarised, the main problem I see with apt is that it
reimplements quite a lot of dependency algorithms, so it "calculates"
pretty much everything on its own before actually calling the rpm binary in
order to proceed with the changes. OTOH, yum uses calls to rpmlib directly
through the python bindings, so it lets rpm do pretty much everything on
its own... a good thing.

One example could be the very recent change of default behavior regarding
epoch in rpm 4.2.1. I had a package of nmap 2:3.28 and an nmap-frontend
sub-package requiring it, but only as "= 3.28". Before, when no epoch was
present on either side of the comparison, it was ommited, so things worked.
But now, when not present, it's considered as zero, so here it broke since
0 != 2 and it's not ">= 3.28".
Using apt, it calculated everything... thought it would be fine, tried to
upgrade both packages... but when calling the rpm CLI it failed. Using yum,
it gave an error message directly when it was calculating all dependencies
for the upgrade, since it was using the new rpmlib directly.

I guess you get the point :-) But there is good new for apt fans : Panu
made a patch that enables apt to use rpmlib directly, hopefully avoiding
future problems like the above.

I hope I haven't been too unclear!
Matthias

> On Thursday 19 June 2003 01:47 pm, Matthias Saou wrote:
> >
> > You may also want to check out "yum" which does the same helpful basic
> > job in a much cleaner way, but lacks all the "fancy" stuff, including a
> > nice GUI front-end (some day, eh seth!? ;-)).

-- 
Clean custom Red Hat Linux rpm packages : http://freshrpms.net/
Raw Hide 20030616 running Linux kernel 2.4.20-20.1.2013.nptl
Load : 1.12 0.62 0.46




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index] []