I was wondering why fedora has choosen yum over apt-get
Warren Togami
wtogami at redhat.com
Tue Feb 10 21:01:17 UTC 2004
Kristof Vansant wrote:
> k but I still don't understand why with yum everything goes slower then with
> apt-get.
> Has apt-get better mirror support or something?
yum actually has better mirror and fail-over support than apt today.
> My friend has a big apt-get sources list and yum list. Apt-get had his
> sources list in 2 minutes. Yum was still loading header files after half an
> hour.
Could be DNS related issues. Also, if it is a HTTP server make sure
KeepAlive is enabled on the server side or it will suck.
> I can understand his frustration. What's the cause in this big speed
> difference?
>
Aside from header download, yum of today is extremely slow at
calculating dependencies. One often quoted benchmark is 10 seconds apt
vs. 50 minutes yum for calculating the dependencies in a large
transaction like upgrading from RH9 to FC1 on a 400MHz P2 system.
Seth Vidal mentioned that this situation should dramatically improve in
the future with the new XML based metadata. Far fewer files are
downloaded for headers, meaning more efficient data compression and
faster header downloading. And something about the new design means yum
will be able to calculate deps much faster than it does today.
As for reasons why Red Hat Linux/Fedora does not yet have apt-get today:
1) Missing multilib support like yum or up2date currently has today.
This is a medium priority that I probably need to force myself to work
on because nobody else seems interested in working on this. This makes
me think... does not Debian have dual 32bit/64bit archs? How do they
handle multilib if their apt doesn't support it yet either?
2) XML metadata needs to be implemented. Panu Matilainen mentioned that
he is working on this. This will allow apt to use the same mirrors that
yum, up2date and possibly other tools (Ximian?) that support the new
metadata.
3) Concern that apt is redundant to the other clients, and maintaining
it would be cost/time prohibitive.
Aside from the speed advantages, I personally see apt as my personal
favorite for several other reasons:
1) Installation of specified non-repository packages and calculated
dependencies.
2) Automated SRPM source building, walking the dependency tree
(currently problematic due to flaws in the SRPMS themselves, and perhaps
some remaining apt bugs).
3) Removal of entire trees with dependencies.
4) Optional external PM and great flexibility in configuration, allowing
a wide array of needed buildsystem functionality for tools like
mach/djinni. Enrico Scholz and Panu Matilainencan explain this in
greater detail.
5) Extremely well maintained codebase with multiple distributions active
in its maintenance. They keep up with the latest versions of rpm
religiously.
apt is an important tool for me to eventually have in Fedora, but for
now I am content to use and maintain it at fedora.us for FC1 and prior
distributions. fedora.us mirrors for FC1 and earlier have the entire
distribution, all updates, updates-testing, plus stable/testing/unstable
Extras trees.
http://www.fedora.us/wiki/FedoraHOWTO
Get started using fedora.us quickly by following these instructions.
Use either apt, yum or up2date.
https://bugzilla.fedora.us/show_bug.cgi?id=1180
The next release of apt, with Panu Matilainen's proof of concept
optional dynamic menu based mirror chooser. Try this!
Warren Togami
wtogami at redhat.com
More information about the fedora-devel-list
mailing list