Return to Fedora Linux


Snippet from Wikipedia: DNF

DNF may refer to:

Short description: RPM package manager

name = Dandified Yum

developer = Red Hat


DNF or Dandified YUM<ref name=“DNF-Wiki”>

</ref><ref name=“DNF-FAQ”>

</ref><ref name=“ReadMe”>

</ref> is the next-generation version of the Yellowdog Updater, Modified (yum), a package manager for .rpm-based distributions. DNF was introduced in Fedora 18 in 2013,<ref name=“DNF-Fedora”>

</ref> it has been the default package manager since Fedora 22 in 2015<ref name=“F22_released”>

</ref> and Red Hat Enterprise Linux 8.<ref name=“RHEL8news”>


Perceived deficiencies of yum (which DNF is intended to address) include poor performance, high memory usage, and the slowness of its iterative dependency resolution.<ref name=“lwn580223”>

</ref> DNF uses libsolv, an external dependency resolver.<ref name=“lwn580223”/>

DNF performs package management tasks on top of RPM, and supporting libraries.

DNF was originally written in Python, but

efforts are under way to port it to C and move most functionality from Python code into the new libdnf library.<ref name=“libdnfinitiative”>

</ref> libdnf is already used by PackageKit, a Linux distribution-agnostic package system abstraction library, even though the library does not have most of DNF's features.<ref name=“packagekitlibdnf”>



DNF has been the default package manager for Fedora since version 22, which was released in May 2015.<ref name=“F22_released”/> The libdnf library is used as a package backend in PackageKit.<ref name=“packagekitlibdnf”/> DNF has also been available as an alternate package manager for Mageia Linux since version 6 and may become the default sometime in the future.<ref name=“PhoronixMageia”>




  • high-level API for DNF and underlying libraries


  • a free package dependency solver using a satisfiability algorithm
  • for solving packages and reading repositories
  • C


  • a library providing C and Python (libcURL like) API for downloading Linux repository metadata and packages
  • C
  • LGPLv2+


  • libcomps is an alternative for yum.comps library, written in pure C, and has bindings for Python
  • C


dnf.txt · Last modified: 2021/09/18 22:39 by Cloud Monk Losang Jinpa PhD MCSE/MCT Python-DevOps

Page Tools