1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

DNF: The New Package Manager Of Fedora 18

Fedora

Published on 22 June 2012 09:35 AM EDT
Written by Michael Larabel in Fedora
8 Comments

As mentioned earlier this week, Fedora 18 will feature a new package manager. Here's a redux with some additional information on DNF.

As covered in the original article, the Fedora Engineering & Steering Committee approved "DNF" for Fedora 18. DNF is the new package manager for Fedora 18 that's forked from Yum 3.4. Yum will continue to be the default package management solution for Fedora 18, but DNF will live alongside the "Yellowdog Updater, Modified" as a new experimental solution.

DNF is built atop Hawkey, which is a new package management library that in turn is built on libsolv for its back-end. The new API is said to be better unified, provides fewer restrictions on the client implementation language, and should yield long-term performance improvements. The API, however, isn't yet stable and is more proof-of-concept. DNF development goals include using a SAT solver for dependency resolution, support to eventually use the same SAT solver as DNF within the RPM command, strict API definitions for plug-ins, strict API definitions for extending projects, a leander code-base than Yum, easier maintenance, and better performance while on a smaller memory footprint.

With Fedora 18 the new package manager will be exposed by the dnf command, but it's widely speculated that once stable DNF will eventually be merged into Yum (or replaced) and then succeeds the yum command. Until then they can live independently together should the new DNF solution go awry.

This new route with DNF was chosen over using ZIF or SUSE's zypp because the new solution can provide a sane API with some Yum backwards compatibility, DNF/Hawkey are working towards using the same resolver across the entire stack (with RPM), and the libsolv back-end is well-tested and proven code-base.

Earlier this week there were concerns about DNF since it was to drop Yum's history sub-command support, but since then it's been said the feature will be restored since it's still widely sought after by developers using Yum.

For some additional background on DNF, Ales Kozumplik of Red Hat wrote on the mailing list:
Be assured I am in contact with Yum developers and the new features happening for F18 there are planned to be integrated to DNF.

The decision to fork yum into using libsolv instead of trying to evolve it slowly was a difficult one yet it was the right one. Unified depsolving is only a part of the project, the other primary goal is arriving at concrete, cleaned up API for external applications and plugins. This is very hard to get done without having free hands to refactor, remove, cleanup and change for better testability because in Yum one always has to look behind his back for tricky backward compatibility issues.

I think the best way to describe the "DNF" project really is as "the next-gen yum". Departing from the old APIs is a part of it. There are little alternatives also: the gradual deprecation of some of the Yum's legacy interfaces hasn't been very successful in the past. Or I could keep DNF under the lid for another one or two Fedora releases, but I find it a better alternative to package this early version: both for those Fedora users who will bravely try it (and hopefully report feedback) and the community members who might join the effort.
Another concern that's been raised is that the Yum developers that DNF developers have been communicating with have primarily been the developers internal to Red Hat rather than the community contributors.

On the Fedora Wiki is a bulk of the DNF package manager information as it pertains to Fedora's implementation in the near-term.

Over at GitHub is more information like a glance at their initial plug-in API, Yum features being considered for dropping, etc.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. MSI X99S SLI PLUS On Linux
  2. NVIDIA GeForce GTX 970 Offers Great Linux Performance
  3. CompuLab Intense-PC2: An Excellent, Fanless, Mini PC Powered By Intel's i7 Haswell
  4. From The Atom 330 To Haswell ULT: Intel Linux Performance Benchmarks
Latest Linux Articles
  1. Open-Source Radeon 2D Performance Is Better With Ubuntu 14.10
  2. RunAbove: A POWER8 Compute Cloud With Offerings Up To 176 Threads
  3. 6-Way Ubuntu 14.10 Linux Desktop Benchmarks
  4. Ubuntu 14.10 XMir System Compositor Benchmarks
Latest Linux News
  1. Dead Island GOTY Now Available On Linux/SteamOS
  2. Ubuntu 14.04 In The Power8 Cloud From RunAbove
  3. KDE With Theoretical Client-Side Decorations, Windows 10 Influence
  4. Sandusky Lee: Great Cabinets For Storing All Your Computer Gear
  5. Fedora 21 Beta & Final Release Slip Further
  6. Mesa 10.3.2 Has A Couple Bug-Fixes
  7. RadeonSI/R600g HyperZ Support Gets Turned Back On
  8. openSUSE Factory & Tumbleweed Are Merging
  9. More Fedora Delays: Fedora 21 Beta Slips
  10. Mono Brings C# To The Unreal Engine 4
Latest Forum Discussions
  1. Looking for a Open-Source AMD experienced Linux mentor
  2. Users/Developers Threatening Fork Of Debian GNU/Linux
  3. Updated and Optimized Ubuntu Free Graphics Drivers
  4. HOPE: The Ease Of Python With The Speed Of C++
  5. Use Ubuntu MATE 14.10 Make it an official distro.
  6. Debian Is Back To Discussing Init Systems, Freedom of Choice
  7. AMD Radeon VDPAU Video Performance With Gallium3D
  8. Ubuntu 16.04 Might Be The Distribution's Last 32-Bit Release