= Proposed System Wide Change: Replace Yum With DNF =
Note: This is Fedora 22 proposal!
Change owner(s): Aleš Kozumplík <kozumplik(a)gmail.com>
Make DNF/Yum4 the new default packaging tool in F22.
== Detailed Description ==
DNF was forked from Yum in January 2012 and available for experimenting in
Fedora since release 18 . The project is now fully capable of replacing Yum
in new Fedora installations. We want DNF to become the new default packaging
tool in Fedora 22. This entails:
* letting system administrators (including users who routinely manage their
packages using the legacy Yum) perform all common packaging operations using
DNF, with no or minimal and documented  change to the command syntax, apart
from replacing the command name. (done)
* providing implementation of Anaconda backend so system can be bootstrapped
completely without using legacy Yum. (done)
* providing alternative to all Yum plugins from yum-utils (ongoing)
* providing alternative to all release engineering tools (repoquery, bodhi
etc.) from yum-utils (ongoing)
* being ready/having the capacity to help out users with migration of their
custom legacy plugins and extensions to DNF. The solid API documentation 
we provide is of great advantage here. (ongoing)
In practice, the change implies:
* Anaconda installs the system using the DNF backend (with no special
* package 'dnf' is installed by default (referenced by the base comps groups)
* package 'dnf-yum-compat-command' is installed by default. It obsoletes Yum
and provides its own <code>/usr/bin/yum</code>, a short script that redirects
to <code>/usr/bin/dnf</code> with an appropriate warning message that DNF is
the preferred package manager now. Notice that upgrading F21 to F22 will not
cause the compat package to be installed so will not disturb any upgrading
== Scope ==
This change will be completely transparent for users that use only the
graphical package management tools. For anybody using the command line
directly there will be some differences, but all the important operations are
available with DNF, using the same CLI syntax.
* Proposal owners: The majority of tasks on this change are completed. Some
plugins and API calls still need to be added. The Anaconda payload
implementation needs more testing, Fedora Test Day for this is pending.
* Other developers: We provide the paylaod implementation for Anaconda
developers. Developers of other extensions and developers of plugins that are
not part of yum-utils will have to update their code.
* Release engineering: Release engineering tools that are internal to the
releng teams and not part of yum-utils will need modifications to migrate to
the DNF API.
* Policies and guidelines: None at the moment.