1DNF(8)                                DNF                               DNF(8)
2
3
4

NAME

6       dnf - DNF Command Reference
7

SYNOPSIS

9       dnf [options] <command> [<args>...]
10

DESCRIPTION

12       DNF  is  the  next upcoming major version of YUM, a package manager for
13       RPM-based Linux distributions. It roughly maintains  CLI  compatibility
14       with YUM and defines a strict API for extensions and plugins.
15
16       Plugins  can modify or extend features of DNF or provide additional CLI
17       commands on top of those mentioned below. If you know the name of  such
18       a  command  (including  commands mentioned below), you may find/install
19       the package which provides it using the appropriate virtual provide  in
20       the form of dnf-command(<alias>), where <alias> is the name of the com‐
21       mand; e.g.``dnf install 'dnf-command(versionlock)'``  installs  a  ver‐
22       sionlock  plugin. This approach also applies to specifying dependencies
23       of packages that require a particular DNF command.
24
25       Return values:
26
27       · 0  : Operation was successful.
28
29       · 1  : An error occurred, which was handled by dnf.
30
31       · 3  : An unknown unhandled error occurred during operation.
32
33       · 100: See check-update
34
35       · 200: There was a problem with acquiring or releasing of locks.
36
37       Available commands:
38
39       · alias
40
41       · autoremove
42
43       · check
44
45       · check-update
46
47       · clean
48
49       · deplist
50
51       · distro-sync
52
53       · downgrade
54
55       · group
56
57       · help
58
59       · history
60
61       · info
62
63       · install
64
65       · list
66
67       · makecache
68
69       · mark
70
71       · module
72
73       · provides
74
75       · reinstall
76
77       · remove
78
79       · repoinfo
80
81       · repolist
82
83       · repoquery
84
85       · repository-packages
86
87       · search
88
89       · shell
90
91       · swap
92
93       · updateinfo
94
95       · upgrade
96
97       · upgrade-minimal
98
99       Additional information:
100
101       · Options
102
103       · Specifying Packages
104
105       · Specifying Provides
106
107       · Specifying Groups
108
109       · Specifying Transactions
110
111       · Metadata Synchronization
112
113       · Configuration Files Replacement Policy
114
115       · Files
116
117       · See Also
118

OPTIONS

120       -4     Resolve to IPv4 addresses only.
121
122       -6     Resolve to IPv6 addresses only.
123
124       --advisory=<advisory>, --advisories=<advisory>
125              Include  packages  corresponding  to  the   advisory   ID,   Eg.
126              FEDORA-2201-123.  Applicable for the install, repoquery, update‐
127              info and upgrade commands.
128
129       --allowerasing
130              Allow erasing of installed  packages  to  resolve  dependencies.
131              This option could be used as an alternative to the yum swap com‐
132              mand where packages to remove are not explicitly defined.
133
134       --assumeno
135              Automatically answer no for all questions.
136
137       -b, --best
138              Try the best available package versions in transactions. Specif‐
139              ically  during  dnf upgrade, which by default skips over updates
140              that can not be installed for  dependency  reasons,  the  switch
141              forces  DNF  to  only consider the latest packages. When running
142              into packages with broken dependencies, DNF will fail  giving  a
143              reason why the latest version can not be installed.
144
145       --bugfix
146              Include  packages  that  fix  a bugfix issue. Applicable for the
147              install, repoquery, updateinfo and upgrade commands.
148
149       --bz=<bugzilla>, --bzs=<bugzilla>
150              Include packages that fix a Bugzilla ID, Eg. 123123.  Applicable
151              for the install, repoquery, updateinfo and upgrade commands.
152
153       -C, --cacheonly
154              Run  entirely  from system cache, don't update the cache and use
155              it even in case it is expired.
156
157              DNF uses a separate cache for each user under which it executes.
158              The  cache  for  the  root user is called the system cache. This
159              switch allows a regular user  read-only  access  to  the  system
160              cache,  which  usually is more fresh than the user's and thus he
161              does not have to wait for metadata sync.
162
163       --color=<color>
164              Control whether color is used in terminal output.  Valid  values
165              are always, never and auto (default).
166
167       --comment=<comment>
168              Add a comment to the transaction history.
169
170       -c <config file>, --config=<config file>
171              Configuration file location.
172
173       --cve=<cves>, --cves=<cves>
174              Include  packages  that  fix  a  CVE (Common Vulnerabilities and
175              Exposures) ID (http://cve.mitre.org/about/), Eg.  CVE-2201-0123.
176              Applicable  for  the install, repoquery, updateinfo, and upgrade
177              commands.
178
179       -d <debug level>, --debuglevel=<debug level>
180              Debugging output level. This is an integer value between  0  (no
181              additional  information  strings)  and  10  (shows all debugging
182              information, even that not understandable to the user),  default
183              is 2. Deprecated, use -v instead.
184
185       --debugsolver
186              Dump  data  aiding  in dependency solver debugging into ./debug‐
187              data.
188
189       --disableexcludes=[all|main|<repoid>],               --disableexcludep‐
190       kgs=[all|main|<repoid>]
191          Disable  the configuration file excludes. Takes one of the following
192          three options:
193
194          · all, disables all configuration file excludes
195
196          · main, disables excludes defined in the [main] section
197
198          · repoid, disables excludes defined for the given repository
199
200       --disable, --set-disabled
201              Disable specified repositories (automatically saves). The option
202              has   to  be  used  together  with  the  config-manager  command
203              (dnf-plugins-core).
204
205       --disableplugin=<plugin names>
206              Disable the listed plugins specified by names or globs.
207
208       --disablerepo=<repoid>
209              Disable specific repositories by an id or a glob. This option is
210              mutually exclusive with --repo.
211
212       --downloaddir=<path>, --destdir=<path>
213              Redirect  downloaded  packages to provided directory. The option
214              has to be used together with  the  --downloadonly  command  line
215              option, with the download command (dnf-plugins-core) or with the
216              system-upgrade command (dnf-plugins-extras).
217
218       --downloadonly
219              Download the resolved package set  without  performing  any  rpm
220              transaction (install/upgrade/erase).
221
222       -e <error level>, --errorlevel=<error level>
223              Error output level. This is an integer value between 0 (no error
224              output) and 10 (shows all error messages), default is 3.  Depre‐
225              cated, use -v instead.
226
227       --enable, --set-enabled
228              Enable  specified repositories (automatically saves). The option
229              has  to  be  used  together  with  the  config-manager   command
230              (dnf-plugins-core).
231
232       --enableplugin=<plugin names>
233              Enable the listed plugins specified by names or globs.
234
235       --enablerepo=<repoid>
236              Enable additional repositories by an id or a glob.
237
238       --enhancement
239              Include   enhancement  relevant  packages.  Applicable  for  the
240              install, repoquery, updateinfo and upgrade commands.
241
242       -x <package-file-spec>, --exclude=<package-file-spec>
243              Exclude packages specified by <package-file-spec> from the oper‐
244              ation.
245
246       --excludepkgs=<package-file-spec>
247              Deprecated option. It was replaced by the --exclude option.
248
249       --forcearch=<arch>
250              Force the use of an architecture. Any architecture can be speci‐
251              fied.  However, use of an architecture not supported natively by
252              your  CPU  will  require emulation of some kind. This is usually
253              through QEMU. The behavior of --forcearch can be  configured  by
254              using  the arch and ignorearch configuration options with values
255              <arch> and True respectively.
256
257       -h, --help, --help-cmd
258              Show the help.
259
260       --installroot=<path>
261              Specifies an alternative  installroot,  relative  to  where  all
262              packages  will  be  installed.  Think  of this like doing chroot
263              <root> dnf, except using --installroot allows dnf to work before
264              the chroot is created. It requires absolute path.
265
266       · cachedir,  log files, releasever, and gpgkey are taken from or stored
267         in the installroot. Gpgkeys are imported into the installroot from  a
268         path  relative  to  the host which can be specified in the repository
269         section of configuration files.
270
271       · configuration file and reposdir are searched inside  the  installroot
272         first.  If they are not present, they are taken from the host system.
273         Note:  When a path  is  specified  within  a  command  line  argument
274         (--config=<config   file>   in   case   of   configuration  file  and
275         --setopt=reposdir=<reposdir> for reposdir) then this path  is  always
276         relative to the host with no exceptions.
277
278       · vars  are  taken  from  the  host  system or installroot according to
279         reposdir . When reposdir path is  specified  within  a  command  line
280         argument, vars are taken from the installroot. When varsdir paths are
281         specified within a command  line  argument  (--setopt=varsdir=<repos‐
282         dir>)  then those path are always relative to the host with no excep‐
283         tions.
284
285       · The pluginpath and pluginconfpath are relative to the host.
286          Note: You may also want to  use  the  command-line  option  --relea‐
287          sever=<release> when creating the installroot, otherwise the $relea‐
288          sever value is taken from the rpmdb within the installroot (and thus
289          it  is empty at the time of creation and the transaction will fail).
290          If --releasever=/ is used, the releasever will be detected from  the
291          host  (/)  system.  The new installroot path at the time of creation
292          does not contain the repository, releasever and dnf.conf files.
293
294          On a modular system you may  also  want  to  use  the  --setopt=mod‐
295          ule_platform_id=<module_platform_name:stream>   command-line  option
296          when creating  the  installroot,  otherwise  the  module_platform_id
297          value  will  be  taken  from  the  /etc/os-release  file  within the
298          installroot (and thus it will be empty at the time of creation,  the
299          modular dependency could be unsatisfied and modules content could be
300          excluded).
301
302          Installroot examples:
303
304          dnf --installroot=<installroot> --releasever=<release> install  sys‐
305          tem-release
306                 Permanently   sets  the  releasever  of  the  system  in  the
307                 <installroot> directory to <release>.
308
309          dnf  --installroot=<installroot>  --setopt=reposdir=<path>  --config
310          /path/dnf.conf upgrade
311                 Upgrades  packages  inside  the installroot from a repository
312                 described    by    --setopt    using    configuration    from
313                 /path/dnf.conf.
314
315       --newpackage
316              Include   newpackage   relevant  packages.  Applicable  for  the
317              install, repoquery, updateinfo and upgrade commands.
318
319       --noautoremove
320              Disable removal of dependencies that are no longer used. It sets
321              clean_requirements_on_remove configuration option to False.
322
323       --nobest
324              Set  best  option to False, so that transactions are not limited
325              to best candidates only.
326
327       --nodocs
328              Do  not  install  documentation.  Sets  the   rpm   flag   'RPM‐
329              TRANS_FLAG_NODOCS'.
330
331       --nogpgcheck
332              Skip checking GPG signatures on packages (if RPM policy allows).
333
334       --noplugins
335              Disable all plugins.
336
337       --obsoletes
338              This option has an effect on an install/update, it enables dnf's
339              obsoletes processing logic. For more information see  the  obso‐
340              letes option.
341
342              This  option  also  displays capabilities that the package obso‐
343              letes when used together with the repoquery command.
344
345              Configuration Option: obsoletes
346
347       -q, --quiet
348              In combination with a non-interactive command,  shows  just  the
349              relevant  content.  Suppresses messages notifying about the cur‐
350              rent state or actions of DNF.
351
352       -R <minutes>, --randomwait=<minutes>
353              Maximum command wait time.
354
355       --refresh
356              Set metadata as expired before running the command.
357
358       --releasever=<release>
359              Configure DNF as if the distribution release was <release>. This
360              can  affect  cache paths, values in configuration files and mir‐
361              rorlist URLs.
362
363       --repofrompath <repo>,<path/url>
364              Specify a repository to add to the repositories for this  query.
365              This option can be used multiple times.
366
367       · The repository label is specified by <repo>.
368
369       · The  path or url to the repository is specified by <path/url>.  It is
370         the same path as a baseurl and can be also enriched by the repo vari‐
371         ables.
372
373       · The  configuration  for  the  repository  can  be  adjusted  using -‐
374         -setopt=<repo>.<option>=<value>.
375
376       · If you want to view only packages from this repository, combine  this
377         with the --repo=<repo> or --disablerepo="*" switches.
378
379       --repo=<repoid>, --repoid=<repoid>
380              Enable  just  specific  repositories  by an id or a glob. Can be
381              used multiple times with accumulative effect. It is basically  a
382              shortcut  for  --disablerepo="*"  --enablerepo=<repoid>  and  is
383              mutually exclusive with the --disablerepo option.
384
385       --rpmverbosity=<name>
386              RPM debug scriptlet output level. Sets the debug level to <name>
387              for  RPM scriptlets.  For available levels, see the rpmverbosity
388              configuration option.
389
390       --sec-severity=<severity>, --secseverity=<severity>
391              Includes packages that provide a fix for an issue of the  speci‐
392              fied  severity.   Applicable for the install, repoquery, update‐
393              info and upgrade commands.
394
395       --security
396              Includes packages that provide  a  fix  for  a  security  issue.
397              Applicable for the upgrade command.
398
399       --setopt=<option>=<value>
400              Override  a configuration option from the configuration file. To
401              override   configuration   options   for    repositories,    use
402              repoid.option for the <option>. Values for configuration options
403              like excludepkgs, includepkgs, installonlypkgs and  tsflags  are
404              appended  to  the  original value, they do not override it. How‐
405              ever, specifying an empty value  (e.g.  --setopt=tsflags=)  will
406              clear the option.
407
408       --skip-broken
409              Resolve  depsolve problems by removing packages that are causing
410              problems from the transaction.  It is an alias  for  the  strict
411              configuration  option  with value False.  Additionally, with the
412              enable and disable module subcommands it allows one  to  perform
413              an action even in case of broken modular dependencies.
414
415       --showduplicates
416              Show duplicate packages in repositories. Applicable for the list
417              and search commands.
418
419       -v, --verbose
420              Verbose operation, show debug messages.
421
422       --version
423              Show DNF version and exit.
424
425       -y, --assumeyes
426              Automatically answer yes for all questions.
427
428       List options are comma-separated. Command-line options override respec‐
429       tive settings from configuration files.
430

COMMANDS

432       For  an  explanation  of <package-spec>, <package-file-spec> and <pack‐
433       age-name-spec> see Specifying Packages.
434
435       For an explanation of <provide-spec> see Specifying Provides.
436
437       For an explanation of <group-spec> see Specifying Groups.
438
439       For an explanation of <module-spec> see Specifying Modules.
440
441       For an explanation of <transaction-spec> see Specifying Transactions.
442
443   Alias Command
444       Command: alias
445
446
447       Allows the user to define and manage a list of  aliases  (in  the  form
448       <name=value>),  which  can  be  then used as dnf commands to abbreviate
449       longer command sequences. For examples on using the alias command,  see
450       Alias  Examples.  For  examples on the alias processing, see Alias Pro‐
451       cessing Examples.
452
453       To use an alias (name=value), the name must  be  placed  as  the  first
454       "command"  (e.g.  the first argument that is not an option). It is then
455       replaced by its value and the resulting sequence is again searched  for
456       aliases. The alias processing stops when the first found command is not
457       a name of any alias.
458
459       In case the processing would result in an infinite recursion, the orig‐
460       inal arguments are used instead.
461
462       Also,  like  in shell aliases, if the result starts with a \, the alias
463       processing will stop.
464
465       All   aliases   are   defined   in   configuration   files    in    the
466       /etc/dnf/aliases.d/  directory  in  the  [aliases] section, and aliases
467       created by the alias command are written to the USER.conf file. In case
468       of  conflicts, the USER.conf has the highest priority, and alphabetical
469       ordering is used for the rest of the configuration files.
470
471       Optionally, there is the enabled option in the [main] section  default‐
472       ing to True. This can be set for each file separately in the respective
473       file, or globally for all aliases in the ALIASES.conf file.
474
475       dnf alias [options] [list] [<name>...]
476          List aliases with their final  result.  The  [<alias>...]  parameter
477          further limits the result to only those aliases matching it.
478
479       dnf alias [options] add <name=value>...
480          Create new aliases.
481
482       dnf alias [options] delete <name>...
483          Delete aliases.
484
485   Alias Examples
486       dnf alias list
487              Lists all defined aliases.
488
489       dnf alias add rm=remove
490              Adds  a  new command alias called rm which works the same as the
491              remove command.
492
493       dnf alias  add  upgrade="\upgrade  --skip-broken  --disableexcludes=all
494       --obsoletes"
495              Adds  a new command alias called upgrade which works the same as
496              the upgrade command, with  additional  options.  Note  that  the
497              original  upgrade  command  is  prefixed  with a \ to prevent an
498              infinite loop in alias processing.
499
500   Alias Processing Examples
501       If there are defined aliases in=install and FORCE="--skip-broken --dis‐
502       ableexcludes=all":
503
504       · dnf  FORCE  in  will  be replaced with dnf --skip-broken --disableex‐
505         cludes=all install
506
507       · dnf in FORCE will be replaced with  dnf  install  FORCE  (which  will
508         fail)
509
510       If there is defined alias in=install:
511
512       · dnf in will be replaced with dnf install
513
514       · dnf  --repo  updates  in  will be replaced with dnf --repo updates in
515         (which will fail)
516
517   Autoremove Command
518       Command: autoremove
519       Aliases for explicit NEVRA matching: autoremove-n, autoremove-na, autoremove-nevra
520
521
522       dnf [options] autoremove
523          Removes all "leaf" packages from the  system  that  were  originally
524          installed  as dependencies of user-installed packages, but which are
525          no longer required by any such package.
526
527       Packages listed in installonlypkgs are never automatically  removed  by
528       this command.
529
530       dnf [options] autoremove <spec>...
531          This  is an alias for the Remove Command command with clean_require‐
532          ments_on_remove set to True. It removes the specified packages  from
533          the  system  along with any packages depending on the packages being
534          removed. Each <spec> can be either a <package-spec>, which specifies
535          a package directly, or a @<group-spec>, which specifies an (environ‐
536          ment) group which contains it. It also removes any dependencies that
537          are no longer needed.
538
539          There  are  also  a  few  specific autoremove commands autoremove-n,
540          autoremove-na and autoremove-nevra that allow the  specification  of
541          an exact argument in the NEVRA (name-epoch:version-release.architec‐
542          ture) format.
543
544       This command by default does not force a sync of expired metadata.  See
545       also Metadata Synchronization.
546
547   Check Command
548       Command: check
549
550
551       dnf   [options]  check  [--dependencies]  [--duplicates]  [--obsoleted]
552       [--provides]
553          Checks the local packagedb and produces information on any  problems
554          it  finds.  You  can  limit  the checks to be performed by using the
555          --dependencies, --duplicates,  --obsoleted  and  --provides  options
556          (the default is to check everything).
557
558   Check-Update Command
559       Command: check-update
560       Aliases: check-upgrade
561
562
563       dnf [options] check-update [--changelogs] [<package-file-spec>...]
564          Non-interactively  checks  if  updates of the specified packages are
565          available. If no <package-file-spec> is given,  checks  whether  any
566          updates  at all are available for your system. DNF exit code will be
567          100 when there are updates available and a list of the updates  will
568          be  printed,  0  if  not  and  1 if an error occurs. If --changelogs
569          option is specified, also changelog delta of packages  about  to  be
570          updated is printed.
571
572          Please  note  that  having a specific newer version available for an
573          installed package (and reported by check-update) does not imply that
574          subsequent  dnf  upgrade will install it. The difference is that dnf
575          upgrade has restrictions (like package dependencies being satisfied)
576          to take into account.
577
578          The output is affected by the autocheck_running_kernel configuration
579          option.
580
581   Clean Command
582       Command: clean
583
584
585       Performs  cleanup  of  temporary  files  kept  for  repositories.  This
586       includes  any  such data left behind from disabled or removed reposito‐
587       ries as well as for different distribution release versions.
588
589       dnf clean dbcache
590              Removes cache files generated from the repository metadata. This
591              forces  DNF  to  regenerate  the cache files the next time it is
592              run.
593
594       dnf clean expire-cache
595              Marks the repository metadata expired. DNF will re-validate  the
596              cache for each repository the next time it is used.
597
598       dnf clean metadata
599              Removes  repository metadata. Those are the files which DNF uses
600              to determine the remote availability  of  packages.  Using  this
601              option  will make DNF download all the metadata the next time it
602              is run.
603
604       dnf clean packages
605              Removes any cached packages from the system.
606
607       dnf clean all
608              Does all of the above.
609
610   Deplist Command
611       dnf  [options]  deplist  [<select-options>]  [<query-options>]  [<pack‐
612       age-spec>]
613              Deprecated alias for dnf repoquery --deplist.
614
615   Distro-Sync Command
616       Command: distro-sync
617       Aliases: dsync
618       Deprecated aliases: distrosync, distribution-synchronization
619
620
621       dnf distro-sync [<package-spec>...]
622              As  necessary  upgrades,  downgrades or keeps selected installed
623              packages to match the latest version available from any  enabled
624              repository.  If  no package is given, all installed packages are
625              considered.
626
627              See also Configuration Files Replacement Policy.
628
629   Downgrade Command
630       Command: downgrade
631       Aliases: dg
632
633
634       dnf [options] downgrade <package-spec>...
635              Downgrades the specified packages  to  the  highest  installable
636              package of all known lower versions if possible. When version is
637              given and is lower than version of  installed  package  then  it
638              downgrades to target version.
639
640   Group Command
641       Command: group
642       Aliases: grp
643       Deprecated aliases: groups, grouplist, groupinstall, groupupdate, groupremove, grouperase, groupinfo
644
645
646       Groups  are  virtual collections of packages. DNF keeps track of groups
647       that the user selected ("marked") installed and can manipulate the com‐
648       prising packages with simple commands.
649
650       dnf [options] group [summary] <group-spec>
651              Display overview of how many groups are installed and available.
652              With a spec, limit the output to the matching groups. summary is
653              the default groups subcommand.
654
655       dnf [options] group info <group-spec>
656              Display  package  lists  of  a  group.  Shows which packages are
657              installed or available from a repository when -v is used.
658
659       dnf [options] group install [--with-optional] <group-spec>...
660              Mark the specified group installed and install packages it  con‐
661              tains.   Also   include   optional  packages  of  the  group  if
662              --with-optional is specified. All mandatory and Default packages
663              will  be  installed whenever possible.  Conditional packages are
664              installed if they meet  their  requirement.   If  the  group  is
665              already  (partially) installed, the command installs the missing
666              packages from the group.  Depending on the  value  of  obsoletes
667              configuration  option  group  installation  takes obsoletes into
668              account.
669
670       dnf [options] group list <group-spec>...
671              List all matching groups, either among  installed  or  available
672              groups.   If  nothing  is  specified,  list  all  known  groups.
673              --installed and --available options narrow  down  the  requested
674              list.   Records  are ordered by the display_order tag defined in
675              comps.xml file.  Provides a list of all hidden groups  by  using
676              option  --hidden.   Provides  group  IDs  when  the  -v or --ids
677              options are used.
678
679       dnf [options] group remove <group-spec>...
680              Mark the group removed and remove those packages  in  the  group
681              from  the  system which do not belong to another installed group
682              and were not installed explicitly by the user.
683
684       dnf [options] group upgrade <group-spec>...
685              Upgrades the packages from the  group  and  upgrades  the  group
686              itself.  The  latter  comprises of installing packages that were
687              added to the group by the  distribution  and  removing  packages
688              that  got  removed  from  the  group  as  far  as  they were not
689              installed explicitly by the user.
690
691       Groups can also be  marked  installed  or  removed  without  physically
692       manipulating any packages:
693
694       dnf [options] group mark install <group-spec>...
695              Mark   the  specified  group  installed.  No  packages  will  be
696              installed by this command, but  the  group  is  then  considered
697              installed.
698
699       dnf [options] group mark remove <group-spec>...
700              Mark the specified group removed. No packages will be removed by
701              this command.
702
703       See also Configuration Files Replacement Policy.
704
705   Help Command
706       Command: help
707
708
709       dnf help [<command>]
710              Displays the help text for all commands. If given a command name
711              then only displays help for that particular command.
712
713   History Command
714       Command: history
715       Aliases: hist
716
717
718       The  history  command allows the user to view what has happened in past
719       transactions and act according to this information (assuming  the  his‐
720       tory_record configuration option is set).
721
722       dnf history [list] [--reverse] [<spec>...]
723              The  default  history  action is listing information about given
724              transactions in a table. Each <spec> can be either  a  <transac‐
725              tion-spec>, which specifies a transaction directly, or a <trans‐
726              action-spec>..<transaction-spec>, which  specifies  a  range  of
727              transactions, or a <package-name-spec>, which specifies a trans‐
728              action by a package which it manipulated. When no transaction is
729              specified, list all known transactions.
730
731              --reverse
732                     The  order  of  history list output is printed in reverse
733                     order.
734
735       dnf history info [<spec>...]
736              Describe the given transactions. The meaning of  <spec>  is  the
737              same  as  in  the  History  List Command. When no transaction is
738              specified, describe what happened during the latest transaction.
739
740       dnf history redo <transaction-spec>|<package-file-spec>
741              Repeat the specified  transaction.  Uses  the  last  transaction
742              (with  the  highest  ID)  if more than one transaction for given
743              <package-file-spec> is found. If it is not possible to redo some
744              operations  due  to the current state of RPMDB, it will not redo
745              the transaction.
746
747       dnf    history    replay     [--ignore-installed]     [--ignore-extras]
748       [--skip-unavailable] <filename>
749              Replay  a transaction stored in file <filename> by History Store
750              Command. The replay will perform the exact  same  operations  on
751              the packages as in the original transaction and will return with
752              an error if case of any differences  in  installed  packages  or
753              their  versions. See also the Transaction JSON Format specifica‐
754              tion of the file format.
755
756              --ignore-installed
757                     Don't check for the installed packages being in the  same
758                     state  as those recorded in the transaction. E.g. in case
759                     there is an upgrade foo-1.0  ->  foo-2.0  stored  in  the
760                     transaction, but there is foo-1.1 installed on the target
761                     system.
762
763              --ignore-extras
764                     Don't check for extra packages pulled into  the  transac‐
765                     tion on the target system. E.g. the target system may not
766                     have some dependency, which was installed on  the  source
767                     system.  The replay errors out on this by default, as the
768                     transaction would not be the same.
769
770              --skip-unavailable
771                     In case some packages stored in the transaction  are  not
772                     available  on  the  target  system,  skip them instead of
773                     erroring out.
774
775       dnf history rollback <transaction-spec>|<package-file-spec>
776              Undo all transactions performed after the specified transaction.
777              Uses the last transaction (with the highest ID) if more than one
778              transaction for given <package-file-spec> is found.   If  it  is
779              not  possible to undo some transactions due to the current state
780              of RPMDB, it will not undo any transaction.
781
782       dnf history store [--output <output-file>] <transaction-spec>
783              Store a transaction specified by <transaction-spec>. The  trans‐
784              action can later be replayed by the History Replay Command.
785
786              Warning:  The  stored  transaction format is considered unstable
787              and may change at any time. It will work if the same version  of
788              dnf  is used to store and replay (or between versions as long as
789              it stays the same).
790
791              -o <output-file>, --output=<output-file>  Store  the  serialized
792              transaction into <output-file. Default is transaction.json.
793
794       dnf history undo <transaction-spec>|<package-file-spec>
795              Perform  the  opposite  operation to all operations performed in
796              the specified transaction.  Uses the last transaction (with  the
797              highest  ID)  if  more  than  one  transaction  for given <pack‐
798              age-file-spec> is found. If it is  not  possible  to  undo  some
799              operations  due  to the current state of RPMDB, it will not undo
800              the transaction.
801
802       dnf history userinstalled
803              Show all installonly packages, packages installed outside of DNF
804              and packages not installed as dependency. I.e. it lists packages
805              that will stay on the system when Autoremove Command  or  Remove
806              Command  along  with  clean_requirements_on_remove configuration
807              option set to True is executed. Note the  same  results  can  be
808              accomplished  with  dnf repoquery --userinstalled, and the repo‐
809              query command is more powerful in formatting of the output.
810
811       This command by default does not force  a  sync  of  expired  metadata,
812       except for the redo, rollback, and undo subcommands.  See also Metadata
813       Synchronization and Configuration Files Replacement Policy.
814
815   Info Command
816       Command: info
817
818
819       dnf [options] info [<package-file-spec>...]
820              Lists description and summary information  about  installed  and
821              available packages.
822
823       The info command limits the displayed packages the same way as the list
824       command.
825
826       This command by default does not force a sync of expired metadata.  See
827       also Metadata Synchronization.
828
829   Install Command
830       Command: install
831       Aliases: in
832       Aliases for explicit NEVRA matching: install-n, install-na, install-nevra
833       Deprecated aliases: localinstall
834
835
836       dnf [options] install <spec>...
837              Makes  sure  that  the given packages and their dependencies are
838              installed  on  the  system.  Each  <spec>  can   be   either   a
839              <package-spec>,  or  a  @<module-spec>, or a @<group-spec>.  See
840              Install Examples.  If a given package or provide cannot be  (and
841              is  not  already) installed, the exit code will be non-zero.  If
842              the <spec> matches both a @<module-spec>  and  a  @<group-spec>,
843              only the module is installed.
844
845              When  <package-spec> to specify the exact version of the package
846              is given, DNF will install the desired version, no matter  which
847              version  of the package is already installed. The former version
848              of the package will be removed in the  case  of  non-installonly
849              package.
850
851              On  the  other hand if <package-spec> specifies only a name, DNF
852              also takes into account  packages  obsoleting  it  when  picking
853              which  package  to  install.   This behaviour is specific to the
854              install command.  Note that this can  lead  to  seemingly  unex‐
855              pected results if a package has multiple versions and some older
856              version  is  being  obsoleted.  It  creates  a  split   in   the
857              upgrade-path and both ways are considered correct, the resulting
858              package is picked simply by lexicographical order.
859
860              There are  also  a  few  specific  install  commands  install-n,
861              install-na  and install-nevra that allow the specification of an
862              exact argument in the NEVRA format.
863
864              See also Configuration Files Replacement Policy.
865
866   Install Examples
867       dnf install tito
868              Install the tito package (tito is the package name).
869
870       dnf install ~/Downloads/tito-0.6.2-1.fc22.noarch.rpm
871              Install a local rpm file tito-0.6.2-1.fc22.noarch.rpm  from  the
872              ~/Downloads/ directory.
873
874       dnf install tito-0.5.6-1.fc22
875              Install  the  package with a specific version. If the package is
876              already installed it will  automatically  try  to  downgrade  or
877              upgrade to the specific version.
878
879       dnf --best install tito
880              Install  the  latest  available  version  of the package. If the
881              package is  already  installed  it  will  try  to  automatically
882              upgrade  to  the  latest  version.  If the latest version of the
883              package cannot be installed, the installation will fail.
884
885       dnf install vim
886              DNF will automatically recognize that vim is not a package name,
887              but  will  look  up and install a package that provides vim with
888              all the required dependencies.  Note:  Package  name  match  has
889              precedence over package provides match.
890
891       dnf          install          https://kojipkgs.fedoraproject.org//pack
892       ages/tito/0.6.0/1.fc22/noarch/tito-0.6.0-1.fc22.noarch.rpm
893              Install a package directly from a URL.
894
895       dnf install '@docker'
896              Install all default profiles of module 'docker' and their  RPMs.
897              Module streams get enabled accordingly.
898
899       dnf install '@Web Server'
900              Install the 'Web Server' environmental group.
901
902       dnf install /usr/bin/rpmsign
903              Install a package that provides the /usr/bin/rpmsign file.
904
905       dnf -y install tito --setopt=install_weak_deps=False
906              Install the tito package (tito is the package name) without weak
907              deps. Weak deps are not required for core functionality  of  the
908              package,  but  they  enhance the original package (like extended
909              documentation, plugins, additional functions, etc.).
910
911       dnf install --advisory=FEDORA-2018-b7b99fe852 \*
912              Install all packages that belong to the "FEDORA-2018-b7b99fe852"
913              advisory.
914
915   List Command
916       Command: list
917       Aliases: ls
918
919
920       Prints  lists  of  packages  depending on the packages' relation to the
921       system. A package is installed if it is present in the RPMDB, and it is
922       available  if  it  is not installed but is present in a repository that
923       DNF knows about.
924
925       The list command also limits the displayed packages according  to  spe‐
926       cific  criteria,  e.g.  to  only those that update an installed package
927       (respecting the repository priority). The exclude option in the config‐
928       uration  file  can  influence  the result, but if the --disableexcludes
929       command line option is used, it ensures  that  all  installed  packages
930       will be listed.
931
932       dnf [options] list [--all] [<package-file-spec>...]
933              Lists  all  packages,  present  in the RPMDB, in a repository or
934              both.
935
936       dnf [options] list --installed [<package-file-spec>...]
937              Lists installed packages.
938
939       dnf [options] list --available [<package-file-spec>...]
940              Lists available packages.
941
942       dnf [options] list --extras [<package-file-spec>...]
943              Lists extras, that is packages installed on the system that  are
944              not available in any known repository.
945
946       dnf [options] list --obsoletes [<package-file-spec>...]
947              List  packages  installed  on  the  system that are obsoleted by
948              packages in any known repository.
949
950       dnf [options] list --recent [<package-file-spec>...]
951              List packages recently added into the repositories.
952
953       dnf [options] list --upgrades [<package-file-spec>...]
954              List upgrades available for the installed packages.
955
956       dnf [options] list --autoremove
957              List packages which will be removed by the dnf  autoremove  com‐
958              mand.
959
960       This  command by default does not force a sync of expired metadata. See
961       also Metadata Synchronization.
962
963   Makecache Command
964       Command: makecache
965       Aliases: mc
966
967
968       dnf [options] makecache
969              Downloads and caches metadata for  all  known  repos.  Tries  to
970              avoid  downloading  whenever possible (e.g. when the local meta‐
971              data hasn't expired yet or when the  metadata  timestamp  hasn't
972              changed).
973
974       dnf [options] makecache --timer
975              Like   plain   makecache,   but   instructs   DNF   to  be  more
976              resource-aware, meaning it will not do anything  if  running  on
977              battery  power  and  will terminate immediately if it's too soon
978              after the last successful makecache run (see dnf.conf(5),  meta‐
979              data_timer_sync).
980
981   Mark Command
982       Command: mark
983
984
985       dnf mark install <package-spec>...
986              Marks  the  specified packages as installed by user. This can be
987              useful if any package was  installed  as  a  dependency  and  is
988              desired  to stay on the system when Autoremove Command or Remove
989              Command along  with  clean_requirements_on_remove  configuration
990              option set to True is executed.
991
992       dnf mark remove <package-spec>...
993              Unmarks  the  specified  packages as installed by user. Whenever
994              you as a user don't need a specific package you can mark it  for
995              removal.  The  package stays installed on the system but will be
996              removed when Autoremove Command or  Remove  Command  along  with
997              clean_requirements_on_remove configuration option set to True is
998              executed. You should use this operation instead of  Remove  Com‐
999              mand  if you're not sure whether the package is a requirement of
1000              other user installed packages on the system.
1001
1002       dnf mark group <package-spec>...
1003              Marks the specified packages as installed by group. This can  be
1004              useful  if  any  package was installed as a dependency or a user
1005              and is desired to be protected and handled  as  a  group  member
1006              like during group remove.
1007
1008   Module Command
1009       Command: module
1010
1011
1012       Modularity overview is available at man page dnf.modularity(7).  Module
1013       subcommands take <module-spec>... arguments  that  specify  modules  or
1014       profiles.
1015
1016       dnf [options] module install <module-spec>...
1017              Install  module  profiles, including their packages.  In case no
1018              profile was provided, all default profiles get installed.   Mod‐
1019              ule streams get enabled accordingly.
1020
1021              This  command  cannot  be used for switching module streams. Use
1022              the dnf module switch-to command for that.
1023
1024       dnf [options] module update <module-spec>...
1025              Update packages associated with an active module stream, option‐
1026              ally  restricted to a profile.  If the profile_name is provided,
1027              only the packages referenced by that profile will be updated.
1028
1029       dnf [options] module switch-to <module-spec>...
1030              Switch  to  or  enable  a  module  stream,  change  versions  of
1031              installed  packages  to versions provided by the new stream, and
1032              remove packages from the old stream that are  no  longer  avail‐
1033              able.  It  also updates installed profiles if they are available
1034              for the new stream. When a profile  was  provided,  it  installs
1035              that profile and does not update any already installed profiles.
1036
1037              This command can be used as a stronger version of the dnf module
1038              enable command, which not only enables modules, but also does  a
1039              distrosync to all modular packages in the enabled modules.
1040
1041              It  can  also  be  used  as a stronger version of the dnf module
1042              install command, but it requires to specify  profiles  that  are
1043              supposed to be installed, because switch-to command does not use
1044              default profiles. The switch-to  command  doesn't  only  install
1045              profiles,  it also makes a distrosync to all modular packages in
1046              the installed module.
1047
1048       dnf [options] module remove <module-spec>...
1049              Remove installed module profiles, including packages  that  were
1050              installed  with  the dnf module install command. Will not remove
1051              packages required by other installed module profiles or by other
1052              user-installed  packages.   In case no profile was provided, all
1053              installed profiles get removed.
1054
1055       dnf [options] module remove --all <module-spec>...
1056              Remove installed module profiles, including packages  that  were
1057              installed  with  the  dnf  module  install  command.  With --all
1058              option it additionally removes all packages whose names are pro‐
1059              vided by specified modules. Packages required by other installed
1060              module profiles and packages whose names are  also  provided  by
1061              any other module are not removed.
1062
1063       dnf [options] module enable <module-spec>...
1064              Enable a module stream and make the stream RPMs available in the
1065              package set.
1066
1067              Modular dependencies are resolved, dependencies checked and also
1068              recursively  enabled.  In  case  of modular dependency issue the
1069              operation will be rejected. To perform the action anyway  please
1070              use --skip-broken option.
1071
1072              This  command  cannot  be used for switching module streams. Use
1073              the dnf module switch-to command for that.
1074
1075       dnf [options] module disable <module-name>...
1076              Disable  a  module.  All  related  module  streams  will  become
1077              unavailable.   Consequently,  all  installed  profiles  will  be
1078              removed and the module RPMs will become unavailable in the pack‐
1079              age  set. In case of modular dependency issue the operation will
1080              be  rejected.  To  perform  the  action  anyway  please  use  -‐
1081              -skip-broken option.
1082
1083       dnf [options] module reset <module-name>...
1084              Reset  module state so it's no longer enabled or disabled.  Con‐
1085              sequently, all installed profiles will be removed and only  RPMs
1086              from the default stream will be available in the package set.
1087
1088       dnf [options] module provides <package-name-spec>...
1089              Lists all modular packages matching <package-name-spec> from all
1090              modules (including disabled), along with the modules and streams
1091              they belong to.
1092
1093       dnf [options] module list [--all] [module_name...]
1094              Lists  all  module  streams, their profiles and states (enabled,
1095              disabled, default).
1096
1097       dnf [options] module list --enabled [module_name...]
1098              Lists module streams that are enabled.
1099
1100       dnf [options] module list --disabled [module_name...]
1101              Lists module streams that are disabled.
1102
1103       dnf [options] module list --installed [module_name...]
1104              List module streams with installed profiles.
1105
1106       dnf [options] module info <module-spec>...
1107              Print detailed information about given module stream.
1108
1109       dnf [options] module info --profile <module-spec>...
1110              Print detailed information about given module profiles.
1111
1112       dnf [options] module repoquery <module-spec>...
1113              List all available packages belonging to selected modules.
1114
1115       dnf [options] module repoquery --available <module-spec>...
1116              List all available packages belonging to selected modules.
1117
1118       dnf [options] module repoquery --installed <module-spec>...
1119              List all installed packages with same name like packages belong‐
1120              ing to selected modules.
1121
1122   Provides Command
1123       Command: provides
1124       Aliases: prov, whatprovides
1125
1126
1127       dnf [options] provides <provide-spec>
1128              Finds  the  packages providing the given <provide-spec>. This is
1129              useful when one knows a filename and wants to find what  package
1130              (installed  or  not)  provides this file.  The <provide-spec> is
1131              gradually looked for at following locations:
1132
1133              1. The <provide-spec> is matched with all file provides  of  any
1134                 available package:
1135
1136                    $ dnf provides /usr/bin/gzip
1137                    gzip-1.9-9.fc29.x86_64 : The GNU data compression program
1138                    Matched from:
1139                    Filename    : /usr/bin/gzip
1140
1141              2. Then all provides of all available packages are searched:
1142
1143                    $ dnf provides "gzip(x86-64)"
1144                    gzip-1.9-9.fc29.x86_64 : The GNU data compression program
1145                    Matched from:
1146                    Provide     : gzip(x86-64) = 1.9-9.fc29
1147
1148              3. DNF  assumes  that  the  <provide-spec>  is a system command,
1149                 prepends it with /usr/bin/, /usr/sbin/  prefixes  (one  at  a
1150                 time)  and  does  the  file provides search again. For legacy
1151                 reasons (packages that didn't do UsrMove) also /bin and /sbin
1152                 prefixes are being searched:
1153
1154                    $ dnf provides zless
1155                    gzip-1.9-9.fc29.x86_64 : The GNU data compression program
1156                    Matched from:
1157                    Filename    : /usr/bin/zless
1158
1159              4. If  this last step also fails, DNF returns "Error: No Matches
1160                 found".
1161
1162              This command by default does not force a sync of  expired  meta‐
1163              data. See also Metadata Synchronization.
1164
1165   Reinstall Command
1166       Command: reinstall
1167       Aliases: rei
1168
1169
1170       dnf [options] reinstall <package-spec>...
1171              Installs  the  specified packages, fails if some of the packages
1172              are either not installed or not  available  (i.e.  there  is  no
1173              repository where to download the same RPM).
1174
1175   Remove Command
1176       Command: remove
1177       Aliases: rm
1178       Aliases for explicit NEVRA matching: remove-n, remove-na, remove-nevra
1179       Deprecated aliases: erase, erase-n, erase-na, erase-nevra
1180
1181
1182       dnf [options] remove <package-spec>...
1183              Removes  the  specified  packages from the system along with any
1184              packages depending on the packages being  removed.  Each  <spec>
1185              can  be  either  a  <package-spec>,  which  specifies  a package
1186              directly, or a @<group-spec>, which specifies  an  (environment)
1187              group  which  contains  it.  If  clean_requirements_on_remove is
1188              enabled (the default), also removes any dependencies that are no
1189              longer needed.
1190
1191       dnf [options] remove --duplicates
1192              Removes  older  versions  of  duplicate  packages. To ensure the
1193              integrity of the system it reinstalls  the  newest  package.  In
1194              some  cases  the command cannot resolve conflicts. In such cases
1195              the dnf shell  command  with  remove  --duplicates  and  upgrade
1196              dnf-shell sub-commands could help.
1197
1198       dnf [options] remove --oldinstallonly
1199              Removes  old  installonly packages, keeping only latest versions
1200              and version of running kernel.
1201
1202              There  are  also  a  few  specific  remove  commands   remove-n,
1203              remove-na  and  remove-nevra  that allow the specification of an
1204              exact argument in the NEVRA format.
1205
1206   Remove Examples
1207       dnf remove acpi tito
1208              Remove the acpi and tito packages.
1209
1210       dnf remove $(dnf repoquery --extras --exclude=tito,acpi)
1211              Remove packages not present in any repository, but don't  remove
1212              the  tito and acpi packages (they still might be removed if they
1213              depend on some of the removed packages).
1214
1215       Remove older versions of duplicated packages (an  equivalent  of  yum's
1216       package-cleanup --cleandups):
1217
1218          dnf remove --duplicates
1219
1220   Repoinfo Command
1221       Command: repoinfo
1222
1223          An alias for the repolist command that provides more detailed infor‐
1224          mation like dnf repolist -v.
1225
1226   Repolist Command
1227       Command: repolist
1228
1229
1230       dnf [options] repolist [--enabled|--disabled|--all]
1231              Depending on the exact command lists enabled,  disabled  or  all
1232              known  repositories.  Lists all enabled repositories by default.
1233              Provides more detailed information when -v option is used.
1234
1235       This command by default does not force a sync of expired metadata.  See
1236       also Metadata Synchronization.
1237
1238   Repoquery Command
1239       Command: repoquery
1240       Aliases: rq
1241       Aliases for explicit NEVRA matching: repoquery-n, repoquery-na, repoquery-nevra
1242
1243
1244       dnf  [options]  repoquery  [<select-options>] [<query-options>] [<pack‐
1245       age-file-spec>]
1246              Searches available DNF repositories for  selected  packages  and
1247              displays  the requested information about them. It is an equiva‐
1248              lent of rpm -q for remote repositories.
1249
1250       dnf [options] repoquery --querytags
1251              Provides the list of tags recognized by the --queryformat  repo‐
1252              query option.
1253
1254              There  are  also  a few specific repoquery commands repoquery-n,
1255              repoquery-na and repoquery-nevra that allow the specification of
1256              an exact argument in the NEVRA format (does not affect arguments
1257              of options like --whatprovides <arg>, ...).
1258
1259   Select Options
1260       Together with <package-file-spec>, control what packages are  displayed
1261       in  the  output.  If <package-file-spec> is given, limits the resulting
1262       set of packages to those matching the specification. All  packages  are
1263       considered if no <package-file-spec> is specified.
1264
1265       <package-file-spec>
1266              Package  specification  in  the NEVRA format (name[-[epoch:]ver‐
1267              sion[-release]][.arch]), a package provide or  a  file  provide.
1268              See Specifying Packages.
1269
1270       -a, --all
1271              Query all packages (for rpmquery compatibility, also a shorthand
1272              for repoquery '*' or repoquery without arguments).
1273
1274       --arch <arch>[,<arch>...], --archlist <arch>[,<arch>...]
1275              Limit the resulting set only to packages of  selected  architec‐
1276              tures  (default  is all architectures). In some cases the result
1277              is affected by the basearch of the running system, therefore  to
1278              run  repoquery for an arch incompatible with your system use the
1279              --forcearch=<arch> option to change the basearch.
1280
1281       --duplicates
1282              Limit the resulting set to installed  duplicate  packages  (i.e.
1283              more  package  versions  for  the  same  name and architecture).
1284              Installonly packages are excluded from this set.
1285
1286       --unneeded
1287              Limit the resulting set to leaves packages that  were  installed
1288              as  dependencies so they are no longer needed. This switch lists
1289              packages that are going to be removed after  executing  the  dnf
1290              autoremove command.
1291
1292       --available
1293              Limit  the  resulting  set  to  available  packages only (set by
1294              default).
1295
1296       --disable-modular-filtering
1297              Disables filtering of modular  packages,  so  that  packages  of
1298              inactive module streams are included in the result.
1299
1300       --extras
1301              Limit  the resulting set to packages that are not present in any
1302              of the available repositories.
1303
1304       -f <file>, --file <file>
1305              Limit the resulting set only to the package that owns <file>.
1306
1307       --installed
1308              Limit the resulting set to installed packages only. The  exclude
1309              option in the configuration file might influence the result, but
1310              if the  command  line  option   --disableexcludes  is  used,  it
1311              ensures that all installed packages will be listed.
1312
1313       --installonly
1314              Limit the resulting set to installed installonly packages.
1315
1316       --latest-limit <number>
1317              Limit the resulting set to <number> of latest packages for every
1318              package name and architecture.  If <number>  is  negative,  skip
1319              <number>  of  latest  packages.  For a negative <number> use the
1320              --latest-limit=<number> syntax.
1321
1322       --recent
1323              Limit the resulting set to packages that were recently edited.
1324
1325       --repo <repoid>
1326              Limit the resulting set only to packages from a repository iden‐
1327              tified  by  <repoid>.  Can be used multiple times with accumula‐
1328              tive effect.
1329
1330       --unsatisfied
1331              Report unsatisfied dependencies among installed  packages  (i.e.
1332              missing requires and and existing conflicts).
1333
1334       --upgrades
1335              Limit  the resulting set to packages that provide an upgrade for
1336              some already installed package.
1337
1338       --userinstalled
1339              Limit the resulting set to packages installed by the  user.  The
1340              exclude  option  in  the  configuration file might influence the
1341              result, but if the command  line  option   --disableexcludes  is
1342              used, it ensures that all installed packages will be listed.
1343
1344       --whatdepends <capability>[,<capability>...]
1345              Limit  the resulting set only to packages that require, enhance,
1346              recommend, suggest or supplement any of <capabilities>.
1347
1348       --whatconflicts <capability>[,<capability>...]
1349              Limit the resulting set only to packages that conflict with  any
1350              of <capabilities>.
1351
1352       --whatenhances <capability>[,<capability>...]
1353              Limit  the  resulting  set  only to packages that enhance any of
1354              <capabilities>. Use  --whatdepends  if  you  want  to  list  all
1355              depending packages.
1356
1357       --whatobsoletes <capability>[,<capability>...]
1358              Limit  the  resulting  set only to packages that obsolete any of
1359              <capabilities>.
1360
1361       --whatprovides <capability>[,<capability>...]
1362              Limit the resulting set only to packages  that  provide  any  of
1363              <capabilities>.
1364
1365       --whatrecommends <capability>[,<capability>...]
1366              Limit  the  resulting set only to packages that recommend any of
1367              <capabilities>. Use  --whatdepends  if  you  want  to  list  all
1368              depending packages.
1369
1370       --whatrequires <capability>[,<capability>...]
1371              Limit  the  resulting  set  only to packages that require any of
1372              <capabilities>. Use  --whatdepends  if  you  want  to  list  all
1373              depending packages.
1374
1375       --whatsuggests <capability>[,<capability>...]
1376              Limit  the  resulting  set  only to packages that suggest any of
1377              <capabilities>. Use  --whatdepends  if  you  want  to  list  all
1378              depending packages.
1379
1380       --whatsupplements <capability>[,<capability>...]
1381              Limit  the resulting set only to packages that supplement any of
1382              <capabilities>. Use  --whatdepends  if  you  want  to  list  all
1383              depending packages.
1384
1385       --alldeps
1386              This  option  is  stackable with --whatrequires or --whatdepends
1387              only. Additionally it adds all packages  requiring  the  package
1388              features to the result set (used as default).
1389
1390       --exactdeps
1391              This  option  is  stackable with --whatrequires or --whatdepends
1392              only. Limit the resulting set  only  to  packages  that  require
1393              <capability> specified by --whatrequires.
1394
1395       --srpm Operate on the corresponding source RPM.
1396
1397   Query Options
1398       Set what information is displayed about each package.
1399
1400       The  following  are  mutually exclusive, i.e. at most one can be speci‐
1401       fied. If no query option is given, matching packages are  displayed  in
1402       the standard NEVRA notation.
1403
1404       -i, --info
1405              Show detailed information about the package.
1406
1407       -l, --list
1408              Show the list of files in the package.
1409
1410       -s, --source
1411              Show the package source RPM name.
1412
1413       --changelogs
1414              Print the package changelogs.
1415
1416       --conflicts
1417              Display  capabilities  that  the package conflicts with. Same as
1418              --qf "%{conflicts}.
1419
1420       --depends
1421              Display capabilities that the package depends on, enhances, rec‐
1422              ommends, suggests or supplements.
1423
1424       --enhances
1425              Display  capabilities  enhanced  by  the  package.  Same as --qf
1426              "%{enhances}"".
1427
1428       --location
1429              Show a location where the package could be downloaded from.
1430
1431       --obsoletes
1432              Display capabilities that the package obsoletes.  Same  as  --qf
1433              "%{obsoletes}".
1434
1435       --provides
1436              Display  capabilities  provided  by  the  package.  Same as --qf
1437              "%{provides}".
1438
1439       --recommends
1440              Display capabilities recommended by the package.  Same  as  --qf
1441              "%{recommends}".
1442
1443       --requires
1444              Display  capabilities  that the package depends on. Same as --qf
1445              "%{requires}".
1446
1447       --requires-pre
1448              Display capabilities that the package depends on for  running  a
1449              %pre script.  Same as --qf "%{requires-pre}".
1450
1451       --suggests
1452              Display  capabilities  suggested  by  the  package. Same as --qf
1453              "%{suggests}".
1454
1455       --supplements
1456              Display capabilities supplemented by the package. Same  as  --qf
1457              "%{supplements}".
1458
1459       --tree Display a recursive tree of packages with capabilities specified
1460              by one of the following supplementary  options:  --whatrequires,
1461              --requires,  --conflicts,  --enhances,  --suggests,  --provides,
1462              --supplements, --recommends.
1463
1464       --deplist
1465              Produce a list of all direct dependencies and what packages pro‐
1466              vide  those dependencies for the given packages. The result only
1467              shows the newest providers (which can be changed by using --ver‐
1468              bose).
1469
1470       --nvr  Show  found packages in the name-version-release format. Same as
1471              --qf "%{name}-%{version}-%{release}".
1472
1473       --nevra
1474              Show found packages in the  name-epoch:version-release.architec‐
1475              ture    format.    Same    as    --qf   "%{name}-%{epoch}:%{ver‐
1476              sion}-%{release}.%{arch}" (default).
1477
1478       --envra
1479              Show found packages in the  epoch:name-version-release.architec‐
1480              ture    format.    Same    as    --qf   "%{epoch}:%{name}-%{ver‐
1481              sion}-%{release}.%{arch}"
1482
1483       --qf <format>, --queryformat <format>
1484              Custom display format. <format> is the string to output for each
1485              matched package. Every occurrence of %{<tag>} within is replaced
1486              by the corresponding attribute of the package. The list of  rec‐
1487              ognized  tags can be displayed by running dnf repoquery --query‐
1488              tags.
1489
1490       --recursive
1491              Query packages recursively. Has to be used  with  --whatrequires
1492              <REQ>  (optionally  with --alldeps, but not with --exactdeps) or
1493              with --requires <REQ> --resolve.
1494
1495       --resolve
1496              resolve capabilities to originating package(s).
1497
1498   Examples
1499       Display NEVRAs of all available packages matching light*:
1500
1501          dnf repoquery 'light*'
1502
1503       Display NEVRAs of all  available  packages  matching  name  light*  and
1504       architecture noarch (accepts only arguments in the "<name>.<arch>" for‐
1505       mat):
1506
1507          dnf repoquery-na 'light*.noarch'
1508
1509       Display requires of all lighttpd packages:
1510
1511          dnf repoquery --requires lighttpd
1512
1513       Display packages providing the requires of python packages:
1514
1515          dnf repoquery --requires python --resolve
1516
1517       Display source rpm of ligttpd package:
1518
1519          dnf repoquery --source lighttpd
1520
1521       Display package name that owns the given file:
1522
1523          dnf repoquery --file /etc/lighttpd/lighttpd.conf
1524
1525       Display  name,  architecture  and  the  containing  repository  of  all
1526       lighttpd packages:
1527
1528          dnf repoquery --queryformat '%{name}.%{arch} : %{reponame}' lighttpd
1529
1530       Display all available packages providing "webserver":
1531
1532          dnf repoquery --whatprovides webserver
1533
1534       Display  all  available  packages  providing  "webserver"  but only for
1535       "i686" architecture:
1536
1537          dnf repoquery --whatprovides webserver --arch i686
1538
1539       Display duplicate packages:
1540
1541          dnf repoquery --duplicates
1542
1543       Display source packages that require a <provide> for a build:
1544
1545          dnf repoquery --disablerepo="*" --enablerepo="*-source" --arch=src --whatrequires <provide>
1546
1547   Repository-Packages Command
1548       Command: repository-packages
1549       Deprecated aliases: repo-pkgs, repo-packages, repository-pkgs
1550
1551
1552       The repository-packages command allows the user to run commands on  top
1553       of  all  packages in the repository named <repoid>. However, any depen‐
1554       dency resolution takes into account packages from all enabled reposito‐
1555       ries. The <package-file-spec> and <package-spec> specifications further
1556       limit the candidates to only those packages matching at  least  one  of
1557       them.
1558
1559       The  info  subcommand  lists  description and summary information about
1560       packages depending on the packages' relation  to  the  repository.  The
1561       list subcommand just prints lists of those packages.
1562
1563       dnf   [options]   repository-packages   <repoid>  check-update  [<pack‐
1564       age-file-spec>...]
1565              Non-interactively checks if updates of the specified packages in
1566              the  repository  are  available.  DNF exit code will be 100 when
1567              there are updates available and a list of the  updates  will  be
1568              printed.
1569
1570       dnf   [options]   repository-packages  <repoid>  info  [--all]  [<pack‐
1571       age-file-spec>...]
1572              List all related packages.
1573
1574       dnf [options] repository-packages  <repoid>  info  --installed  [<pack‐
1575       age-file-spec>...]
1576              List packages installed from the repository.
1577
1578       dnf  [options]  repository-packages  <repoid>  info --available [<pack‐
1579       age-file-spec>...]
1580              List packages available in  the  repository  but  not  currently
1581              installed on the system.
1582
1583       dnf   [options]  repository-packages  <repoid>  info  --extras  [<pack‐
1584       age-file-specs>...]
1585              List packages installed from the repository that are not  avail‐
1586              able in any repository.
1587
1588       dnf  [options]  repository-packages  <repoid>  info --obsoletes [<pack‐
1589       age-file-spec>...]
1590              List packages in the repository that obsolete packages installed
1591              on the system.
1592
1593       dnf   [options]  repository-packages  <repoid>  info  --recent  [<pack‐
1594       age-file-spec>...]
1595              List packages recently added into the repository.
1596
1597       dnf [options]  repository-packages  <repoid>  info  --upgrades  [<pack‐
1598       age-file-spec>...]
1599              List  packages in the repository that upgrade packages installed
1600              on the system.
1601
1602       dnf [options] repository-packages <repoid> install [<package-spec>...]
1603              Install all packages in the repository.
1604
1605       dnf  [options]  repository-packages  <repoid>  list   [--all]   [<pack‐
1606       age-file-spec>...]
1607              List all related packages.
1608
1609       dnf  [options]  repository-packages  <repoid>  list --installed [<pack‐
1610       age-file-spec>...]
1611              List packages installed from the repository.
1612
1613       dnf [options] repository-packages  <repoid>  list  --available  [<pack‐
1614       age-file-spec>...]
1615              List  packages  available  in  the  repository but not currently
1616              installed on the system.
1617
1618       dnf  [options]  repository-packages  <repoid>  list  --extras   [<pack‐
1619       age-file-spec>...]
1620              List  packages installed from the repository that are not avail‐
1621              able in any repository.
1622
1623       dnf [options] repository-packages  <repoid>  list  --obsoletes  [<pack‐
1624       age-file-spec>...]
1625              List packages in the repository that obsolete packages installed
1626              on the system.
1627
1628       dnf  [options]  repository-packages  <repoid>  list  --recent   [<pack‐
1629       age-file-spec>...]
1630              List packages recently added into the repository.
1631
1632       dnf  [options]  repository-packages  <repoid>  list  --upgrades [<pack‐
1633       age-file-spec>...]
1634              List packages in the repository that upgrade packages  installed
1635              on the system.
1636
1637       dnf [options] repository-packages <repoid> move-to [<package-spec>...]
1638              Reinstall  all  those packages that are available in the reposi‐
1639              tory.
1640
1641       dnf   [options]   repository-packages   <repoid>   reinstall    [<pack‐
1642       age-spec>...]
1643              Run  the  reinstall-old subcommand. If it fails, run the move-to
1644              subcommand.
1645
1646       dnf  [options]  repository-packages  <repoid>   reinstall-old   [<pack‐
1647       age-spec>...]
1648              Reinstall all those packages that were installed from the repos‐
1649              itory and simultaneously are available in the repository.
1650
1651       dnf [options] repository-packages <repoid> remove [<package-spec>...]
1652              Remove all packages installed from the repository along with any
1653              packages   depending   on   the   packages   being  removed.  If
1654              clean_requirements_on_remove  is  enabled  (the  default)   also
1655              removes any dependencies that are no longer needed.
1656
1657       dnf   [options]   repository-packages   <repoid>  remove-or-distro-sync
1658       [<package-spec>...]
1659              Select all packages  installed  from  the  repository.  Upgrade,
1660              downgrade  or  keep  those of them that are available in another
1661              repository to match  the  latest  version  available  there  and
1662              remove the others along with any packages depending on the pack‐
1663              ages being removed. If clean_requirements_on_remove  is  enabled
1664              (the  default)  also removes any dependencies that are no longer
1665              needed.
1666
1667       dnf [options] repository-packages <repoid> remove-or-reinstall  [<pack‐
1668       age-spec>...]
1669              Select  all  packages  installed  from the repository. Reinstall
1670              those of them that  are  available  in  another  repository  and
1671              remove the others along with any packages depending on the pack‐
1672              ages being removed. If clean_requirements_on_remove  is  enabled
1673              (the  default)  also removes any dependencies that are no longer
1674              needed.
1675
1676       dnf [options] repository-packages <repoid> upgrade [<package-spec>...]
1677              Update all packages to the highest resolvable version  available
1678              in  the  repository.   When versions are specified in the <pack‐
1679              age-spec>, update to these versions.
1680
1681       dnf   [options]   repository-packages   <repoid>   upgrade-to   [<pack‐
1682       age-specs>...]
1683              A deprecated alias for the upgrade subcommand.
1684
1685   Search Command
1686       Command: search
1687       Aliases: se
1688
1689
1690       dnf [options] search [--all] <keywords>...
1691              Search  package  metadata  for keywords. Keywords are matched as
1692              case-insensitive substrings, globbing is supported.  By  default
1693              lists  packages  that  match all requested keys (AND operation).
1694              Keys are searched  in  package  names  and  summaries.   If  the
1695              "--all"  option  is used, lists packages that match at least one
1696              of the keys  (an  OR  operation).   In  addition  the  keys  are
1697              searched  in  the  package descriptions and URLs.  The result is
1698              sorted from the most relevant results to the least.
1699
1700       This command by default does not force a sync of expired metadata.  See
1701       also Metadata Synchronization.
1702
1703   Shell Command
1704       Command: shell
1705       Aliases: sh
1706
1707
1708       dnf [options] shell [filename]
1709              Open  an interactive shell for conducting multiple commands dur‐
1710              ing a single execution of DNF. These commands can be issued man‐
1711              ually  or  passed  to DNF from a file. The commands are much the
1712              same as the normal DNF command line options.  There  are  a  few
1713              additional commands documented below.
1714
1715              config [conf-option] [value]
1716
1717                     · Set  a configuration option to a requested value. If no
1718                       value is given it prints the current value.
1719
1720              repo [list|enable|disable] [repo-id]
1721
1722                     · list: list repositories and their status
1723
1724                     · enable: enable repository
1725
1726                     · disable: disable repository
1727
1728              transaction [list|reset|solve|run]
1729
1730                     · list: resolve and list the content of the transaction
1731
1732                     · reset: reset the transaction
1733
1734                     · run: resolve and run the transaction
1735
1736              Note that all local packages must be used  in  the  first  shell
1737              transaction subcommand (e.g.  install /tmp/nodejs-1-1.x86_64.rpm
1738              /tmp/acpi-1-1.noarch.rpm) otherwise an error  will  occur.   Any
1739              disable, enable, and reset module operations (e.g. module enable
1740              nodejs) must also be performed before any other  shell  transac‐
1741              tion subcommand is used.
1742
1743   Swap Command
1744       Command: swap
1745
1746
1747       dnf [options] swap <remove-spec> <install-spec>
1748          Remove  spec and install spec in one transaction. Each <spec> can be
1749          either a <package-spec>, which specifies a package  directly,  or  a
1750          @<group-spec>, which specifies an (environment) group which contains
1751          it. Automatic conflict solving is provided in DNF  by  the  --allow‐
1752          erasing  option  that provides the functionality of the swap command
1753          automatically.
1754
1755   Updateinfo Command
1756       Command: updateinfo
1757       Deprecated aliases: list-updateinfo, list-security, list-sec, info-updateinfo, info-security, info-sec, summary-updateinfo
1758
1759
1760       dnf  [options]  updateinfo  [--summary|--list|--info]  [<availability>]
1761       [<spec>...]
1762              Display information about update advisories.
1763
1764              Depending  on the output type, DNF displays just counts of advi‐
1765              sory types (omitted or --summary), list of  advisories  (--list)
1766              or detailed information (--info). The -v option extends the out‐
1767              put. When  used  with  --info,  the  information  is  even  more
1768              detailed.  When used with --list, an additional column with date
1769              of the last advisory update is added.
1770
1771              <availability> specifies whether advisories about newer versions
1772              of installed packages (omitted or --available), advisories about
1773              equal and older versions of  installed  packages  (--installed),
1774              advisories  about newer versions of those installed packages for
1775              which a newer version is  available  (--updates)  or  advisories
1776              about  any versions of installed packages (--all) are taken into
1777              account. Most of the time, --available  and  --updates  displays
1778              the  same  output.  The outputs differ only in the cases when an
1779              advisory refers to a newer  version  but  there  is  no  enabled
1780              repository which contains any newer version.
1781
1782              Note,  that --available tooks only the latest installed versions
1783              of packages into account. In case of the kernel  packages  (when
1784              multiple  version  could be installed simultaneously) also pack‐
1785              ages of the currently running version of kernel are added.
1786
1787              To print only advisories referencing a CVE  or  a  bugzilla  use
1788              --with-cve  or  --with-bz  options. When these switches are used
1789              also the output of the --list is altered - the ID of the CVE  or
1790              the bugzilla is printed instead of the one of the advisory.
1791
1792              If  given  and  if  neither ID, type (bugfix, enhancement, secu‐
1793              rity/sec) nor a package name of an advisory matches <spec>,  the
1794              advisory  is not taken into account. The matching is case-sensi‐
1795              tive and in the case of advisory IDs and package names, globbing
1796              is supported.
1797
1798              Output of the --summary option is affected by the autocheck_run‐
1799              ning_kernel configuration option.
1800
1801   Upgrade Command
1802       Command: upgrade
1803       Aliases: up
1804       Deprecated aliases: update, upgrade-to, update-to, localupdate
1805
1806
1807       dnf [options] upgrade
1808              Updates each package to the latest version that is  both  avail‐
1809              able and resolvable.
1810
1811       dnf [options] upgrade <package-spec>...
1812              Updates  each specified package to the latest available version.
1813              Updates dependencies as necessary. When versions  are  specified
1814              in the <package-spec>, update to these versions.
1815
1816       dnf [options] upgrade @<spec>...
1817              Alias for the dnf module update command.
1818
1819       If  the main obsoletes configure option is true or the --obsoletes flag
1820       is present, dnf will include package  obsoletes  in  its  calculations.
1821       For more information see obsoletes.
1822
1823       See also Configuration Files Replacement Policy.
1824
1825   Upgrade-Minimal Command
1826       Command: upgrade-minimal
1827       Aliases: up-min
1828       Deprecated aliases: update-minimal
1829
1830
1831       dnf [options] upgrade-minimal
1832              Updates  each  package to the latest available version that pro‐
1833              vides a bugfix, enhancement or a fix for a security issue (secu‐
1834              rity).
1835
1836       dnf [options] upgrade-minimal <package-spec>...
1837              Updates  each  specified package to the latest available version
1838              that provides a bugfix, enhancement or a fix for security  issue
1839              (security). Updates dependencies as necessary.
1840

SPECIFYING PACKAGES

1842       Many  commands  take  a <package-spec> parameter that selects a package
1843       for the operation. The <package-spec> argument is matched against pack‐
1844       age NEVRAs, provides and file provides.
1845
1846       <package-file-spec>  is  similar  to  <package-spec>,  except  provides
1847       matching is not performed. Therefore,  <package-file-spec>  is  matched
1848       only against NEVRAs and file provides.
1849
1850       <package-name-spec> is matched against NEVRAs only.
1851
1852   Globs
1853       Package  specification  supports  the  same  glob pattern matching that
1854       shell does, in all three above mentioned packages  it  matches  against
1855       (NEVRAs, provides and file provides).
1856
1857       The following patterns are supported:
1858
1859       *      Matches any number of characters.
1860
1861       ?      Matches any single character.
1862
1863       []     Matches any one of the enclosed characters. A pair of characters
1864              separated by a hyphen denotes a range expression; any  character
1865              that  falls between those two characters, inclusive, is matched.
1866              If the first character following the [ is a ! or a  ^  then  any
1867              character not enclosed is matched.
1868
1869       Note:  Curly brackets ({}) are not supported. You can still use them in
1870       shells that support them and let the shell do  the  expansion,  but  if
1871       quoted or escaped, dnf will not expand them.
1872
1873   NEVRA Matching
1874       When  matching against NEVRAs, partial matching is supported. DNF tries
1875       to match the spec  against  the  following  list  of  NEVRA  forms  (in
1876       decreasing order of priority):
1877
1878       · name-[epoch:]version-release.arch
1879
1880       · name.arch
1881
1882       · name
1883
1884       · name-[epoch:]version-release
1885
1886       · name-[epoch:]version
1887
1888       Note   that   name   can   in   general   contain  dashes  (e.g.  pack‐
1889       age-with-dashes).
1890
1891       The first form that matches any packages  is  used  and  the  remaining
1892       forms  are  not  tried.  If  none  of  the forms match any packages, an
1893       attempt is made  to  match  the  <package-spec>  against  full  package
1894       NEVRAs.  This  is  only  relevant  if  globs  are present in the <pack‐
1895       age-spec>.
1896
1897       <package-spec> matches NEVRAs the same  way  <package-name-spec>  does,
1898       but  in  case  matching NEVRAs fails, it attempts to match against pro‐
1899       vides and file provides of packages as well.
1900
1901       You can specify globs as part of any of the five NEVRA components.  You
1902       can also specify a glob pattern to match over multiple NEVRA components
1903       (in other words, to match across the NEVRA separators). In  that  case,
1904       however,  you  need  to  write  the  spec to match against full package
1905       NEVRAs, as it is not possible to split such spec into NEVRA forms.
1906
1907   Specifying NEVRA Matching Explicitly
1908       Some commands (autoremove, install, remove  and  repoquery)  also  have
1909       aliases with suffixes -n, -na and -nevra that allow to explicitly spec‐
1910       ify how to parse the arguments:
1911
1912       · Command install-n only matches against name.
1913
1914       · Command install-na only matches against name.arch.
1915
1916       · Command  install-nevra   only   matches   against   name-[epoch:]ver‐
1917         sion-release.arch.
1918

SPECIFYING PROVIDES

1920       <provide-spec>  in  command  descriptions means the command operates on
1921       packages providing the given spec. This can either be an explicit  pro‐
1922       vide, an implicit provide (i.e. name of the package) or a file provide.
1923       The selection is case-sensitive and globbing is supported.
1924

SPECIFYING GROUPS

1926       <group-spec> allows one to select  (environment)  groups  a  particular
1927       operation  should  work on. It is a case insensitive string (supporting
1928       globbing characters) that is matched against a  group's  ID,  canonical
1929       name and name translated into the current LC_MESSAGES locale (if possi‐
1930       ble).
1931

SPECIFYING MODULES

1933       <module-spec> allows one to select modules  or  profiles  a  particular
1934       operation should work on.
1935
1936       It  is in the form of NAME:STREAM:VERSION:CONTEXT:ARCH/PROFILE and sup‐
1937       ported partial forms are the following:
1938
1939       · NAME
1940
1941       · NAME:STREAM
1942
1943       · NAME:STREAM:VERSION
1944
1945       · NAME:STREAM:VERSION:CONTEXT
1946
1947       · all above combinations with ::ARCH (e.g. NAME::ARCH)
1948
1949       · NAME:STREAM:VERSION:CONTEXT:ARCH
1950
1951       · all above combinations with /PROFILE (e.g. NAME/PROFILE)
1952
1953       In case stream is not specified, the enabled or the default  stream  is
1954       used,  in  this  order.  In  case  profile is not specified, the system
1955       default profile or the 'default' profile is used.
1956

SPECIFYING TRANSACTIONS

1958       <transaction-spec> can be in one of several forms. If it is an integer,
1959       it  specifies a transaction ID. Specifying last is the same as specify‐
1960       ing the ID of the most recent transaction. The last form is  last-<off‐
1961       set>,  where  <offset>  is  a  positive integer. It specifies offset-th
1962       transaction preceding the most recent transaction.
1963

PACKAGE FILTERING

1965       Package filtering filters packages out from the available package  set,
1966       making them invisible to most of dnf commands. They cannot be used in a
1967       transaction. Packages can be filtered out by either  Exclude  Filtering
1968       or Modular Filtering.
1969
1970   Exclude Filtering
1971       Exclude  Filtering  is a mechanism used by a user or by a DNF plugin to
1972       modify the set of available packages. Exclude Filtering can be modified
1973       by  either includepkgs or excludepkgs configuration options in configu‐
1974       ration files. The --disableexcludes command line option can be used  to
1975       override excludes from configuration files. In addition to user-config‐
1976       ured excludes, plugins can also extend the set of excluded packages. To
1977       disable excludes from a DNF plugin you can use the --disableplugin com‐
1978       mand line option.
1979
1980       To disable all excludes for e.g. the install command you  can  use  the
1981       following combination of command line options:
1982
1983       dnf --disableexcludes=all --disableplugin="*" install bash
1984
1985   Modular Filtering
1986       Please see the modularity documentation for details on how Modular Fil‐
1987       tering works.
1988
1989       With modularity, only RPM  packages  from  active  module  streams  are
1990       included  in the available package set. RPM packages from inactive mod‐
1991       ule streams, as well as non-modular packages with the same name or pro‐
1992       vides as a package from an active module stream, are filtered out. Mod‐
1993       ular filtering is not applied to packages added from the command  line,
1994       installed  packages,  or  packages  from  repositories with module_hot‐
1995       fixes=true in their .repo file.
1996
1997       Disabling of modular filtering is not  recommended,  because  it  could
1998       cause the system to get into a broken state. To disable modular filter‐
1999       ing for a particular repository, specify  module_hotfixes=true  in  the
2000       .repo file or use --setopt=<repo_id>.module_hotfixes=true.
2001
2002       To  discover the module which contains an excluded package use dnf mod‐
2003       ule provides.
2004

METADATA SYNCHRONIZATION

2006       Correct operation of DNF depends on having access  to  up-to-date  data
2007       from  all  enabled  repositories but contacting remote mirrors on every
2008       operation considerably slows it down and costs bandwidth for  both  the
2009       client   and   the   repository   provider.  The  metadata_expire  (see
2010       dnf.conf(5)) repository configuration option is used by DNF  to  deter‐
2011       mine  whether  a  particular local copy of repository data is due to be
2012       re-synced. It is crucial that the repository providers set  the  option
2013       well, namely to a value where it is guaranteed that if particular meta‐
2014       data was available in time T on the server, then all packages it refer‐
2015       ences  will still be available for download from the server in time T +
2016       metadata_expire.
2017
2018       To further reduce the bandwidth load, some of the commands where having
2019       up-to-date metadata is not critical (e.g. the list command) do not look
2020       at whether a repository is expired and whenever any version  of  it  is
2021       locally  available to the user's account, it will be used. For non-root
2022       use, see also the --cacheonly switch. Note that in all  situations  the
2023       user  can  force  synchronization  of all enabled repositories with the
2024       --refresh switch.
2025

CONFIGURATION FILES REPLACEMENT POLICY

2027       The updated packages could replace the old modified configuration files
2028       with  the  new  ones  or keep the older files. Neither of the files are
2029       actually replaced.  To the conflicting ones RPM gives additional suffix
2030       to  the  origin  name.  Which  file should maintain the true name after
2031       transaction is not controlled by package manager but  is  specified  by
2032       each package itself, following packaging guideline.
2033

FILES

2035       Cache Files
2036              /var/cache/dnf
2037
2038       Main Configuration
2039              /etc/dnf/dnf.conf
2040
2041       Repository
2042              /etc/yum.repos.d/
2043

SEE ALSO

2045       · dnf.conf(5), DNF Configuration Reference
2046
2047       · dnf-PLUGIN(8) for documentation on DNF plugins.
2048
2049       · dnf.modularity(7), Modularity overview.
2050
2051       · dnf-transaction-json(5),  Stored  Transaction  JSON Format Specifica‐
2052         tion.
2053
2054       · DNF                project                homepage                 (‐
2055         https://github.com/rpm-software-management/dnf/)
2056
2057       · How           to           report          a          bug          (‐
2058         https://github.com/rpm-software-management/dnf/wiki/Bug-Reporting)
2059
2060       · YUM project homepage (http://yum.baseurl.org/)
2061

AUTHOR

2063       See AUTHORS in DNF source distribution.
2064
2066       2012-2021, Red Hat, Licensed under GPLv2+
2067
2068
2069
2070
20714.6.1                            Mar 02, 2021                           DNF(8)
Impressum