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       repoclosure
109              Display a list of unresolved dependencies for repositories.
110
111

OPTIONS

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

METADATA SYNCHRONIZATION

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

CONFIGURATION FILES REPLACEMENT POLICY

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

EXIT CODES

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

FILES

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

SEE ALSO

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

AUTHOR

397       See AUTHORS.md in dnf5 source distribution.
398
400       Contributors to the dnf5 project.
401
402
403
404
405                                 Nov 09, 2023                          DNF5(8)
Impressum