dnf-debuginfo-install

title: dnf-debuginfo-install(8)

summary: DNF debuginfo-install Plugin

text:
# dnf-debuginfo-install(8)

## NAME
dnf-debuginfo-install - DNF debuginfo-install Plugin

Install the associated debuginfo packages for a given package specification.

## SYNOPSIS
dnf debuginfo-install <pkg-spec>...

## ARGUMENTS
<pkg-spec>

The package to install the associated debuginfo package for.

## OPTIONS
All general DNF options are accepted, see Options in dnf(8) for details.

## CONFIGURATION
/etc/dnf/plugins/debuginfo-install.conf

The minimal content of conf file should contain main sections with enabled and autoupdate parameter.

autoupdate

A boolean option which controls updates of debuginfo packages. If options is enabled and there are debuginfo packages installed it automatically enables all configured debuginfo repositories. (Disabled by default.)

## EXAMPLES
dnf debuginfo-install foobar

Install the debuginfo packages for the foobar package.

dnf upgrade --enablerepo=*-debuginfo <package-name>-debuginfo

Upgrade debuginfo package of a <package-name>.

dnf upgrade --enablerepo=*-debuginfo "*-debuginfo"

Upgrade all debuginfo packages.

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+


dnf-download

package: dnf-plugins-core

title: dnf-download(8)

summary: DNF download Plugin

text:
# dnf-download(8)

## NAME
dnf-download - DNF download Plugin

Download binary or source packages.

## SYNOPSIS
dnf download [options] <pkg-spec>...

## ARGUMENTS
<pkg-spec>

Package specification for the package to download. Local RPMs can be specified as well. This is useful with the --source option or if you want to download the same RPM again.

## OPTIONS
All general DNF options are accepted, see Options in dnf(8) for details.

--help-cmd

Show this help.

--arch <arch>[,<arch>...]

Limit the query to packages of given architectures (default is all compatible architectures with your system). To download packages with arch incompatible with your system use --forcearch=<arch> option to change basearch.

--source

Download the source rpm. Enables source repositories of all enabled binary repositories.

--debuginfo

Download the debuginfo rpm. Enables debuginfo repositories of all enabled binary repositories.

--downloaddir

Download directory, default is the current directory (the directory must exist).

--url

Instead of downloading, print list of urls where the rpms can be downloaded.

--urlprotocol

Limit the protocol of the urls output by the --url option. Options are http, https, rsync, ftp.

--resolve

Resolves dependencies of specified packages and downloads missing dependencies in the system.

--alldeps

When used with --resolve, download all dependencies (do not skip already installed ones).

## EXAMPLES
dnf download dnf

Download the latest dnf package to the current directory.

dnf download --url dnf

Just print the remote location url where the dnf rpm can be downloaded from.

dnf download --url --urlprotocols=https --urlprotocols=rsync dnf

Same as above, but limit urls to https or rsync urls.

dnf download dnf --destdir /tmp/dnl

Download the latest dnf package to the /tmp/dnl directory (the directory must exist).

dnf download dnf --source

Download the latest dnf source package to the current directory.

dnf download rpm --debuginfo

Download the latest rpm-debuginfo package to the current directory.

dnf download btanks --resolve

Download the latest btanks package and the uninstalled dependencies to the current directory.

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+

branch: sisyphus


title: dnf-generate_completion_cache(8)

summary: DNF generate_completion_cache Plugin

text:
# dnf-generate_completion_cache(8)

## NAME
dnf-generate_completion_cache - DNF generate_completion_cache Plugin

Generates data to speed up shell completion for DNF. The user is not supposed to interact with the plugin in any way.

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+


dnf-groups-manager

title: dnf-groups-manager(8)

summary: DNF groups-manager Plugin

text:
# dnf-groups-manager(8)

## NAME
dnf-groups-manager - DNF groups-manager Plugin

Create and edit groups repository metadata files.

## SYNOPSIS
dnf groups-manager [options] [package-name-spec [package-name-spec ...]]

## DESCRIPTION
groups-manager plugin is used to create or edit a group metadata file for a repository. This is often much easier than writing/editing the XML by hand. The groups-manager can load an entire file of groups metadata and either create a new group or edit an existing group and then write all of the groups metadata back out.

## ARGUMENTS
<package-name-spec>

Package to add to a group or remove from a group.

## OPTIONS
All general DNF options are accepted, see Options in dnf(8) for details.

--load=<path_to_comps.xml>

Load the groups metadata information from the specified file before performing any operations. Metadata from all files are merged together if the option is specified multiple times.

--save=<path_to_comps.xml>

Save the result to this file. You can specify the name of a file you are loading from as the data will only be saved when all the operations have been performed. This option can also be specified multiple times.

--merge=<path_to_comps.xml>

This is the same as loading and saving a file, however the "merge" file is loaded before any others and saved last.

--print

Also print the result to stdout.

--id=<id>

The id to lookup/use for the group. If you don't specify an <id>, but do specify a name that doesn't refer to an existing group, then an id for the group is generated based on the name.

-n <name>, --name=<name>

The name to lookup/use for the group. If you specify an existing group id, then the group with that id will have it's name changed to this value.

--description=<description>

The description to use for the group.

--display-order=<display_order>

Change the integer which controls the order groups are presented in, for example in dnf grouplist.

--translated-name=<lang:text>

A translation of the group name in the given language. The syntax is lang:text. Eg. en:my-group-name-in-english

--translated-description=<lang:text>

A translation of the group description in the given language. The syntax is lang:text. Eg. en:my-group-description-in-english.

--user-visible

Make the group visible in dnf grouplist (this is the default).

--not-user-visible

Make the group not visible in dnf grouplist.

--mandatory

Store the package names specified within the mandatory section of the specified group, the default is to use the default section.

--optional

Store the package names specified within the optional section of the specified group, the default is to use the default section.

--remove

Instead of adding packages remove them. Note that the packages are removed from all sections (default, mandatory and optional).

--dependencies

Also include the names of the direct dependencies for each package specified.

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+


dnf-leaves

title: dnf-leaves(8)

summary: DNF leaves Plugin

text:
# dnf-leaves(8)

## NAME
dnf-leaves - DNF leaves Plugin

List installed packages not required by any other installed package.

## SYNOPSIS
dnf leaves

## DESCRIPTION
leaves lists all the packages installed on your system which are not required as a dependency of another installed package. However two or more packages might depend on eachother in a dependency cycle. Packages in such cycles, which are not required by any other package, are also listed.

## OPTIONS
All general DNF options are accepted, see Options in dnf(8) for details.

## WHY IS THIS USEFUL?
The list gives you a nice overview of what is installed on your system without flooding you with anything required by the packages already shown. The following list of arguments basically says the same thing in different ways:

- All the packages on this list is either needed by you, other users of the system or not needed at all -- if it was required by another installed package it would not be on the list.

- If you want to uninstall anything from your system (without breaking dependencies) it must involve at least one package on this list.

- If there is anything installed on the system which is not needed it must be on this list -- otherwise it would be required as a dependency by another package.

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+


dnf-local

title: dnf-local(8)

summary: DNF local Plugin

text:
# dnf-local(8)

## NAME
dnf-local - DNF local Plugin

## DESCRIPTION
Automatically copy all downloaded packages to a repository on the local filesystem and generating repo metadata.

Note:

Generating repo metadata will work only if you have installed createrepo_c package.

## CONFIGURATION
/etc/dnf/plugins/local.conf

The minimal content of conf file should contain main and createrepo sections with enabled parameter, otherwise plugin will not work.:

```
[main]
enabled = true
[createrepo]
enabled = true
```

For main section you can specify repodir paramater which sets path to local repository.

Other options and comments you can find in configuration file.

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+


dnf-modulesync

title: dnf-modulesync(8)

summary: DNF modulesync Plugin

text:
# dnf-modulesync(8)

## NAME
dnf-modulesync - DNF modulesync Plugin

Download packages from modules and/or create a repository with modular data.

## SYNOPSIS
dnf modulesync [options] [<module-spec>...]

## DESCRIPTION
modulesync downloads packages from modules according to provided arguments and creates a repository with modular data in working directory. In environment with modules it is recommend to use the command for redistribution of packages, because DNF does not allow installation of modular packages without modular metadata on the system (Fail-safe mechanism). The command without an argument creates a repository like createrepo_c but with modular metadata collected from all available repositories.

See examples.

## ARGUMENTS
<module-spec>

Module specification for the package to download. The argument is an optional.

## OPTIONS
All general DNF options are accepted. Namely, the --destdir option can be used to specify directory where packages will be downloaded and the new repository created. See Options in dnf(8) for details.

-n, --newest-only

Download only packages from the newest modules.

--enable_source_repos

Enable repositories with source packages

--enable_debug_repos

Enable repositories with debug-info and debug-source packages

--resolve

Resolve and download needed dependencies

## EXAMPLES
dnf modulesync nodejs

Download packages from nodejs module and crete a repository with modular metadata in working directory

dnf download nodejs

dnf modulesync

The first download command downloads nodejs package into working directory. In environment with modules nodejs package can be a modular package therefore when I create a repository I have to insert also modular metadata from available repositories to ensure 100% functionality. Instead of createrepo_c use dnf modulesync to create a repository in working directory with nodejs package and modular metadata.

dnf --destdir=/tmp/my-temp modulesync nodejs:14/minimal --resolve

Download package required for installation of minimal profile from module nodejs and stream 14 into directory /tmp/my-temp and all required dependencies. Then it will create a repository in /tmp/my-temp directory with previously downloaded packages and modular metadata from all available repositories.

dnf module install nodejs:14/minimal --downloadonly --destdir=/tmp/my-temp

dnf modulesync --destdir=/tmp/my-temp

The first dnf module install command downloads package from required for installation of minimal profile from module nodejs and stream 14 into directory /tmp/my-temp. The second command dnf modulesync will create a repository in /tmp/my-temp directory with previously downloaded packages and modular metadata from all available repositories. In comparison to dnf --destdir=/tmp/my-temp modulesync nodejs:14/minimal --resolve it will only download packages required for installation on current system.

## SEE ALSO
•

dnf(8), DNF Command Reference

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+


dnf-needs-restarting

title: dnf-needs-restarting(8)

summary: DNF needs_restarting Plugin

text:
# dnf-needs-restarting(8)

## NAME
dnf-needs-restarting - DNF needs_restarting Plugin

Check for running processes that should be restarted.

## SYNOPSIS
dnf needs-restarting [-u] [-r]

## DESCRIPTION
needs-restarting looks through running processes and tries to detect those that use files from packages that have been updated after the given process started. Such processes are reported by this tool.

Note that in most cases a process should survive update of its binary and libraries it is using without requiring to be restarted for proper operation. There are however specific cases when this does not apply. Separately, processes often need to be restarted to reflect security updates.

## OPTIONS
All general DNF options are accepted, see Options in dnf(8) for details.

-u, --useronly

Only consider processes belonging to the running user.

-r, --reboothint

Only report whether a reboot is required (exit code 1) or not (exit code 0).

-s, --services

Only list the affected systemd services.

## CONFIGURATION
/etc/dnf/plugins/needs-restarting.d/

/etc/dnf/plugins/needs-restarting.d/pkgname.conf

Packages can be added to needs-restarting via conf files in config directory. Config files need to have .conf extension or will be ignored.

More than one package is allowed in each file (one package per line) although it is advised to use one file for each package.

Example:

```
echo "dwm" > /etc/dnf/plugins/needs-restarting.d/dwm.conf
```

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+


dnf-post-transaction-actions

title: dnf-post-transaction-actions(8)

summary: DNF post transaction actions Plugin

text:
# dnf-post-transaction-actions(8)

## NAME
dnf-post-transaction-actions - DNF post transaction actions Plugin

## DESCRIPTION
The plugin allows to define actions to be executed upon completing an RPM transaction. Each action may define a (glob-like) filtering rule on the package NEVRA or package files, as well as whether the package was installed or removed. Actions are defined in action files.

## CONFIGURATION
The plugin configuration is in /etc/dnf/plugins/post-transaction-actions.conf. All configuration options are in the [main] section.

enabled

Whether the plugin is enabled. Default value is True.

actiondir

Path to the directory with action files. Action files must have the ".action" extension. Default value is "/etc/dnf/plugins/post-transaction-actions.d/".

## ACTION FILE FORMAT
Empty lines and lines that start with a '#' character are ignored. Each non-comment line defines an action and consists of three items separated by colons: package_filter:transaction_state:command.

package_filter

A (glob-like) filtering rule aplied on the package NEVRA (also in the shortened forms) or package files.

transaction_state

Filters packages according to their state in the transaction.

- in - packages that appeared on the system (downgrade, install, obsolete, reinstall, upgrade)

- out - packages that disappeared from the system (downgraded, obsoleted, remove, upgraded)

- any - all packages

command

Any shell command. The following variables in the command will be substituted:

- ${name}, $name - package name

- ${arch}, $arch - package arch

- ${ver}, $ver - package version

- ${rel}, $rel - package release

- ${epoch}, $epoch - package epoch

- ${repoid}, $repoid - package repository id

-

${state}, $state - the change of package state in the transaction:

"downgrade", "downgraded", "install", "obsolete", "obsoleted", "reinstall", "reinstalled", "remove", "upgrade", "upgraded"

The shell command will be evaluated for each package that matched the package_filter and the transaction_state. However, after variable substitution, any duplicate commands will be removed and each command will only be executed once per transaction. The order of execution of the commands follows the order in the action files, but may differ from the order of packages in the transaction. In other words, when you define several action lines for the same package_filter these lines will be executed in the order they were defined in the action file when the package_filter matches a package during the trasaction_state state. However, the order of when a particular package_filter is invoked depends on the position of the corresponding package in the transaction.

### An example action file:

```
# log all packages (state, nevra, repo) in transaction into a file.
*:any:echo '${state} ${name}-${epoch}:${ver}-${rel}.${arch} repo ${repoid}' >>/tmp/post-trans-actions-trans.log
# The same shell command (after variables substitution) is executed only once per transaction.
*:any:echo '${repoid}' >>/tmp/post-trans-actions-repos
# will write each repo only once to /tmp/post-trans-actions-repos, even if multiple packages from
# the same repo were matched
```

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+


dnf-repoclosure

title: dnf-repoclosure(8)

summary: DNF repoclosure Plugin

text:
# dnf-repoclosure(8)

## NAME
dnf-repoclosure - DNF repoclosure Plugin

Display a list of unresolved dependencies for repositories.

## SYNOPSIS
dnf repoclosure [<options>]

## DESCRIPTION
repoclosure is a program that reads package metadata from one or more repositories, checks all dependencies, and displays a list of packages with unresolved dependencies.

### Options
All general DNF options are accepted, see Options in dnf(8) for details.

--arch <arch>

Query only packages for specified architecture, can be specified multiple times (default is all compatible architectures with your system). To run repoclosure for arch incompatible with your system use --forcearch=<arch> option to change basearch.

--best

Check only the newest packages per arch.

--check <repoid>

Specify repo ids to check, can be specified multiple times (default is all enabled).

--newest

Check only the newest packages in the repos.

--pkg <pkg-spec>

Check closure for this package only.

--repo <repoid>

Specify repo ids to query, can be specified multiple times (default is all enabled).

## EXAMPLES
Display list of unresolved dependencies for all enabled repositories:

```
dnf repoclosure
```

Display list of unresolved dependencies for rawhide repository and packages with architecture noarch and x86_64:

```
dnf repoclosure --repo rawhide --arch noarch --arch x86_64
```

Display list of unresolved dependencies for zmap package from rawhide repository:

```
dnf repoclosure --repo rawhide --pkg zmap
```

Display list of unresolved dependencies for myrepo, an add-on for the rawhide repository:

```
dnf repoclosure --repo rawhide --check myrepo
```

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+


dnf-repodiff

title: dnf-repodiff(8)

summary: DNF repodiff Plugin

text:
# dnf-repodiff(8)

## NAME
dnf-repodiff - DNF repodiff Plugin

Display a list of differences between two or more repositories

## SYNOPSIS
dnf repodiff [<options>]

## DESCRIPTION
repodiff is a program which will list differences between two sets of repositories. Note that by default only source packages are compared.

### Options
All general DNF options are accepted, see Options in dnf(8) for details.

--repo-old=<repoid>, -o <repoid>

Add a <repoid> as an old repository. It is possible to be used in conjunction with --repofrompath option. Can be specified multiple times.

--repo-new=<repoid>, -n <repoid>

Add a <repoid> as a new repository. Can be specified multiple times.

--archlist=<arch>, -a <arch>

Add architectures to change the default from just comparing source packages. Note that you can use a wildcard "*" for all architectures. Can be specified multiple times.

--size, -s

Output additional data about the size of the changes.

--compare-arch

Normally packages are just compared based on their name, this flag makes the comparison also use the arch. So foo.noarch and foo.x86_64 are considered to be a different packages.

--simple

Output a simple one line message for modified packages.

--downgrade

Split the data for modified packages between upgraded and downgraded packages.

## EXAMPLES
Compare source pkgs in two local repos:

```
dnf repodiff --repofrompath=o,/tmp/repo-old --repofrompath=n,/tmp/repo-new --repo-old=o --repo-new=n
```

Compare x86_64 compat. binary pkgs in two remote repos, and two local one:

```
dnf repodiff --repofrompath=o,http://example.com/repo-old --repofrompath=n,http://example.com/repo-new --repo-old=o --repo-new=n --archlist=x86_64
```

Compare x86_64 compat. binary pkgs, but also compare architecture:

```
dnf repodiff --repofrompath=o,http://example.com/repo-old --repofrompath=n,http://example.com/repo-new --repo-old=o --repo-new=n --archlist=x86_64 --compare-arch
```

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+


dnf-repograph

title: dnf-repograph(8)

summary: DNF repograph Plugin

text:
# dnf-repograph(8)

## NAME
dnf-repograph - DNF repograph Plugin

Output a full package dependency graph in dot format.

## SYNOPSIS
dnf repograph [<options>] dnf repo-graph [<options>]

## DESCRIPTION
repograph is a program that generates a full package dependency list from a repository and outputs it in dot format.

### Options
All general DNF options are accepted, see Options in dnf(8) for details.

--repo <repoid>

Specify repo ids to query, can be specified multiple times (default is all enabled).

## EXAMPLES
Output dependency list from all enabled repositories:

```
dnf repograph
```

Output dependency list from rawhide repository:

```
dnf repograph --repoid rawhide
```

Output dependency list from rawhide and koji repository:

```
dnf repo-graph --repoid rawhide --repoid koji
```

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+


dnf-repomanage

title: dnf-repomanage(8)

summary: DNF repomanage Plugin

text:
# dnf-repomanage(8)

## NAME
dnf-repomanage - DNF repomanage Plugin

Manage a repository or a simple directory of rpm packages.

## SYNOPSIS
dnf repomanage [<optional-options>] [<options>] <path>

## DESCRIPTION
repomanage prints newest or older packages in a repository specified by <path> for easy piping to xargs or similar programs. In case <path> doesn't contain a valid repodata, it is searched for rpm packages which are then used instead. If the repodata are present, repomanage uses them as the source of truth, it doesn't verify that they match the present rpm packages. In fact, repomanage can run with just the repodata, no rpm packages are needed.

In order to work correctly with modular packages, <path> has to contain repodata with modular metadata. If modular content is present, repomanage prints packages from newest or older stream versions in addition to newest or older non-modular packages.

### Options
All general DNF options are accepted, see Options in dnf(8) for details.

The following options set what packages are displayed. These options are mutually exclusive, i.e. only one can be specified. If no option is specified, the newest packages are shown.

--old

Show older packages (for a package or a stream show all versions except the newest one).

--oldonly

Show older packages (same as --old, but exclude the newest packages even when it's included in the older stream versions).

--new

Show newest packages.

The following options control how packages are displayed in the output:

-s, --space

Print resulting set separated by space instead of newline.

-k <keep-number>, --keep <keep-number>

Limit the resulting set to newest <keep-number> packages.

## EXAMPLES
Display newest packages in current repository (directory):

```
dnf repomanage --new .
```

Display 2 newest versions of each package in "home" directory:

```
dnf repomanage --new --keep 2 ~/
```

Display oldest packages separated by space in current repository (directory):

```
dnf repomanage --old --space .
```

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+


dnf-reposync

title: dnf-reposync(8)

summary: DNF reposync Plugin

text:
# dnf-reposync(8)

## NAME
dnf-reposync - DNF reposync Plugin

Synchronize packages of a remote DNF repository to a local directory.

## SYNOPSIS
dnf reposync [options]

## DESCRIPTION
reposync makes local copies of remote repositories. Packages that are already present in the local directory are not downloaded again.

## OPTIONS
All general DNF options are accepted. Namely, the --repoid option can be used to specify the repositories to synchronize. See Options in dnf(8) for details.

-a <architecture>, --arch=<architecture>

Download only packages of given architectures (default is all architectures). Can be used multiple times.

--delete

Delete local packages no longer present in repository.

--download-metadata

Download all repository metadata. Downloaded copy is instantly usable as a repository, no need to run createrepo_c on it.

-g, --gpgcheck

Remove packages that fail GPG signature checking after downloading. Exit code is 1 if at least one package was removed. Note that for repositories with gpgcheck=0 set in their configuration the GPG signature is not checked even with this option used.

-m, --downloadcomps

Also download and uncompress comps.xml. Consider using --download-metadata option which will download all available repository metadata.

--metadata-path

Root path under which the downloaded metadata are stored. It defaults to --download-path value if not given.

-n, --newest-only

Download only newest packages per-repo.

--norepopath

Don't add the reponame to the download path. Can only be used when syncing a single repository (default is to add the reponame).

-p <download-path>, --download-path=<download-path>

Root path under which the downloaded repositories are stored, relative to the current working directory. Defaults to the current working directory. Every downloaded repository has a subdirectory named after its ID under this path.

--remote-time

Try to set the timestamps of the downloaded files to those on the remote side.

--source

Download only source packages.

-u, --urls

Just print urls of what would be downloaded, don't download.

## EXAMPLES
dnf reposync --repoid=the_repo

Synchronize all packages from the repository with id "the_repo". The synchronized copy is saved in "the_repo" subdirectory of the current working directory.

dnf reposync -p /my/repos/path --repoid=the_repo

Synchronize all packages from the repository with id "the_repo". In this case files are saved in "/my/repos/path/the_repo" directory.

dnf reposync --repoid=the_repo --download-metadata

Synchronize all packages and metadata from "the_repo" repository.

Repository synchronized with --download-metadata option can be directly used in DNF for example by using --repofrompath option:

dnf --repofrompath=syncedrepo,the_repo --repoid=syncedrepo list --available

## SEE ALSO
•

dnf(8), DNF Command Reference

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+


dnf-show-leaves

title: dnf-show-leaves(8)

summary: DNF show-leaves Plugin

text:
# dnf-show-leaves(8)

## NAME
dnf-show-leaves - DNF show-leaves Plugin

Shows newly installed leaf packages and packages that became leaves after a transaction.

For more information about leaf packages, see documentation for the leaves DNF plugin.

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+


dnf-versionlock

title: dnf-versionlock(8)

summary: DNF versionlock Plugin

text:
# dnf-versionlock(8)

## NAME
dnf-versionlock - DNF versionlock Plugin

## DESCRIPTION
versionlock is a plugin that takes a set of names and versions for packages and excludes all other versions of those packages. This allows you to protect packages from being updated by newer versions. Alternately, it accepts a specific package version to exclude from updates, e.g. for when it's necessary to skip a specific release of a package that has known issues.

The plugin provides a command versionlock which allows you to view and edit the list of locked packages easily.

The plugin will walk each line of the versionlock file, and parse out the name and version of the package. It will then exclude any package by that name that doesn't match one of the versions listed within the file. This is basically the same as using dnf --exclude for the package name itself (as you cannot exclude installed packages), but dnf will still see the versions you have installed/versionlocked as available so that dnf reinstall will still work, etc.

It can also work in the opposite way, like a fast exclude, by prefixing a '!' character to the version recorded in the lock list file. This specifically excludes a package that matches the version exactly.

Note the versionlock plugin does not apply any excludes in non-transactional operations like repoquery, list, info, etc.

## SYNOPSIS
dnf versionlock [options] [add|exclude|list|delete|clear] [<package-name-spec>]

## ARGUMENTS
<package-name-spec>

Package spec to lock or exclude.

## SUBCOMMANDS
dnf versionlock add <package-name-spec>

Add a versionlock for all available packages matching the spec. It means that only versions of packages represented by <package-name-spec> will be available for transaction operations. Each <package-name-spec> is converted to concrete NEVRAs which are used for locking. The NEVRAs to lock to are first searched among installed packages and then (if none is found) in all currently available packages. Examples:

```
Locking a package to the version installed:

    $ dnf repoquery --installed bash

    bash-0:5.0.7-1.fc30.x86_64

    $ dnf repoquery bash

    bash-0:5.0.2-1.fc30.i686

    bash-0:5.0.2-1.fc30.x86_64

    bash-0:5.0.7-1.fc30.i686

    bash-0:5.0.7-1.fc30.x86_64

    $ dnf versionlock add bash

    Adding versionlock on: bash-0:5.0.7-1.fc30.*
Locking not installed package to any of available versions:

    $ dnf repoquery --installed mutt

    $ dnf repoquery mutt

    mutt-5:1.11.4-1.fc30.x86_64

    mutt-5:1.12.1-3.fc30.x86_64

    $ dnf versionlock add mutt

    Adding versionlock on: mutt-5:1.11.4-1.fc30.*

    Adding versionlock on: mutt-5:1.12.1-3.fc30.*
```

Note:

Be careful when adding specific versions If you add a package specifying a version with dnf versionlock mutt-5:1.11.4-1.fc30.x86_64 then, if you run dnf versionlock add mutt versionlock will not add mutt-5:1.12.1-3.fc30.x86_64.

dnf versionlock exclude <package-name-spec>

Add an exclude (within versionlock) for the available packages matching the spec. It means that packages represented by <package-name-spec> will be excluded from transaction operations.

dnf versionlock list or dnf versionlock

List the current versionlock entries.

dnf versionlock delete <package-name-spec>

Remove any matching versionlock entries.

dnf versionlock clear

Remove all versionlock entries.

## OPTIONS
All general DNF options are accepted, see Options in dnf(8) for details.

--raw

Do not resolve <package-name-spec> to NEVRAs to find specific version to lock to. Instead <package-name-spec> are used as they are. This enables locking to not yet available versions of the package. For example you may want to keep the bash package on major version 5 and consume any future updates as far as they keep the major version:

```
$ dnf versionlock add --raw 'bash-5.*'
Adding versionlock on: bash-5.*
```

## CONFIGURATION
/etc/dnf/plugins/versionlock.conf

The minimal content of conf file should contain main sections with enabled and locklist parameters.

locklist

This option is a string that points to the file which has the versionlock information in it. Note that the file has to exist (or the versionlock plugin will make dnf exit). However, it can be empty. The file takes entries in the format of <package-name-spec> (optionally prefixed with '!' for excludes). See Specifying packages in dnf(8) for details.

## NOTES
A specified package does not have to exist within the available cache of repository data to be considered valid for locking or exclusion. This is by design, to accommodate use cases such as a presently disabled repository. However, a package must exist in the repository cache when the add or exclude subcommands are invoked for it.

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+


yum-copr

title: yum-copr(8)

summary: redirecting to DNF copr Plugin

text:
# yum-copr(8)

## NAME
yum-copr - redirecting to DNF copr Plugin

Work with Copr & Playground repositories on the local system.

- The copr command is used to add or remove Copr repositories to the local system

- The playground is used to enable or disable the Playground repository

## SYNOPSIS
dnf copr [enable|disable|remove|list|search] <parameters>

dnf playground [enable|disable|upgrade]

## ARGUMENTS (COPR)
enable name/project [chroot]

Enable the name/project Copr repository with the optional chroot.

disable name/project

Disable the name/project Copr repository.

remove name/project

Remove the name/project Copr repository.

list --installed

List installed Copr repositories (default).

list --enabled

List enabled Copr repositories.

list --disabled

List disabled Copr repositories.

list --available-by-user=name

List available Copr repositories for a given name.

search project

Search for a given project.

enable hub/name/project

Enable the name/project Copr repository from the specified Copr hub, Hub is be specified either by its hostname (eg. copr.fedorainfracloud.org) or by an ID that's defined in a configuration file.

## OPTIONS (COPR)
All general DNF options are accepted, see Options in dnf(8) for details.

--hub Copr

Specify a Copr hub to use. Default is the Fedora Copr: https://copr.fedorainfracloud.org.

## CONFIGURATION (COPR)
/etc/dnf/plugins/copr.conf /etc/dnf/plugins/copr.d/

Configuration file should contain a section for each hub, each section having hostname

(mandatory), protocol (default https) and port (default 443) parameters.:

```
[fedora]
hostname = copr.fedorainfracloud.org
protocol = https
port = 443
```

## ARGUMENTS (PLAYGROUND)
enable

Enable the Playground repository.

disable

Disable the Playground repository.

upgrade

Upgrade the Playground repository settings (same as disable and then enable).

## OPTIONS (PLAYGROUND)
All general DNF options are accepted, see Options in dnf(8) for details.

## EXAMPLES
copr enable rhscl/perl516 epel-6-x86_64

Enable the rhscl/perl516 Copr repository, using the epel-6-x86_64 chroot.

copr disable rhscl/perl516

Disable the rhscl/perl516 Copr repository

copr list --available-by-user=rita

List available Copr projects for user rita.

copr search tests

Search for Copr projects named tests.

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+


yum-versionlock

title: yum-versionlock(8)

summary: redirecting to DNF versionlock Plugin

text:
# yum-versionlock(8)

## NAME
yum-versionlock - redirecting to DNF versionlock Plugin

## DESCRIPTION
versionlock is a plugin that takes a set of names and versions for packages and excludes all other versions of those packages. This allows you to protect packages from being updated by newer versions. Alternately, it accepts a specific package version to exclude from updates, e.g. for when it's necessary to skip a specific release of a package that has known issues.

The plugin provides a command versionlock which allows you to view and edit the list of locked packages easily.

The plugin will walk each line of the versionlock file, and parse out the name and version of the package. It will then exclude any package by that name that doesn't match one of the versions listed within the file. This is basically the same as using dnf --exclude for the package name itself (as you cannot exclude installed packages), but dnf will still see the versions you have installed/versionlocked as available so that dnf reinstall will still work, etc.

It can also work in the opposite way, like a fast exclude, by prefixing a '!' character to the version recorded in the lock list file. This specifically excludes a package that matches the version exactly.

Note the versionlock plugin does not apply any excludes in non-transactional operations like repoquery, list, info, etc.

## SYNOPSIS
dnf versionlock [options] [add|exclude|list|delete|clear] [<package-name-spec>]

## ARGUMENTS
<package-name-spec>

Package spec to lock or exclude.

## SUBCOMMANDS
dnf versionlock add <package-name-spec>

Add a versionlock for all available packages matching the spec. It means that only versions of packages represented by <package-name-spec> will be available for transaction operations. Each <package-name-spec> is converted to concrete NEVRAs which are used for locking. The NEVRAs to lock to are first searched among installed packages and then (if none is found) in all currently available packages. Examples:

```
Locking a package to the version installed:

    $ dnf repoquery --installed bash

    bash-0:5.0.7-1.fc30.x86_64

    $ dnf repoquery bash

    bash-0:5.0.2-1.fc30.i686

    bash-0:5.0.2-1.fc30.x86_64

    bash-0:5.0.7-1.fc30.i686

    bash-0:5.0.7-1.fc30.x86_64

    $ dnf versionlock add bash

    Adding versionlock on: bash-0:5.0.7-1.fc30.*
Locking not installed package to any of available versions:

    $ dnf repoquery --installed mutt

    $ dnf repoquery mutt

    mutt-5:1.11.4-1.fc30.x86_64

    mutt-5:1.12.1-3.fc30.x86_64

    $ dnf versionlock add mutt

    Adding versionlock on: mutt-5:1.11.4-1.fc30.*

    Adding versionlock on: mutt-5:1.12.1-3.fc30.*
```

Note:

Be careful when adding specific versions If you add a package specifying a version with dnf versionlock mutt-5:1.11.4-1.fc30.x86_64 then, if you run dnf versionlock add mutt versionlock will not add mutt-5:1.12.1-3.fc30.x86_64.

dnf versionlock exclude <package-name-spec>

Add an exclude (within versionlock) for the available packages matching the spec. It means that packages represented by <package-name-spec> will be excluded from transaction operations.

dnf versionlock list or dnf versionlock

List the current versionlock entries.

dnf versionlock delete <package-name-spec>

Remove any matching versionlock entries.

dnf versionlock clear

Remove all versionlock entries.

## OPTIONS
All general DNF options are accepted, see Options in dnf(8) for details.

--raw

Do not resolve <package-name-spec> to NEVRAs to find specific version to lock to. Instead <package-name-spec> are used as they are. This enables locking to not yet available versions of the package. For example you may want to keep the bash package on major version 5 and consume any future updates as far as they keep the major version:

```
$ dnf versionlock add --raw 'bash-5.*'
Adding versionlock on: bash-5.*
```

## CONFIGURATION
/etc/dnf/plugins/versionlock.conf

The minimal content of conf file should contain main sections with enabled and locklist parameters.

locklist

This option is a string that points to the file which has the versionlock information in it. Note that the file has to exist (or the versionlock plugin will make dnf exit). However, it can be empty. The file takes entries in the format of <package-name-spec> (optionally prefixed with '!' for excludes). See Specifying packages in dnf(8) for details.

## NOTES
A specified package does not have to exist within the available cache of repository data to be considered valid for locking or exclusion. This is by design, to accommodate use cases such as a presently disabled repository. However, a package must exist in the repository cache when the add or exclude subcommands are invoked for it.

## Author
See AUTHORS in your Core DNF Plugins distribution

## Copyright
2014, Red Hat, Licensed under GPLv2+