Description

Provide a package named dnf (which contains locales, systemd units, and unversioned symlinks for python3-dnf) for Fedora 41 and later* (where the dnf package is no longer used, and the dnf5 package Provides: dnf instead).

This is just a quick fix; a full solution might involve dnf-the-package behaving more like python-unversioned-command, where it alone owns the /usr/bin/dnf symlink, instead of the dnf5 package taking over that role as it does now. This would permit simultaneous installation of both versions while allowing /usr/bin/dnf to point to DNF4.

*not actually enabled for F42 or rawhide yet, since I haven't checked to see if they changed anything that would break this

Installation Instructions

As root:

dnf install dnf4 'dnf-command(copr)' # if not already installed dnf5 clean all && dnf4 clean all # clear out any leftover (somewhat mutually incompatible) cache data dnf4 copr enable skirmisher/dnf4-restore-unversioned-package dnf4 install --allowerasing dnf.noarch # removes dnf5 (and maybe others, see below)

Note that it's necessary to specify dnf.noarch (or any NEVRA subset more precise than N) in the install command. Specifying dnf alone will result in the solver selecting the dnf5 package, which makes the transaction a no-op.

Only a handful of packages In the Fedora (41) repos depend specifically on DNF5 at present (correctly or not), but if any are installed on your system, installing the dnf package will downgrade or remove them. On my F41 system, rpmdistro-repoquery was installed as a weak dep of the fedora-packager metapackage; installing dnf downgraded rpmdistro-repoquery to the version available in the fedora repo, which only Requires: dnf instead of dnf5.

Active Releases

The following unofficial repositories are provided as-is by owner of this project. Contact the owner directly for bugs or issues (IE: not bugzilla).

Release Architectures Repo Download
Fedora 41 aarch64 (0)*, ppc64le (0)*, s390x (0)*, x86_64 (2)* Fedora 41 (5 downloads)

* Total number of downloaded packages.


Quick Enable

#> dnf copr enable skirmisher/dnf4-restore-unversioned-package
More info about enabling Copr repositories

Other Actions