From Fedora Project Wiki

< Tools

Revision as of 11:17, 23 July 2020 by Augenauf (talk | contribs) (Added note that information here is outdated.)

This page is outdated and needs to be rewritten
See [1].

APT and Fedora

apt-get is the automatic dependency resolver originally used by Debian . It works over dpkg in a similar way to how DNF, YUM, smart or up2date use RPM. It is used to install packages and their dependencies automatically. It has been ported to use RPM and rpmlib by Conectiva and has been made available for Fedora. It is currently maintained at by Panu Matilainen from Red Hat who is also the primary developer and maintainer of RPM.

Is APT-RPM available?

The Fedora repository includes APT-RPM. APT-RPM supports both the native APT metadata format, as well as the repomd metadata format dnf|yum uses.

APT-RPM can be used "out of the box" after the apt package is installed from the repository.

Why isn't APT-RPM being used in Fedora by default?

When Fedora had to decide on a default package manager for FC1 the following reasons existed:

  • APT-RPM lacked multilib support, that were required for the upcoming x86_64 architecture to be officially supported in FC2. In early 2006 APT-RPM officially added multilib support, but at the time the decision had to be made there was no such support.
  • APT-RPM is a large and complex C++ project, while dnf|yum was written using Python in much less lines of code making it easier for the Fedora Project to review, maintain and enhance. This is still a valid issue.

Later on some more reasons added to APT-RPM not being suitable as a default package manager.

  • By the beginning of 2005 APT-RPM wasn't being actively maintained (although that wasn't evident at the time the decision on the default package manager had to be made) - the primary developer started working on a new package manager called smart . In early 2006 APT-RPM development was picked up again, adding critical features like multilib and repomd.
  • Dnf is replacement of Yum from Fedora 22. Yum was an easier replacement to up2date as they both are written in Python and use the same RPM bindings. (Yum 3.0 uses C for the metadata parser). Dnf also has the ability use Core DNF Plugins and Extras DNF Plugins for easier prototyping and optional support for things like RHN; APT-RPM plugins are written in the Lua programming language .
  • DNF also supports installation or removal of entire package groups via dnf group install command.
  • Yum also supports installation or removal of entire package groups via yum groupinstall command.
  • Later DNF was used as a backend for other critical Fedora parts like anaconda and cannot be replaced now easily. APT-RPM is available in the Fedora repository and can be used side by side with other dependency resolvers like dnf, yum and smart.