Docs about dnf5/gpg signature checking
All checks were successful
/ flake8 (pull_request) Successful in 17s
/ bandit (pull_request) Successful in 19s
/ tests (fedora-44@sha256:5e1187ee4536674e08961cbe6b1b84dfc9df15a513dee328365909be5a0d5ed8) (pull_request) Successful in 1m8s
/ tests (fedora-43@sha256:cf1ef55da0d7dd9251b79263c4d1e2350d4291fcd6dc54a1e751d3fe2cf4614d) (pull_request) Successful in 1m11s
/ tests (centos-10@sha256:1f53b2b040e449b0cfce526f1a221e6dbd6648506270220ea333728a6b52a90b) (pull_request) Successful in 1m52s
/ tests (fedora-rawhide@sha256:5e1187ee4536674e08961cbe6b1b84dfc9df15a513dee328365909be5a0d5ed8) (pull_request) Successful in 53s
/ tests (centos-9@sha256:c5fe30a62d4b62b46acdf764bf1f7293e9fa4287972ec6a86ccb43209646dc32) (pull_request) Successful in 2m39s

Related: #4544
This commit is contained in:
Tomas Kopecek 2026-07-31 11:00:02 +02:00
commit 386068a40f
2 changed files with 33 additions and 1 deletions

View file

@ -91,6 +91,34 @@ to apply rlimit settings in *both* ``kojid.conf`` and ``site-defaults.cfg`` for
consistency.
.. _mock_gpg_verification:
GPG signature verification
==========================
Koji generates mock configs with ``gpgcheck=0`` in the yum/dnf configuration,
because packages in Koji's buildroot repos are unsigned.
Starting with Fedora 45, RPM defaults ``%_pkgverify_level`` to ``all``,
meaning RPM itself refuses to install unsigned packages regardless of the
dnf-level ``gpgcheck`` setting. This causes buildroot setup to fail with
``GPG check FAILED`` when installing packages from the Koji repo.
DNF5 (>= 5.2.14.0, available in Fedora 42+) has built-in support for
disabling per-package signature verification for repos with ``gpgcheck=0``.
For Fedora 45+ build tags, set ``mock.package_manager=dnf5`` to use this
mechanism:
::
koji edit-tag f45-build -x mock.package_manager=dnf5
Older Fedora versions and RHEL are not affected, as they default
``%_pkgverify_level`` to ``digest`` (or do not have the macro at all).
See :ref:`tuning-mock-per-tag` for other mock-related tag options.
.. _cli_mock_config:
Local mock configs

View file

@ -389,7 +389,11 @@ environment follows:
* ``mock.package_manager`` - If this is set, it will override mock's default
package manager. Typically used with ``yum`` or ``dnf`` values.
package manager. Typically used with ``yum``, ``dnf``, or ``dnf5`` values.
For Fedora 45+ targets, ``dnf5`` is recommended because it correctly handles
unsigned packages from repos with ``gpgcheck=0`` under RPM's enforced
signature checking (``%_pkgverify_level all``).
See :ref:`mock_gpg_verification` for details.
* ``mock.new_chroot`` - 0/1 value. If it is set, ``--new-chroot`` or
`--old-chroot` option is appended to any mock call. If it is not set, mock's