We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

DNF5: the new era in RPM software management

Formal Metadata

Title
DNF5: the new era in RPM software management
Subtitle
How we rewrote the codebase and started loving the community
Title of Series
Number of Parts
542
Author
License
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
Package managers are essential tools in any Linux system, designed to install, upgrade, remove, and manage software. For several years, Fedora had YUM, which became DNF eleven years ago. Now, DNF5 will replace DNF and be the new Fedora standard. In this talk, we will give an introduction to DNF5. We aim to address our new design principles and how our choices fix some of DNF's design flaws. We will present a live demo of the new product to showcase some features of DNF5 and make comparisons with DNF. Lastly, we will cover our plan to improve communication, inclusion, and openness with the open-source community. It is public knowledge that the DNF codebase became cluttered and, at times, substandard, cutting off a large slice of the open-source community from participating in the development process and decision-making process. Likewise, historical design decisions held DNF back from evolving into a modern and sustainable package manager. We want to answer how certain design issues were addressed, and why the structure of DNF5 impacts environments such as the desktop, containers, and CI. Moreover, we will go over the user experience of our command-line interface in the live demonstration, with some examples of common use cases and a speed comparison of processing commands between DNF and DNF5. Lastly, we will discuss how DNF5 enables us to work closer with the community. A thoroughly documented codebase, transparent upstream issue tracking, and open feature planning and delivery are all requirements that we intend to fulfill. Our target audience is people with some degree of expertise in package management or who are proficient using DNF.