Monday, December 14, 2015

What is DNF?


DNF stands for Dandified yum. Since DNF is a tech preview in Fedora 18 the Python module names can not be 'yum.*' as that would clash with yum itself.
Why not zif/zypp?

People are asking why we didn't choose to adopt zif (or SUSE's zypp) instead of fixing yum. The reasons are:

    dnf looks for a middle ground between a sane API and some backwards compatibility.
    dnf and hawkey are first steps toward using the same resolver across the entire stack.
    Libsolv is a well tested and proven code base, currently the most sophisticated and optimized dependency solving implementation.

Benefit to Fedora

Hawkey clients will get:

    easier bindings to other languages than Python
    concise, clear package management API
    better performance (through utilizing libsolv)

The set of possible hawkey API consumers:

    dnf (the next generation yum)
    release engineering tools
    graphical package management tools

DNF clients and users will get:

    Faster and simpler package manager.
    Simplified client code.