Do you wonder why you don’t have yum package installed on the Fedora 22 clean installation and why you get warnings when calling /usr/bin/yum executable or any yum-util plugin about deprecation of Yum? You see right, Yum is gone. Literally. And DNF is the new default Fedora package manager.
DNF is fork of Yum with the state-of-art SAT-based dependency solver and was supposed to replace Yum in Fedora 22. Now with the release of DNF version 1.0 it is the time to fulfill this destiny. This radical change was inevitable. Yum would not survive the “Python 3 as default” Fedora initiative meanwhile DNF is able to run on Python 2 and Python 3. Command line interface was preserved when it made logical sense of command semantic. Fortunately DNF Python API is completely different from Yum. All known incompatibilities between these two projects are documented. In Fedora 22 Core is DNF only and Yum is officially considered dead project. If anyone wants to download Yum she or he can. The package is still called the same and Python API remains for the time being. Just the yum executable file was renamed to yum-deprecated, and yum calls from command line are redirected to DNF. This way you can maintain both Yum and DNF on the system at the same time.
The reason of initiating DNF project was because of the biggest three pitfalls of Yum: undocumented API, broken dependency solving algorithm and inability to refactor internal functions. The last mentioned issue is connected with the lack of documentation. Yum plugins are using any method from Yum code base thus any change there would cause the sudden crash of the Yum utility. The DNF aim was to avoid mistakes made in Yum. From the start all exposed API functions were properly documented. The tests were included with almost every new commit. No quick and dirty hacks are allowed. The project is directed by agile development – the features that have the greatest impact on users are operatively implemented with higher priority.
Nowadays DNF team is working on porting the rest of popular plugins from Yum to DNF and improving the user experience. To make the switch for you a little easier we have implemented DNF migration plugin for importing installed packages, groups and transaction metadata from Yum to the new Fedora package manager. Happy transition and enjoy the DNF ride!
Jan Silhan, by DNF team
The DNF 1.0 version was released, being considered as stable and ready to be the main command line package manager in Fedora 22 and later. Along with a many bug fixes, the DNF stack release adds HTTP authentication support, enhances repoquery and builddep plugin and more. For more information look at release notes of DNF and DNF-PLUGINS-CORE.
DNF-PLUGINS-EXTRAS version 0.0.7 provides a few bugfixes, dnf-plugin-extras metapackage (all plugins) has been dropped due to confusion of users and orphans plugin was renamed to leaves.
Since last blog post of 0.0.3 release debug and migrate plugin was implemented. More on project release notes.
Good news, everyone. New version of DNF and DNF-PLUGINS-CORE was built for F22 and F23. The documentation of yum and DNF differences was extended by yum plugin alternatives part and erase command was deprecated in favor of remove command name. DNF is getting more and more stable with 20 bug fixes while DNF-PLUGINS-CORE 0.1.6 newly adds Config manager.
With regard to packaging changes, DNF is running on Python 3 from F23 and dnf-yum compatible subpackage does not conflict with yum anymore. Read more on release notes of DNF and plugins.
The newest version of DNF and Hawkey arrived into EPEL7 repositories. Enjoy.
New version of DNF and DNF-PLUGINS-CORE is available for F21 and F22. The update fixes over 25 bugs, exposes more API and enhances plugin options. Read more in release notes of DNF and plugins.
DNF-PLUGINS-EXTRAS version 0.0.3 provides some bugfixes and new plugins: local, repograph and repoclosure.
More on project release notes.
DNF-PLUGINS-EXTRAS version 0.0.2 provides some bugfixes and new plugins: repomanage, rpmconf and tracer.
More on project release notes.
We would like to invite you to DNF API hackfest session at DevConf which will be held on Sunday, February 8 at 10:40. The session is especially for the ones whose application is currently using yum/yum-utils and need to change the backend to DNF or for anyone who tries to write DNF plugin from scratch. You will have great opportunity to ask DNF developers for technical help.
See you there.
Your DNF team
Today we have started new project
dnf-plugins-extras where could be hosted any external DNF plugin with any dependencies.
We will add this package to Fedora soon. Then you can request new plugin and report a bug in RedHat Bugzilla. Sure, pull requests are welcomed to integrate any utilities with DNF!
At this moment snapper plugin is available in the repository. It creates snapshots every transaction via snapper daemon, which is powerful tool to manage snapshots.
Q: Why just not to add community plugins to core plugins?
A: We want to keep the core plugins minimal.