1DNF5(8)                              dnf5                              DNF5(8)
2
3
4

NAME

6       dnf5 - DNF5 Package Management Utility
7

SYNOPSIS

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

DESCRIPTION

12       DNF5  is  the new version of DNF, a package manager for RPM-based Linux
13       distributions. It has been completely rewritten in C++ aiming for  bet‐
14       ter performance and reducing external dependencies.
15

COMMANDS

17       Here  is  the list of the available commands.  For more details see the
18       separate man page for the specific command, f.e. man dnf5 install.
19
20       advisory
21              Manage advisories.
22
23
24       autoremove
25              Remove unneeded packages.
26
27
28       clean
29              Remove or invalidate cached data.
30
31
32       distro-sync
33              Upgrade or downgrade installed packages to the latest available version.
34
35
36       downgrade
37              Downgrade packages.
38
39
40       download
41              Download packages.
42
43
44       environment
45              Manage comps environments.
46
47
48       group
49              Manage comps groups.
50
51
52       install
53              Install packages.
54
55
56       leaves
57              List groups of leaf packages.
58
59
60       makecache
61              Generate the metadata cache.
62
63
64       mark
65              Change the reason of an installed package.
66
67
68       reinstall
69              Reinstall packages.
70
71
72       remove
73              Remove packages.
74
75
76       repo
77              Manage repositories.
78
79
80       repoquery
81              Search for packages in repositories.
82
83
84       search
85              Search for packages using keywords.
86
87
88       swap
89              Remove software and install another in the single transaction.
90
91
92       upgrade
93              Upgrade packages.
94
95
96   Plugin commands
97       Here is the list of the  commands  available  as  plugins.   These  are
98       available after installing the dnf5-plugins package.
99
100       builddep
101              Install missing dependencies for building an RPM package.
102
103
104       copr
105              Manage Copr repositories (add-ons provided by users/community/third-party).
106
107
108       needs-restarting
109              Determine whether the system should be rebooted.
110
111
112       repoclosure
113              Display a list of unresolved dependencies for repositories.
114
115

OPTIONS

117       Following  options  are  applicable in the general context for any dnf5
118       command:
119
120       --assumeno
121              Automatically answer no for all questions.
122
123
124       --best
125              Try the best available package versions in transactions.
126
127
128              Specifically during dnf upgrade, which by default skips over up‐
129              dates  that  can  not  be  installed for dependency reasons, the
130              switch forces DNF5 to only consider the  latest  packages.  When
131              running  into  packages with broken dependencies, DNF5 will fail
132              giving the reason why the latest version can not be installed.
133
134              Note that the use of the newest available version is only  guar‐
135              anteed  for  the  packages directly requested (e.g. as a command
136              line arguments), and the solver may use older versions of depen‐
137              dencies to meet their requirements.
138
139       -C, --cacheonly
140              Use only cached data for working with packages and repository metadata.
141              Cache won't be updated, even if it is expired.
142
143
144       --comment=COMMENT
145              Add a comment to the transaction history.
146
147
148       --config=CONFIG_FILE_PATH
149              Define configuration file location.
150
151
152       --debugsolver
153              Dump additional data from solver for debugging purposes.
154              Data are saved in ./debugdata.
155
156
157       --disable-plugin=PLUGIN_NAME,...
158              Disable specified plugins for the purpose of the current DNF5 command.
159              This is a list option which can be specified multiple times.
160              Accepted values are names, or a glob of names.
161
162
163       --disable-repo=REPO_ID,...
164              Temporarily disable active repositories for the purpose of the current DNF5 command.
165              This is a list option which can be specified multiple times.
166              Accepted values are ids, or a glob of ids.
167
168
169       --dump-main-config
170              Print main configuration values to stdout.
171
172
173       --dump-repo-config=REPO_ID,...
174              Print repository configuration values to stdout.
175              This is a list option which can be specified multiple times.
176              Accepted values are ids, or a glob of ids.
177
178
179       --dump-variables
180              Print variable values to stdout.
181
182
183       --enable-plugin=PLUGIN_NAME,...
184              Enable specified plugins for the purpose of the current DNF5 command.
185              This is a list option which can be specified multiple times.
186              Accepted values are names, or a glob of names.
187
188
189       --enable-repo=REPO_ID,...
190              Temporarily enable additional repositories for the purpose of the current DNF5 command.
191              This is a list option which can be specified multiple times.
192              Accepted values are ids, or a glob of ids.
193
194
195       --forcearch=ARCH
196              Force the use of a specific architecture.
197              See dnf5-forcearch(7) for more info.
198
199
200       -h, --help
201              Show the help.
202
203
204       --installroot=ABSOLUTE_PATH
205              Setup installroot path.
206              Absolute path is required.
207              See dnf5-installroot(7) for more info.
208
209
210       --no-best
211              Do not limit the transaction to the best candidates only.
212
213
214       --no-docs
215              Do not install any files that are marked as a documentation (which includes man pages and texinfo documents).
216              It sets the RPMTRANS_FLAG_NODOCS flag.
217
218
219       --no-gpgchecks
220              Skip checking GPG signatures on packages (if RPM policy allows that).
221
222
223       --no-plugins
224              Disable all plugins.
225
226
227       -q, --quiet
228              In  combination  with  a non-interactive command, shows just the
229              relevant content.  Suppresses messages notifying about the  cur‐
230              rent state or actions of DNF5.
231
232       --refresh
233              Force refreshing metadata before running the command.
234
235
236       --repo=REPO_ID,...
237              Enable just specified repositories.
238              This is a list option which can be specified multiple times.
239              Accepted values are ids, or a glob of ids.
240
241
242       --repofrompath=REPO_ID,REPO_PATH
243              Specify  a  repository  to add to the repositories only for this
244              run. Can be used multiple times.
245
246              The new repository id is specified by REPO_ID and its baseurl by
247              REPO_PATH.  Variables in both values are substituted before cre‐
248              ating the repo.
249
250              The configuration of the new repository can  be  adjusted  using
251              options --setopt=REPO_ID.option=value.
252
253              If  you want only packages from this repository to be available,
254              combine this option with --repo=REPO_ID switch.
255
256       --releasever=RELEASEVER
257              Override the value of the distribution release in configuration files.
258              This can affect cache paths, values in configuration files and mirrorlist URLs.
259
260
261       --setopt=[REPO_ID.]OPTION=VALUE
262              Override a configuration option from the configuration file.
263              The REPO_ID parameter is used to override options for repositories.
264
265
266              Values for the options like excludepkgs, includepkgs, installon‐
267              lypkgs  and  tsflags are appended to the original value, they do
268              not override it. However, specifying an empty value (e.g.  --se‐
269              topt=tsflags=) will clear the option.
270
271       --setvar=VAR_NAME=VALUE
272              Override a DNF5 variable value, like arch, releasever, etc.
273
274
275       --show-new-leaves
276              Show newly installed leaf packages and packages that became leaves after a transaction.
277
278
279       --skip-broken
280              Resolve any dependency problems by removing packages that are causing problems from the transaction.
281
282
283       -y, --assumeyes
284              Automatically answer yes for all questions.
285
286
287       -x PACKAGE-SPEC,..., --exclude=PACKAGE-SPEC,...
288              Exclude packages specified in PACKAGE-SPEC arguments from the transaction.
289              This is a list option.
290
291

METADATA SYNCHRONIZATION

293       Correct  operation  of  DNF5  depends on having an access to up-to-date
294       data from the all enabled repositories, but contacting  remote  mirrors
295       on  every  operation considerably slows it down and costs bandwidth for
296       both the client and the repository provider. The metadata_expire repos‐
297       itory  configuration option is used by DNF5 to determine whether a par‐
298       ticular local copy of repository data is due to  be  re-synced.  It  is
299       crucial  that the repository providers set the option well, namely to a
300       value where it is guaranteed that if particular metadata was  available
301       in  time T on the server, then all packages it references will still be
302       available for download from the server in time T + metadata_expire.
303
304       To further reduce the bandwidth load, some of the commands where having
305       up-to-date  metadata  is  not critical (e.g. the group list command) do
306       not look at whether a repository is expired and whenever any version of
307       it is locally available to the user's account, it will be used.
308
309       For  non-root  usages  it  can be also useful running entirely from the
310       system cache, don't update the cache and use it even in case it is  ex‐
311       pired by setting the cacheonly configuration option.  DNF5 uses a sepa‐
312       rate cache for each user under which it executes.  The  cache  for  the
313       root user is called the system cache. This option allows a regular user
314       read-only access to the system cache, which usually is more fresh  than
315       the user's and thus he does not have to wait for metadata sync.
316

CONFIGURATION FILES REPLACEMENT POLICY

318       The updated packages could replace the old modified configuration files
319       with the new ones or keep the older files. Neither of the files are ac‐
320       tually replaced. To the conflicting ones RPM gives additional suffix to
321       the origin name. Which file should maintain the true name after  trans‐
322       action  is  not controlled by package manager, but is specified by each
323       package itself, following packaging guideline.
324

EXIT CODES

326       The dnf5 command in general exits with the following return values:
327
328       0
329              Operation was successful.
330
331
332       1
333              An error occurred during processing of the command.
334
335
336       2
337              An error occurred during parsing the arguments.
338
339
340       Other exit codes could be returned by the specific command itself,  see
341       its documentation for more info.
342

FILES

344       Cache Files
345              /var/cache/libdnf5/
346
347       Main Configuration
348              /etc/dnf/dnf.conf
349
350       Repository Metadata
351              /etc/yum.repos.d/
352
353       Repository Persistence
354              /var/lib/dnf/
355
356       System state
357              /usr/lib/sysimage/libdnf5/
358

SEE ALSO

360       Commands in detail:
361              dnf5-advisory(8), Advisory command
362              dnf5-autoremove(8), Autoremove command
363              dnf5-clean(8), Clean command
364              dnf5-distro-sync(8), Distro-Sync command
365              dnf5-downgrade(8), Downgrade command
366              dnf5-download(8), Download command
367              dnf5-environment(8), Environment command
368              dnf5-group(8), Group command
369              dnf5-install(8), Install command
370              dnf5-leaves(8), Leaves command
371              dnf5-makecache(8), Makecache command
372              dnf5-mark(8), Mark command
373              dnf5-reinstall(8), Reinstall command
374              dnf5-remove(8), Remove command
375              dnf5-repo(8), Repo command
376              dnf5-repoquery(8), Repoquery command
377              dnf5-search(8), Search command
378              dnf5-swap(8), Swap command
379              dnf5-upgrade(8), Upgrade command
380
381
382       Plugins:
383              dnf5-builddep(8), Builddep command
384              dnf5-copr(8), Copr command
385              dnf5-needs-restarting(8), Needs-restarting command
386              dnf5-repoclosure(8), Repoclosure command
387
388
389       Miscellaneous:
390              dnf5-aliases(7), Aliases for command line arguments
391              dnf5-comps(7), Comps groups and environments
392              dnf5-forcearch(7), Forcearch parameter
393              dnf5-installroot(7), Installroot parameter
394              dnf5-specs(7), Patterns specification
395
396
397       Project homepage:
398              https://github.com/rpm-software-management/dnf5
399
400

AUTHOR

402       See AUTHORS.md in dnf5 source distribution.
403
405       Contributors to the dnf5 project.
406
407
408
409
410                                 Nov 24, 2023                          DNF5(8)
Impressum