DNF5-DO(8) dnf5 DNF5-DO(8)

dnf5-do - Do Command

dnf5 do [options] [arguments]

The do command is a universal command for package management in DNF5. It allows a user to define multiple actions (install, remove, upgrade, downgrade, and reinstall).

Unlike a series of specific commands (install, remove, upgrade, downgrade, and reinstall), the do command handles all requested actions together and performs them in a single transaction. This simplifies complex operations and makes them more efficient.

Another difference is that the do command allows for the explicit specification of object types in the transaction: package, group, or auto. For the group type, it is possible to specify whether a group ID or a group name is used. By default, the auto type is active. In this mode, the do command behaves like other commands, inferring the object's type from its specification. For example, if a specification starts with the @ character, it is treated as a group ID or a module.

Individual actions and object types are specified by options and are combinable.

Other options have the same meaning and use as with the commands (install, remove, upgrade, downgrade, and reinstall). The exceptions are the --installed-from-repo and --from-repo options. While they have the same meaning, they only apply to the packages that follow them on the command line. Additionally, they can be repeated with different values.

Action to be done on the following items.

This is a mandatory option that must precede the transaction's items (objects). The do command needs this information to know which action to perform on the specified items. Supports: install, remove, upgrade, downgrade, reinstall.

Type of the following items.

Supports: auto, package, group. auto is the default until the type option is used.

Allow removing of installed packages to resolve any potential dependency problems.
Resolve any dependency problems by removing packages that are causing problems from the transaction.
Allow skipping packages that are not available in repositories. All available packages will be installed.
Enable downgrade of dependencies when resolving the requested operation.
Disable downgrade of dependencies when resolving the requested operation.
Filters installed packages by the ID of the repository they were installed from.
Packages (or their provides) explicitly specified on the command line will only be looked up in the specified repositories.
These repositories are automatically enabled.
Repository enabling and disabling still applies. Dependencies of these packages will be resolved from any enabled repository.
Download the resolved package set without executing an RPM transaction.
Store the transaction to be performed offline. See dnf5-offline(8), Offline command <#offline-command-ref-label>.
Include content contained in advisories with specified name.
This is a list option.
Expected values are advisory IDs, e.g. FEDORA-2201-123.
Any transaction command (install, upgrade) will fail with an error if there is no existing advisory in the list; this can be bypassed by using the --skip-unavailable switch.
Include content contained in advisories with specified severity.
This is a list option.
Accepted values are: critical, important, moderate, low, none.
Include content contained in advisories that fix a ticket of the given Bugzilla ID.
This is a list option.
Expected values are numeric IDs, e.g. 123123.
Any transaction command (install, upgrade) will fail with an error if there is no advisory fixing the given ticket; this can be bypassed by using the --skip-unavailable switch.
Include content contained in advisories that fix a ticket of the given CVE (Common Vulnerabilities and Exposures) ID.
This is a list option.
Expected values are string IDs in CVE format, e.g. CVE-2201-0123.
Any transaction command (install, upgrade) will fail with an error if there is no advisory fixing the given ticket; this can be bypassed by using the --skip-unavailable switch.
Include content contained in security advisories.
Include content contained in bugfix advisories.
Include content contained in enhancement advisories.
Include content contained in newpackage advisories.

Install the tito package.
Replace package sddm-wayland-plasma with sddm-x11.
Install the office group (by ID), the Games and Entertainment group (by name), and the iftop package, and remove the atop package.
Install the pkg package from any enabled repository, as well as package pkg1 from the myrepo1 repository and package pkg2 from the myrepo2 repository. Dependencies for these packages are installed from any enabled repository. Additionally, remove all packages installed from the compromised_repo.

dnf5-install(8), Install command <#install-command-ref-label>
dnf5-remove(8), Remove command <#remove-command-ref-label>
dnf5-upgrade(8), Upgrade command <#upgrade-command-ref-label>
dnf5-downgrade(8), Downgrade command <#downgrade-command-ref-label>
dnf5-reinstall(8), Reinstall command <#reinstall-command-ref-label>
dnf5-advisory(8), Advisory command <#advisory-command-ref-label>
dnf5-specs(7), Patterns specification <#specs-misc-ref-label>

See AUTHORS.md in dnf5 source distribution.

Contributors to the dnf5 project.

November 20, 2025