.\" Man page generated from reStructuredText .\" by the Docutils 0.22.3 manpage writer. . . .nr rst2man-indent-level 0 . .de1 rstReportMargin \\$1 \\n[an-margin] level \\n[rst2man-indent-level] level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] - \\n[rst2man-indent0] \\n[rst2man-indent1] \\n[rst2man-indent2] .. .de1 INDENT .\" .rstReportMargin pre: . RS \\$1 . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] . nr rst2man-indent-level +1 .\" .rstReportMargin post: .. .de UNINDENT . RE .\" indent \\n[an-margin] .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] .nr rst2man-indent-level -1 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .in \\n[rst2man-indent\\n[rst2man-indent-level]]u .. .TH "DNF5-DO" "8" "Nov 20, 2025" "" "dnf5" .SH NAME dnf5-do \- Do Command .SH SYNOPSIS .sp \fBdnf5 do [options] [arguments]\fP .SH DESCRIPTION .sp The \fBdo\fP command is a universal command for package management in DNF5. It allows a user to define multiple actions (\fBinstall\fP, \fBremove\fP, \fBupgrade\fP, \fBdowngrade\fP, and \fBreinstall\fP). .sp Unlike a series of specific commands (\fBinstall\fP, \fBremove\fP, \fBupgrade\fP, \fBdowngrade\fP, and \fBreinstall\fP), the \fBdo\fP command handles all requested actions together and performs them in a single transaction. This simplifies complex operations and makes them more efficient. .sp Another difference is that the \fBdo\fP command allows for the explicit specification of object types in the transaction: \fBpackage\fP, \fBgroup\fP, or \fBauto\fP\&. For the \fBgroup\fP type, it is possible to specify whether a group ID or a group name is used. By default, the \fBauto\fP type is active. In this mode, the \fBdo\fP command behaves like other commands, inferring the object\(aqs type from its specification. For example, if a specification starts with the \fB@\fP character, it is treated as a group ID or a module. .sp Individual actions and object types are specified by options and are combinable. .sp Other options have the same meaning and use as with the commands (\fBinstall\fP, \fBremove\fP, \fBupgrade\fP, \fBdowngrade\fP, and \fBreinstall\fP). The exceptions are the \fB\-\-installed\-from\-repo\fP and \fB\-\-from\-repo\fP 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. .SH OPTIONS .INDENT 0.0 .TP .B \fB\-\-action\fP .nf Action to be done on the following items. .fi .sp .sp This is a mandatory option that must precede the transaction\(aqs items (objects). The do command needs this information to know which action to perform on the specified items. Supports: \fBinstall\fP, \fBremove\fP, \fBupgrade\fP, \fBdowngrade\fP, \fBreinstall\fP\&. .TP .B \fB\-\-type\fP .nf Type of the following items. .fi .sp .sp Supports: \fBauto\fP, \fBpackage\fP, \fBgroup\fP\&. \fBauto\fP is the default until the \fBtype\fP option is used. .TP .B \fB\-\-allowerasing\fP .nf Allow removing of installed packages to resolve any potential dependency problems. .fi .sp .TP .B \fB\-\-skip\-broken\fP .nf Resolve any dependency problems by removing packages that are causing problems from the transaction. .fi .sp .TP .B \fB\-\-skip\-unavailable\fP .nf Allow skipping packages that are not available in repositories. All available packages will be installed. .fi .sp .TP .B \fB\-\-allow\-downgrade\fP .nf Enable downgrade of dependencies when resolving the requested operation. .fi .sp .TP .B \fB\-\-no\-allow\-downgrade\fP .nf Disable downgrade of dependencies when resolving the requested operation. .fi .sp .UNINDENT .INDENT 0.0 .TP .B \fB\-\-installed\-from\-repo=REPO_ID,...\fP .nf Filters installed packages by the ID of the repository they were installed from. .fi .sp .UNINDENT .INDENT 0.0 .TP .B \fB\-\-from\-repo=REPO_ID,...\fP .nf 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. .fi .sp .UNINDENT .INDENT 0.0 .TP .B \fB\-\-downloadonly\fP .nf Download the resolved package set without executing an RPM transaction. .fi .sp .TP .B \fB\-\-offline\fP .nf Store the transaction to be performed offline. See \fBdnf5\-offline(8)\fP, Offline command \%<#\:offline-command-ref-label>\&. .fi .sp .UNINDENT .INDENT 0.0 .TP .B \fB\-\-advisories=ADVISORY_NAME,...\fP .nf Include content contained in advisories with specified name. This is a list option. Expected values are advisory IDs, e.g. \fIFEDORA\-2201\-123\fP\&. 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. .fi .sp .UNINDENT .INDENT 0.0 .TP .B \fB\-\-advisory\-severities=ADVISORY_SEVERITY,...\fP .nf Include content contained in advisories with specified severity. This is a list option. Accepted values are: \fIcritical\fP, \fIimportant\fP, \fImoderate\fP, \fIlow\fP, \fInone\fP\&. .fi .sp .UNINDENT .INDENT 0.0 .TP .B \fB\-\-bzs=BUGZILLA_ID,...\fP .nf 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. \fI123123\fP\&. 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. .fi .sp .UNINDENT .INDENT 0.0 .TP .B \fB\-\-cves=CVE_ID,...\fP .nf 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. \fICVE\-2201\-0123\fP\&. 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. .fi .sp .UNINDENT .INDENT 0.0 .TP .B \fB\-\-security\fP .nf Include content contained in security advisories. .fi .sp .UNINDENT .INDENT 0.0 .TP .B \fB\-\-bugfix\fP .nf Include content contained in bugfix advisories. .fi .sp .UNINDENT .INDENT 0.0 .TP .B \fB\-\-enhancement\fP .nf Include content contained in enhancement advisories. .fi .sp .UNINDENT .INDENT 0.0 .TP .B \fB\-\-newpackage\fP .nf Include content contained in newpackage advisories. .fi .sp .UNINDENT .SH EXAMPLES .INDENT 0.0 .TP .B \fBdnf5 do \-\-action=install tito\fP Install the \fBtito\fP package. .TP .B \fBdnf5 do \-\-action=remove sddm\-wayland\-plasma \-\-action=install sddm\-x11\fP Replace package \fBsddm\-wayland\-plasma\fP with \fBsddm\-x11\fP\&. .TP .B \fBdnf5 do \-\-action=install \-\-type=group id=office \(aqname=Games and Entertainment\(aq \-\-type=package iftop \-\-action=remove atop\fP Install the \fBoffice\fP group (by ID), the \fBGames and Entertainment\fP group (by name), and the \fBiftop\fP package, and remove the \fBatop\fP package. .TP .B \fBdnf5 do \-\-action=install pkg \-\-from\-repo=myrepo1 pkg1 \-\-from\-repo=myrepo2 pkg2 \-\-action=remove \-\-installed\-from\-repo=compromised_repo \(aq*\(aq\fP Install the \fBpkg\fP package from any enabled repository, as well as package \fBpkg1\fP from the \fBmyrepo1\fP repository and package \fBpkg2\fP from the \fBmyrepo2\fP repository. Dependencies for these packages are installed from any enabled repository. Additionally, remove all packages installed from the \fBcompromised_repo\fP\&. .UNINDENT .SH SEE ALSO .INDENT 0.0 .INDENT 3.5 .nf \fBdnf5\-install(8)\fP, Install command \%<#\:install-command-ref-label> \fBdnf5\-remove(8)\fP, Remove command \%<#\:remove-command-ref-label> \fBdnf5\-upgrade(8)\fP, Upgrade command \%<#\:upgrade-command-ref-label> \fBdnf5\-downgrade(8)\fP, Downgrade command \%<#\:downgrade-command-ref-label> \fBdnf5\-reinstall(8)\fP, Reinstall command \%<#\:reinstall-command-ref-label> \fBdnf5\-advisory(8)\fP, Advisory command \%<#\:advisory-command-ref-label> \fBdnf5\-specs(7)\fP, Patterns specification \%<#\:specs-misc-ref-label> .fi .sp .UNINDENT .UNINDENT .SH Author See AUTHORS.md in dnf5 source distribution. .SH Copyright Contributors to the dnf5 project. .\" End of generated man page.