DNF5-INSTALL(8)
π DNF5-INSTALL(8) π
okay bestie, this is the dnf5-install page from the dnf5 manual, and honestly? it's kind of a banger. let's get into it. π«Ά
β¨ NAME β¨
dnf5-install β the Install Command. that's it, that's the whole name. iconic. π
β¨ SYNOPSIS β¨
dnf5 install [options]
<package-spec-NPFB>|@<group-spec>|@<environment-spec>...
so likeβ¦ dnf5 install plus some options, plus a whole lil pile of things you can name β packages (in the package-spec-NPFB flavor), or groups with an @, or environments with an @. you can pass a bunch of them. go off. π
β¨ DESCRIPTION β¨
The install command in DNF5 is literally for installing packages, groups or environments. that's the whole vibe. π
When you're installing packages that got defined in package-spec-NPFB arguments, DNF5 makes sure the packages and their dependencies land on the system. but β plot twist β if the packages you named are already installed, DNF5 does not go re-check their dependencies again. it just quietly verifies that the packages themselves are present. lowkey efficient, no cap.
When a package-spec-NPFB is given that specifies the exact version of the package, DNF will install that desired version, no matter which version of the package is already installed. the former version of the package gets removed in the case of a non-installonly package. it's giving "out with the old". π
On the other hand, if package-spec-NPFB specifies only a name and obsoletes are enabled, DNF also takes into account packages obsoleting that name. heads up though β this can lead to seemingly unexpected results if the version of an installed package is obsoleted and the installed package also has a newer version available. it creates a split in upgrade-path and both ways are considered correct β the resulting package is picked simply by lexicographical order. so like, it's not a bug, it's just alphabetically chaotic. π
When installing groups defined in group-spec arguments, DNF5 makes sure that the groups and their packages are installed on the system. it installs only group packages matching the configured package type. see dnf5.conf(5), group_package_types <#group-package-types-options-label>. π
When installing environments defined in environment-spec arguments, DNF5 makes sure that the environments and their groups are installed on the system. environments are the group of groups. main character energy. π
β¨ OPTIONS β¨
--allowerasingβ allow removing of installed packages to resolve any potential dependency problems. yes bestie, sacrifices must be made. π--skip-brokenβ resolve any dependency problems by removing packages that are causing problems from the transaction. bye felicia. π--skip-unavailableβ allow skipping packages that are not available in repositories. all available packages will be installed.--allow-downgradeβ enable downgrade of dependencies when resolving the requested operation. going backwards, but on purpose. π¦--no-allow-downgradeβ disable downgrade of dependencies when resolving the requested operation. no going backwards actually.--from-repo=REPO_ID,...β 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. so the packages themselves are picky, but their friends are not. π--from-vendor=VENDOR,...β list of vendors separated by commas or spaces. globs are supported (e.g.,--from-vendor='Fedora\ project, vendorA, vendorB*, vendorC'). packages (or their provides) explicitly specified on the command line will only be looked up from the specified vendors. the vendor change check is bypassed for these packages. the vendor is ignored or vendor change policies (ifallow_vendor_change=0) will still be used for packages that satisfy dependencies. π·οΈ--downloadonlyβ download the resolved package set without executing an RPM transaction. look but don't touch. π--offlineβ store the transaction to be performed offline. see offline command <#offline-command-ref-label>,dnf5-offline(8).--transientβ applicable only on bootc (bootable containers) systems. perform transactions using a transient overlay which will be lost on the next reboot. see also the persistence <#persistence-options-label> configuration option. it's giving "this outfit doesn't survive the night". π--store=PATHβ store the current transaction in a directory at the specifiedPATHinstead of running it. the stored transaction can be performed by the replay command <#replay-command-ref-label>,dnf5-replay(8). note that repository ids in the stored transaction are mangled to@stored_transaction(repo_id)β this is required because during replaying the stored repositories are recreated and they might collide with already present repositories (this doesn't apply to the special@Systemrepository). π¦--advisories=ADVISORY_NAME,...β 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-unavailableswitch. π¨--advisory-severities=ADVISORY_SEVERITY,...β include content contained in advisories with specified severity. this is a list option. accepted values are:critical,important,moderate,low,none.--bzs=BUGZILLA_ID,...β 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-unavailableswitch. π--cves=CVE_ID,...β 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-unavailableswitch. π₯--securityβ include content contained in security advisories. π--bugfixβ include content contained in bugfix advisories. π§--enhancementβ include content contained in enhancement advisories. β¨--newpackageβ include content contained in newpackage advisories. π
β¨ EXAMPLES β¨
okay bestie, show-and-tell time, these are verbatim:
dnf5 install tito
install the tito package. simple. clean. slay. π
dnf5 install ~/Downloads/tito-0.6.21-1.fc36.noarch.rpm
install the local rpm file from the given location. yes, you can just point it at a file, obsessed. π
dnf5 install tito-0.6.21-1.fc36
install the tito package in defined version. if the package is already installed, it will automatically try to downgrade or upgrade to the given version. decisive. π
dnf5 install --advisory=FEDORA-2022-07aa56297a \*
install all the packages that belong to theFEDORA-2022-07aa56297aadvisory. the\*is doing a lot of heavy lifting there, respect. β
β¨ SEE ALSO β¨
dnf5-advisory(8), Advisory command <#advisory-command-ref-label>dnf5-specs(7), Patterns specification <#specs-misc-ref-label>
go read those too, they're part of the lore. π§
β¨ Author β¨
See AUTHORS.md in dnf5 source distribution. π«Ά
β¨ Copyright β¨
Contributors to the dnf5 project. π
and that's a wrap on the dnf5 manual, bestie β this page is from the dnf5 source, dated Sep 24, 2026. no cap, you're now officially an install expert. periodt. πβ¨
π¦ where this page comes from
- fedora 44: dnf5 5.4.6.0-1.fc44 Β· GPL-2.0-or-later
- fedora 44: dnf5 5.4.6.0-1.fc44 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms