forked from rpms/dnf-plugins-core
import dnf-plugins-core-4.0.12-3.el8
This commit is contained in:
parent
8b33c47539
commit
76e15a06e3
@ -1 +1 @@
|
|||||||
e189d7f2acca298cd42b2dc18345b42fadf5e2f4 SOURCES/dnf-plugins-core-4.0.8.tar.gz
|
5618d7b20c37876e97e4e508952229835a430281 SOURCES/dnf-plugins-core-4.0.12.tar.gz
|
||||||
|
2
.gitignore
vendored
2
.gitignore
vendored
@ -1 +1 @@
|
|||||||
SOURCES/dnf-plugins-core-4.0.8.tar.gz
|
SOURCES/dnf-plugins-core-4.0.12.tar.gz
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,72 @@
|
|||||||
|
From 8a9d9b7c09fb126baac22eda8ebb940412f4464c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Marek Blaha <mblaha@redhat.com>
|
||||||
|
Date: Wed, 27 Nov 2019 13:43:58 +0100
|
||||||
|
Subject: [PATCH] [reposync] Fix --delete with multiple repos (RhBug:1774103)
|
||||||
|
|
||||||
|
When reposync was used with --delete option and multiple repositories
|
||||||
|
to sync, only packages from the latest repository were kept and all
|
||||||
|
downloaded content from former repositories was imediately deleted.
|
||||||
|
|
||||||
|
Additionaly it fixes the problem with multiple packages having the same
|
||||||
|
filename (in different subdirectories) in one repository. In this case
|
||||||
|
when --delete option was used, only one of those files was kept and the
|
||||||
|
others were deleted.
|
||||||
|
|
||||||
|
https://bugzilla.redhat.com/show_bug.cgi?id=1774103
|
||||||
|
---
|
||||||
|
plugins/reposync.py | 35 +++++++++++++++--------------------
|
||||||
|
1 file changed, 15 insertions(+), 20 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/plugins/reposync.py b/plugins/reposync.py
|
||||||
|
index 10e9b0b5..fc612a7e 100644
|
||||||
|
--- a/plugins/reposync.py
|
||||||
|
+++ b/plugins/reposync.py
|
||||||
|
@@ -145,7 +145,7 @@ def run(self):
|
||||||
|
else:
|
||||||
|
self.download_packages(pkglist)
|
||||||
|
if self.opts.delete:
|
||||||
|
- self.delete_old_local_packages(pkglist)
|
||||||
|
+ self.delete_old_local_packages(repo, pkglist)
|
||||||
|
|
||||||
|
def repo_target(self, repo):
|
||||||
|
return _pkgdir(self.opts.destdir or self.opts.download_path, repo.id)
|
||||||
|
@@ -169,25 +169,20 @@ def pkg_download_path(self, pkg):
|
||||||
|
pkg_download_path, repo_target))
|
||||||
|
return pkg_download_path
|
||||||
|
|
||||||
|
- def delete_old_local_packages(self, packages_to_download):
|
||||||
|
- download_map = dict()
|
||||||
|
- for pkg in packages_to_download:
|
||||||
|
- download_map[(pkg.repo.id, os.path.basename(pkg.location))] = pkg.location
|
||||||
|
- # delete any *.rpm file, that is not going to be downloaded from repository
|
||||||
|
- for repo in self.base.repos.iter_enabled():
|
||||||
|
- repo_target = self.repo_target(repo)
|
||||||
|
- for dirpath, dirnames, filenames in os.walk(repo_target):
|
||||||
|
- for filename in filenames:
|
||||||
|
- path = os.path.join(dirpath, filename)
|
||||||
|
- if filename.endswith('.rpm') and os.path.isfile(path):
|
||||||
|
- location = download_map.get((repo.id, filename))
|
||||||
|
- if location is None or os.path.join(repo_target, location) != path:
|
||||||
|
- # Delete disappeared or relocated file
|
||||||
|
- try:
|
||||||
|
- os.unlink(path)
|
||||||
|
- logger.info(_("[DELETED] %s"), path)
|
||||||
|
- except OSError:
|
||||||
|
- logger.error(_("failed to delete file %s"), path)
|
||||||
|
+ def delete_old_local_packages(self, repo, pkglist):
|
||||||
|
+ # delete any *.rpm file under target path, that was not downloaded from repository
|
||||||
|
+ downloaded_files = set(self.pkg_download_path(pkg) for pkg in pkglist)
|
||||||
|
+ for dirpath, dirnames, filenames in os.walk(self.repo_target(repo)):
|
||||||
|
+ for filename in filenames:
|
||||||
|
+ path = os.path.join(dirpath, filename)
|
||||||
|
+ if filename.endswith('.rpm') and os.path.isfile(path):
|
||||||
|
+ if path not in downloaded_files:
|
||||||
|
+ # Delete disappeared or relocated file
|
||||||
|
+ try:
|
||||||
|
+ os.unlink(path)
|
||||||
|
+ logger.info(_("[DELETED] %s"), path)
|
||||||
|
+ except OSError:
|
||||||
|
+ logger.error(_("failed to delete file %s"), path)
|
||||||
|
|
||||||
|
def getcomps(self, repo):
|
||||||
|
comps_fn = repo._repo.getCompsFn()
|
@ -0,0 +1,56 @@
|
|||||||
|
From b60770dba985dfaab8bedc04e7c3b6a5c3a59d51 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jaroslav Mracek <jmracek@redhat.com>
|
||||||
|
Date: Fri, 29 Nov 2019 10:48:55 +0100
|
||||||
|
Subject: [PATCH] Redesign reposync --newest_only for modular system
|
||||||
|
(RhBug:1775434)
|
||||||
|
|
||||||
|
reposync --newest_only will download all latest non-modular packages
|
||||||
|
plus all packages for contexts with latest version for each module
|
||||||
|
stream.
|
||||||
|
|
||||||
|
https://bugzilla.redhat.com/show_bug.cgi?id=1775434
|
||||||
|
---
|
||||||
|
plugins/reposync.py | 26 +++++++++++++++++++++++++-
|
||||||
|
1 file changed, 25 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/plugins/reposync.py b/plugins/reposync.py
|
||||||
|
index 10e9b0b5..c1bc6a99 100644
|
||||||
|
--- a/plugins/reposync.py
|
||||||
|
+++ b/plugins/reposync.py
|
||||||
|
@@ -203,11 +203,35 @@ def download_metadata(self, repo):
|
||||||
|
repo._repo.downloadMetadata(repo_target)
|
||||||
|
return True
|
||||||
|
|
||||||
|
+ def _get_latest(self, query):
|
||||||
|
+ """
|
||||||
|
+ return query with latest nonmodular package and all packages from latest version per stream
|
||||||
|
+ """
|
||||||
|
+ if not dnf.base.WITH_MODULES:
|
||||||
|
+ return query.latest()
|
||||||
|
+ query.apply()
|
||||||
|
+ module_packages = self.base._moduleContainer.getModulePackages()
|
||||||
|
+ all_artifacts = set()
|
||||||
|
+ module_dict = {} # {NameStream: {Version: [modules]}}
|
||||||
|
+ for module_package in module_packages:
|
||||||
|
+ all_artifacts.update(module_package.getArtifacts())
|
||||||
|
+ module_dict.setdefault(module_package.getNameStream(), {}).setdefault(
|
||||||
|
+ module_package.getVersionNum(), []).append(module_package)
|
||||||
|
+ non_modular_latest = query.filter(
|
||||||
|
+ pkg__neq=query.filter(nevra_strict=all_artifacts)).latest()
|
||||||
|
+ latest_artifacts = set()
|
||||||
|
+ for version_dict in module_dict.values():
|
||||||
|
+ keys = sorted(version_dict.keys(), reverse=True)
|
||||||
|
+ for module in version_dict[keys[0]]:
|
||||||
|
+ latest_artifacts.update(module.getArtifacts())
|
||||||
|
+ latest_modular_query = query.filter(nevra_strict=latest_artifacts)
|
||||||
|
+ return latest_modular_query.union(non_modular_latest)
|
||||||
|
+
|
||||||
|
def get_pkglist(self, repo):
|
||||||
|
query = self.base.sack.query(flags=hawkey.IGNORE_MODULAR_EXCLUDES).available().filterm(
|
||||||
|
reponame=repo.id)
|
||||||
|
if self.opts.newest_only:
|
||||||
|
- query = query.latest()
|
||||||
|
+ query = self._get_latest(query)
|
||||||
|
if self.opts.source:
|
||||||
|
query.filterm(arch='src')
|
||||||
|
elif self.opts.arches:
|
@ -1,152 +0,0 @@
|
|||||||
From 322125be1b32e9fedb2a9ea25e6e9af5f255e225 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jaroslav Mracek <jmracek@redhat.com>
|
|
||||||
Date: Wed, 26 Jun 2019 14:56:00 +0200
|
|
||||||
Subject: [PATCH 1/2] [spec] Rename dnf-utils to yum-utils (RhBug:1722093)
|
|
||||||
|
|
||||||
https://bugzilla.redhat.com/show_bug.cgi?id=1722093
|
|
||||||
---
|
|
||||||
dnf-plugins-core.spec | 29 ++++++++++++++++++-----------
|
|
||||||
1 file changed, 18 insertions(+), 11 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/dnf-plugins-core.spec b/dnf-plugins-core.spec
|
|
||||||
index 154ee7f..be01cd2 100644
|
|
||||||
--- a/dnf-plugins-core.spec
|
|
||||||
+++ b/dnf-plugins-core.spec
|
|
||||||
@@ -1,6 +1,7 @@
|
|
||||||
%{?!dnf_lowest_compatible: %global dnf_lowest_compatible 4.2.1}
|
|
||||||
%global dnf_plugins_extra 2.0.0
|
|
||||||
%global hawkey_version 0.34.0
|
|
||||||
+%global yum_utils_subpackage_name dnf-utils
|
|
||||||
|
|
||||||
%if 0%{?rhel} && 0%{?rhel} <= 7
|
|
||||||
%bcond_with python3
|
|
||||||
@@ -15,15 +16,16 @@
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{?rhel} > 7 || 0%{?fedora} > 30
|
|
||||||
+%global yum_utils_subpackage_name yum-utils
|
|
||||||
%bcond_without yumcompatibility
|
|
||||||
%else
|
|
||||||
%bcond_with yumcompatibility
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{?rhel} && 0%{?rhel} <= 7
|
|
||||||
-%bcond_with dnfutils
|
|
||||||
+%bcond_with yumutils
|
|
||||||
%else
|
|
||||||
-%bcond_without dnfutils
|
|
||||||
+%bcond_without yumutils
|
|
||||||
%endif
|
|
||||||
|
|
||||||
Name: dnf-plugins-core
|
|
||||||
@@ -161,12 +163,17 @@ repoclosure, repograph, repomanage, reposync, changelog and repodiff commands.
|
|
||||||
Additionally provides generate_completion_cache passive plugin.
|
|
||||||
%endif
|
|
||||||
|
|
||||||
-%if %{with dnfutils}
|
|
||||||
-%package -n dnf-utils
|
|
||||||
+%if %{with yumutils}
|
|
||||||
+%package -n %{yum_utils_subpackage_name}
|
|
||||||
+%if "%{yum_utils_subpackage_name}" == "dnf-utils"
|
|
||||||
Conflicts: yum-utils < 1.1.31-513
|
|
||||||
%if 0%{?rhel} != 7
|
|
||||||
Provides: yum-utils = %{version}-%{release}
|
|
||||||
%endif
|
|
||||||
+%else
|
|
||||||
+Provides: dnf-utils = %{version}-%{release}
|
|
||||||
+Obsoletes: dnf-utils < %{version}-%{release}
|
|
||||||
+%endif
|
|
||||||
Requires: dnf >= %{dnf_lowest_compatible}
|
|
||||||
Requires: %{name} = %{version}-%{release}
|
|
||||||
%if %{with python3}
|
|
||||||
@@ -176,7 +183,7 @@ Requires: python2-dnf >= %{dnf_lowest_compatible}
|
|
||||||
%endif
|
|
||||||
Summary: Yum-utils CLI compatibility layer
|
|
||||||
|
|
||||||
-%description -n dnf-utils
|
|
||||||
+%description -n %{yum_utils_subpackage_name}
|
|
||||||
As a Yum-utils CLI compatibility layer, supplies in CLI shims for
|
|
||||||
debuginfo-install, repograph, package-cleanup, repoclosure, repomanage,
|
|
||||||
repoquery, reposync, repotrack, repodiff, builddep, config-manager, debug
|
|
||||||
@@ -393,7 +400,7 @@ pushd build-py3
|
|
||||||
popd
|
|
||||||
%endif
|
|
||||||
%find_lang %{name}
|
|
||||||
-%if %{with dnfutils}
|
|
||||||
+%if %{with yumutils}
|
|
||||||
%if %{with python3}
|
|
||||||
mv %{buildroot}%{_libexecdir}/dnf-utils-3 %{buildroot}%{_libexecdir}/dnf-utils
|
|
||||||
%else
|
|
||||||
@@ -402,7 +409,7 @@ popd
|
|
||||||
%endif
|
|
||||||
rm -vf %{buildroot}%{_libexecdir}/dnf-utils-*
|
|
||||||
|
|
||||||
-%if %{with dnfutils}
|
|
||||||
+%if %{with yumutils}
|
|
||||||
mkdir -p %{buildroot}%{_bindir}
|
|
||||||
ln -sf %{_libexecdir}/dnf-utils %{buildroot}%{_bindir}/debuginfo-install
|
|
||||||
ln -sf %{_libexecdir}/dnf-utils %{buildroot}%{_bindir}/needs-restarting
|
|
||||||
@@ -523,8 +530,8 @@ PYTHONPATH=./plugins nosetests-%{python3_version} -s tests/
|
|
||||||
%{python3_sitelib}/dnfpluginscore/
|
|
||||||
%endif
|
|
||||||
|
|
||||||
-%if %{with dnfutils}
|
|
||||||
-%files -n dnf-utils
|
|
||||||
+%if %{with yumutils}
|
|
||||||
+%files -n %{yum_utils_subpackage_name}
|
|
||||||
%{_libexecdir}/dnf-utils
|
|
||||||
%{_bindir}/debuginfo-install
|
|
||||||
%{_bindir}/needs-restarting
|
|
||||||
@@ -556,13 +563,13 @@ PYTHONPATH=./plugins nosetests-%{python3_version} -s tests/
|
|
||||||
%{_mandir}/man1/yumdownloader.*
|
|
||||||
%{_mandir}/man1/package-cleanup.*
|
|
||||||
%{_mandir}/man1/dnf-utils.*
|
|
||||||
-# These are only built with dnfutils bcond.
|
|
||||||
+# These are only built with yumutils bcond.
|
|
||||||
%{_mandir}/man1/find-repos-of-install.*
|
|
||||||
%{_mandir}/man1/repoquery.*
|
|
||||||
%{_mandir}/man1/repotrack.*
|
|
||||||
%{_mandir}/man1/yum-utils.*
|
|
||||||
%else
|
|
||||||
-# These are built regardless of dnfutils bcond so we need to exclude them.
|
|
||||||
+# These are built regardless of yumutils bcond so we need to exclude them.
|
|
||||||
%exclude %{_mandir}/man1/debuginfo-install.*
|
|
||||||
%exclude %{_mandir}/man1/needs-restarting.*
|
|
||||||
%exclude %{_mandir}/man1/repo-graph.*
|
|
||||||
--
|
|
||||||
2.21.0
|
|
||||||
|
|
||||||
|
|
||||||
From a58ded1019343ea50cf40bd94ad6aaf69fa91a37 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jaroslav Mracek <jmracek@redhat.com>
|
|
||||||
Date: Thu, 27 Jun 2019 09:22:29 +0200
|
|
||||||
Subject: [PATCH 2/2] [doc] Changed header in dnf-utils/yum-utils documentation
|
|
||||||
(RhBug:1722093)
|
|
||||||
|
|
||||||
The documentation is mainly yum-utils description and package from
|
|
||||||
Fedora 31 is going to be renamed to yum-utils, therefore the primary
|
|
||||||
name in documentation should be yum-utils.
|
|
||||||
|
|
||||||
https://bugzilla.redhat.com/show_bug.cgi?id=1722093
|
|
||||||
---
|
|
||||||
doc/dnf-utils.rst | 4 ++--
|
|
||||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/doc/dnf-utils.rst b/doc/dnf-utils.rst
|
|
||||||
index 02dfc1d..311e980 100644
|
|
||||||
--- a/doc/dnf-utils.rst
|
|
||||||
+++ b/doc/dnf-utils.rst
|
|
||||||
@@ -1,8 +1,8 @@
|
|
||||||
=========
|
|
||||||
-DNF Utils
|
|
||||||
+YUM Utils
|
|
||||||
=========
|
|
||||||
|
|
||||||
-The main purpose of these shims is ensuring backward compatibility.
|
|
||||||
+The main purpose of these shims is ensuring backward compatibility with yum-3.
|
|
||||||
|
|
||||||
--------------
|
|
||||||
Shell Commands
|
|
||||||
--
|
|
||||||
2.21.0
|
|
||||||
|
|
@ -1,121 +0,0 @@
|
|||||||
From 5a3b3bf30c37ebdcf7f3e25d4eac7039acfe57c4 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Marek Blaha <mblaha@redhat.com>
|
|
||||||
Date: Fri, 31 May 2019 09:48:13 +0200
|
|
||||||
Subject: [PATCH] [builddep] Report all rpm errors (RhBug:1663619,1658292,1724668)
|
|
||||||
|
|
||||||
Dnf uses rpm for parsing .spec and srpm files. Any parsing
|
|
||||||
errors were not reported to the user, but swallowed by dnf.
|
|
||||||
User was only informed that the spec file could not be parsed:
|
|
||||||
|
|
||||||
$ dnf builddep gdb.spec
|
|
||||||
Failed to open: 'gdb.spec', not a valid spec file: can't parse specfile
|
|
||||||
|
|
||||||
This patch also prints messages from rpm error log to the user so he
|
|
||||||
could better understand what the root cause of the problem is:
|
|
||||||
|
|
||||||
$ dnf builddep gdb.spec
|
|
||||||
RPM: error: Unable to open /root/rpmbuild/SOURCES/_gdb.spec.Patch.include: No such file or directory
|
|
||||||
Failed to open: 'gdb.spec', not a valid spec file: can't parse specfile
|
|
||||||
|
|
||||||
https://bugzilla.redhat.com/show_bug.cgi?id=1663619
|
|
||||||
https://bugzilla.redhat.com/show_bug.cgi?id=1658292
|
|
||||||
https://bugzilla.redhat.com/show_bug.cgi?id=1724668
|
|
||||||
---
|
|
||||||
dnf-plugins-core.spec | 2 +-
|
|
||||||
plugins/builddep.py | 38 +++++++++-----------------------------
|
|
||||||
2 files changed, 10 insertions(+), 30 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/dnf-plugins-core.spec b/dnf-plugins-core.spec
|
|
||||||
index be01cd2..b84477f 100644
|
|
||||||
--- a/dnf-plugins-core.spec
|
|
||||||
+++ b/dnf-plugins-core.spec
|
|
||||||
@@ -1,4 +1,4 @@
|
|
||||||
-%{?!dnf_lowest_compatible: %global dnf_lowest_compatible 4.2.1}
|
|
||||||
+%{?!dnf_lowest_compatible: %global dnf_lowest_compatible 4.2.8}
|
|
||||||
%global dnf_plugins_extra 2.0.0
|
|
||||||
%global hawkey_version 0.34.0
|
|
||||||
%global yum_utils_subpackage_name dnf-utils
|
|
||||||
diff --git a/plugins/builddep.py b/plugins/builddep.py
|
|
||||||
index bc3b257..0252d1f 100644
|
|
||||||
--- a/plugins/builddep.py
|
|
||||||
+++ b/plugins/builddep.py
|
|
||||||
@@ -21,44 +21,18 @@
|
|
||||||
|
|
||||||
from __future__ import absolute_import
|
|
||||||
from __future__ import unicode_literals
|
|
||||||
-from dnfpluginscore import _, logger, rpm_logger
|
|
||||||
+from dnfpluginscore import _, logger
|
|
||||||
|
|
||||||
import argparse
|
|
||||||
import dnf
|
|
||||||
import dnf.cli
|
|
||||||
import dnf.exceptions
|
|
||||||
import dnf.rpm.transaction
|
|
||||||
-import functools
|
|
||||||
-import logging
|
|
||||||
+import dnf.yum.rpmtrans
|
|
||||||
import os
|
|
||||||
import rpm
|
|
||||||
|
|
||||||
|
|
||||||
-class redirect_rpm_logging(object):
|
|
||||||
- def __init__(self):
|
|
||||||
- self.sink = None
|
|
||||||
-
|
|
||||||
- def __call__(self, func):
|
|
||||||
- @functools.wraps(func)
|
|
||||||
- def inner(*args, **kwds):
|
|
||||||
- with self:
|
|
||||||
- return func(*args, **kwds)
|
|
||||||
- return inner
|
|
||||||
-
|
|
||||||
- def __enter__(self):
|
|
||||||
- for handler in rpm_logger.handlers:
|
|
||||||
- if isinstance(handler, logging.FileHandler):
|
|
||||||
- rpm.setLogFile(handler.stream)
|
|
||||||
- break
|
|
||||||
- else:
|
|
||||||
- self.sink = open('/dev/null', 'w')
|
|
||||||
- rpm.setLogFile(self.sink)
|
|
||||||
-
|
|
||||||
- def __exit__(self, exc_type, exc, exc_tb):
|
|
||||||
- if self.sink:
|
|
||||||
- self.sink.close()
|
|
||||||
-
|
|
||||||
-
|
|
||||||
@dnf.plugin.register_command
|
|
||||||
class BuildDepCommand(dnf.cli.Command):
|
|
||||||
|
|
||||||
@@ -91,6 +65,10 @@ class BuildDepCommand(dnf.cli.Command):
|
|
||||||
ptype.add_argument('--srpm', action='store_true',
|
|
||||||
help=_('treat commandline arguments as source rpm'))
|
|
||||||
|
|
||||||
+ def pre_configure(self):
|
|
||||||
+ if not self.opts.rpmverbosity:
|
|
||||||
+ self.opts.rpmverbosity = 'error'
|
|
||||||
+
|
|
||||||
def configure(self):
|
|
||||||
demands = self.cli.demands
|
|
||||||
demands.available_repos = True
|
|
||||||
@@ -107,8 +85,8 @@ class BuildDepCommand(dnf.cli.Command):
|
|
||||||
self.base.repos.enable_source_repos()
|
|
||||||
break
|
|
||||||
|
|
||||||
- @redirect_rpm_logging()
|
|
||||||
def run(self):
|
|
||||||
+ rpmlog = dnf.yum.rpmtrans.RPMTransaction(self.base)
|
|
||||||
# Push user-supplied macro definitions for spec parsing
|
|
||||||
for macro in self.opts.define:
|
|
||||||
rpm.addMacro(macro[0], macro[1])
|
|
||||||
@@ -127,6 +105,8 @@ class BuildDepCommand(dnf.cli.Command):
|
|
||||||
else:
|
|
||||||
self._remote_deps(pkgspec)
|
|
||||||
except dnf.exceptions.Error as e:
|
|
||||||
+ for line in rpmlog.messages():
|
|
||||||
+ logger.error(_("RPM: {}").format(line))
|
|
||||||
logger.error(e)
|
|
||||||
pkg_errors = True
|
|
||||||
|
|
||||||
--
|
|
||||||
libgit2 0.28.2
|
|
||||||
|
|
@ -0,0 +1,34 @@
|
|||||||
|
From 5bc8e4aee27f2e265ad034060c790d881d0af28a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Pavla Kratochvilova <pkratoch@redhat.com>
|
||||||
|
Date: Thu, 2 Jan 2020 14:39:09 +0100
|
||||||
|
Subject: [PATCH] [config-manager] Allow use of --set-enabled without arguments
|
||||||
|
(RhBug:1679213)
|
||||||
|
|
||||||
|
Since config-manager was enhanced to also modify repositories specified
|
||||||
|
by repoids in the --setopt option, it should no longer be required to
|
||||||
|
specify repoids as arguments for --set-enabled.
|
||||||
|
|
||||||
|
As a consequence, "config-manager --set-enabled" without any other
|
||||||
|
argument will exit with 0 and have no effect (same as "--set-disabled").
|
||||||
|
|
||||||
|
https://bugzilla.redhat.com/show_bug.cgi?id=1679213
|
||||||
|
---
|
||||||
|
plugins/config_manager.py | 5 -----
|
||||||
|
1 file changed, 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/plugins/config_manager.py b/plugins/config_manager.py
|
||||||
|
index 4e03d642..bf238ea9 100644
|
||||||
|
--- a/plugins/config_manager.py
|
||||||
|
+++ b/plugins/config_manager.py
|
||||||
|
@@ -67,11 +67,6 @@ def configure(self):
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
"""Execute the util action here."""
|
||||||
|
-
|
||||||
|
- if self.opts.set_enabled and not self.opts.crepo:
|
||||||
|
- logger.error(_("Error: Trying to enable already enabled repos."))
|
||||||
|
- self.opts.set_enabled = False
|
||||||
|
-
|
||||||
|
if self.opts.add_repo:
|
||||||
|
self.add_repo()
|
||||||
|
else:
|
@ -1,342 +0,0 @@
|
|||||||
From e5a30424d51f9c20cd0ec6cd3e515ac5509a9287 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jaroslav Rohel <jrohel@redhat.com>
|
|
||||||
Date: Thu, 18 Jul 2019 09:50:43 +0200
|
|
||||||
Subject: [PATCH 1/6] [config-manager] --setopt: Fix crash with "--save --dump"
|
|
||||||
(RhBug:1702678)
|
|
||||||
|
|
||||||
Removes useless code which only causes crash.
|
|
||||||
|
|
||||||
Example of crash:
|
|
||||||
dnf config-manager --save --dump --setopt=fedora.gpgcheck=1 fedora
|
|
||||||
============================================================== repo: fedora ==============================================================
|
|
||||||
Error: Error parsing '['1']': Wrong number or type of arguments for overloaded function 'OptionChildBool_set'.
|
|
||||||
Possible C/C++ prototypes are:
|
|
||||||
libdnf::OptionChild< libdnf::OptionBool >::set(libdnf::Option::Priority,libdnf::OptionBool::ValueType const &)
|
|
||||||
libdnf::OptionChild< libdnf::OptionBool >::set(libdnf::Option::Priority,std::string const &)
|
|
||||||
---
|
|
||||||
plugins/config_manager.py | 5 -----
|
|
||||||
1 file changed, 5 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/plugins/config_manager.py b/plugins/config_manager.py
|
|
||||||
index 38fd51d..6db1bcb 100644
|
|
||||||
--- a/plugins/config_manager.py
|
|
||||||
+++ b/plugins/config_manager.py
|
|
||||||
@@ -90,8 +90,6 @@ class ConfigManagerCommand(dnf.cli.Command):
|
|
||||||
self.base.conf.write_raw_configfile(dnf.const.CONF_FILENAME, 'main', sbc.substitutions, modify)
|
|
||||||
if self.opts.dump:
|
|
||||||
print(self.base.output.fmtSection('main'))
|
|
||||||
- for name, val in modify.items():
|
|
||||||
- sbc._set_value(name, val)
|
|
||||||
print(self.base.conf.dump())
|
|
||||||
|
|
||||||
if self.opts.set_enabled or self.opts.set_disabled:
|
|
||||||
@@ -120,9 +118,6 @@ class ConfigManagerCommand(dnf.cli.Command):
|
|
||||||
self.base.conf.write_raw_configfile(repo.repofile, repo.id, sbc.substitutions, repo_modify)
|
|
||||||
if self.opts.dump:
|
|
||||||
print(self.base.output.fmtSection('repo: ' + repo.id))
|
|
||||||
- for name, val in repo_modify.items():
|
|
||||||
- if repo._has_option(name):
|
|
||||||
- repo._set_value(name, val)
|
|
||||||
print(repo.dump())
|
|
||||||
|
|
||||||
def add_repo(self):
|
|
||||||
--
|
|
||||||
2.21.0
|
|
||||||
|
|
||||||
|
|
||||||
From f096fe3e88884f8cc212bfcee5549bfc6b8a3ad0 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jaroslav Rohel <jrohel@redhat.com>
|
|
||||||
Date: Wed, 10 Jul 2019 09:21:37 +0200
|
|
||||||
Subject: [PATCH 2/6] [config-manager] --setopt: Add globs support to repoid
|
|
||||||
(RhBug:1702678)
|
|
||||||
|
|
||||||
Set key in all repositories whose id starts with "updates-testing":
|
|
||||||
dnf config-manager --save --setopt=updates-testing*.skip_if_unavailable=true
|
|
||||||
---
|
|
||||||
plugins/config_manager.py | 8 +++++---
|
|
||||||
1 file changed, 5 insertions(+), 3 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/plugins/config_manager.py b/plugins/config_manager.py
|
|
||||||
index 6db1bcb..dedcc82 100644
|
|
||||||
--- a/plugins/config_manager.py
|
|
||||||
+++ b/plugins/config_manager.py
|
|
||||||
@@ -23,6 +23,7 @@ from dnfpluginscore import _, logger, P_
|
|
||||||
import dnf
|
|
||||||
import dnf.cli
|
|
||||||
import dnf.pycomp
|
|
||||||
+import fnmatch
|
|
||||||
import os
|
|
||||||
import re
|
|
||||||
import shutil
|
|
||||||
@@ -111,9 +112,10 @@ class ConfigManagerCommand(dnf.cli.Command):
|
|
||||||
repo_modify['enabled'] = "1"
|
|
||||||
elif self.opts.set_disabled:
|
|
||||||
repo_modify['enabled'] = "0"
|
|
||||||
- if (hasattr(self.opts, 'repo_setopts')
|
|
||||||
- and repo.id in self.opts.repo_setopts):
|
|
||||||
- repo_modify.update(self.opts.repo_setopts[repo.id])
|
|
||||||
+ if hasattr(self.opts, 'repo_setopts'):
|
|
||||||
+ for repoid, setopts in self.opts.repo_setopts.items():
|
|
||||||
+ if fnmatch.fnmatch(repo.id, repoid):
|
|
||||||
+ repo_modify.update(setopts)
|
|
||||||
if self.opts.save and repo_modify:
|
|
||||||
self.base.conf.write_raw_configfile(repo.repofile, repo.id, sbc.substitutions, repo_modify)
|
|
||||||
if self.opts.dump:
|
|
||||||
--
|
|
||||||
2.21.0
|
|
||||||
|
|
||||||
|
|
||||||
From c2ef00188a7ec911a5efc36d3df0cceae5a682c1 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jaroslav Rohel <jrohel@redhat.com>
|
|
||||||
Date: Tue, 16 Jul 2019 13:32:39 +0200
|
|
||||||
Subject: [PATCH 3/6] [config-manager] --setopt=key=value is not applied to
|
|
||||||
repositories config (RhBug:1702678)
|
|
||||||
|
|
||||||
The command "dnf config-manager --setopt=key=value repo1 main" set key value
|
|
||||||
in repo1 and global config before the patch. It was inconsistent with the rest
|
|
||||||
of DNF because "--setopt=key=value" means to set key in global config only.
|
|
||||||
To set key in repos we can use "--setopt=*.key=value".
|
|
||||||
---
|
|
||||||
plugins/config_manager.py | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/plugins/config_manager.py b/plugins/config_manager.py
|
|
||||||
index dedcc82..1dcf085 100644
|
|
||||||
--- a/plugins/config_manager.py
|
|
||||||
+++ b/plugins/config_manager.py
|
|
||||||
@@ -107,7 +107,7 @@ class ConfigManagerCommand(dnf.cli.Command):
|
|
||||||
raise dnf.exceptions.Error(_("No matching repo to modify: %s.")
|
|
||||||
% ', '.join(self.opts.crepo))
|
|
||||||
for repo in sorted(matched):
|
|
||||||
- repo_modify = dict(modify) # create local copy
|
|
||||||
+ repo_modify = {}
|
|
||||||
if self.opts.set_enabled:
|
|
||||||
repo_modify['enabled'] = "1"
|
|
||||||
elif self.opts.set_disabled:
|
|
||||||
--
|
|
||||||
2.21.0
|
|
||||||
|
|
||||||
|
|
||||||
From 3af60a1613877ad2fd090a83ba9da00623a00818 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jaroslav Rohel <jrohel@redhat.com>
|
|
||||||
Date: Tue, 16 Jul 2019 14:05:54 +0200
|
|
||||||
Subject: [PATCH 4/6] [config-manager] --setopt and empty list of repositories
|
|
||||||
(RhBug:1702678)
|
|
||||||
|
|
||||||
This:
|
|
||||||
"dnf config-manager --save --setopts=repo1.key1=value1 --setopt=repo2.key2=value2 repo1 repo2"
|
|
||||||
|
|
||||||
can be replaced by this now:
|
|
||||||
"dnf config-manager --save --setopts=repo1.key1=value1 --setopt=repo2.key2=value2"
|
|
||||||
|
|
||||||
Empty list of repositories allowed to change only the global configuration
|
|
||||||
before. Now empty list of repositories means that setopt works
|
|
||||||
for any repository too.
|
|
||||||
|
|
||||||
Better compatibility with YUM.
|
|
||||||
It solves : https://bugzilla.redhat.com/show_bug.cgi?id=1702678
|
|
||||||
---
|
|
||||||
plugins/config_manager.py | 8 ++++++--
|
|
||||||
1 file changed, 6 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/plugins/config_manager.py b/plugins/config_manager.py
|
|
||||||
index 1dcf085..41b36fa 100644
|
|
||||||
--- a/plugins/config_manager.py
|
|
||||||
+++ b/plugins/config_manager.py
|
|
||||||
@@ -96,12 +96,16 @@ class ConfigManagerCommand(dnf.cli.Command):
|
|
||||||
if self.opts.set_enabled or self.opts.set_disabled:
|
|
||||||
self.opts.save = True
|
|
||||||
|
|
||||||
+ matched = []
|
|
||||||
if self.opts.crepo:
|
|
||||||
- matched = []
|
|
||||||
for name in self.opts.crepo:
|
|
||||||
matched.extend(self.base.repos.get_matching(name))
|
|
||||||
else:
|
|
||||||
- return
|
|
||||||
+ if hasattr(self.opts, 'repo_setopts'):
|
|
||||||
+ for name in self.opts.repo_setopts.keys():
|
|
||||||
+ matched.extend(self.base.repos.get_matching(name))
|
|
||||||
+ if not matched:
|
|
||||||
+ return
|
|
||||||
|
|
||||||
if not matched:
|
|
||||||
raise dnf.exceptions.Error(_("No matching repo to modify: %s.")
|
|
||||||
--
|
|
||||||
2.21.0
|
|
||||||
|
|
||||||
|
|
||||||
From 27205851a592a3383a7592d87ceee5b69c9dfb70 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jaroslav Rohel <jrohel@redhat.com>
|
|
||||||
Date: Tue, 16 Jul 2019 15:51:38 +0200
|
|
||||||
Subject: [PATCH 5/6] [config-manager] --setopt: Add check for existence of
|
|
||||||
input repositories (RhBug:1702678)
|
|
||||||
|
|
||||||
Examples:
|
|
||||||
dnf config-manager --save --setopt=non_existent.key=value
|
|
||||||
Error: No matching repo to modify: non_existent.
|
|
||||||
|
|
||||||
dnf config-manager --save --setopt=non_existent*.key=value
|
|
||||||
Error: No matching repo to modify: non_existent*.
|
|
||||||
|
|
||||||
None change in configuration is done after the error.
|
|
||||||
---
|
|
||||||
plugins/config_manager.py | 44 ++++++++++++++++++++++++++-------------
|
|
||||||
1 file changed, 29 insertions(+), 15 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/plugins/config_manager.py b/plugins/config_manager.py
|
|
||||||
index 41b36fa..83d58be 100644
|
|
||||||
--- a/plugins/config_manager.py
|
|
||||||
+++ b/plugins/config_manager.py
|
|
||||||
@@ -78,6 +78,31 @@ class ConfigManagerCommand(dnf.cli.Command):
|
|
||||||
def modify_repo(self):
|
|
||||||
""" process --set-enabled, --set-disabled and --setopt options """
|
|
||||||
|
|
||||||
+ matching_repos = [] # list of matched repositories
|
|
||||||
+ not_matching_repos_id = set() # IDs of not matched repositories
|
|
||||||
+
|
|
||||||
+ def match_repos(key, add_matching_repos):
|
|
||||||
+ matching = self.base.repos.get_matching(key)
|
|
||||||
+ if not matching:
|
|
||||||
+ not_matching_repos_id.add(name)
|
|
||||||
+ elif add_matching_repos:
|
|
||||||
+ matching_repos.extend(matching)
|
|
||||||
+
|
|
||||||
+ if self.opts.crepo:
|
|
||||||
+ for name in self.opts.crepo:
|
|
||||||
+ match_repos(name, True)
|
|
||||||
+ if hasattr(self.opts, 'repo_setopts'):
|
|
||||||
+ for name in self.opts.repo_setopts.keys():
|
|
||||||
+ match_repos(name, False)
|
|
||||||
+ else:
|
|
||||||
+ if hasattr(self.opts, 'repo_setopts'):
|
|
||||||
+ for name in self.opts.repo_setopts.keys():
|
|
||||||
+ match_repos(name, True)
|
|
||||||
+
|
|
||||||
+ if not_matching_repos_id:
|
|
||||||
+ raise dnf.exceptions.Error(_("No matching repo to modify: %s.")
|
|
||||||
+ % ', '.join(not_matching_repos_id))
|
|
||||||
+
|
|
||||||
sbc = self.base.conf
|
|
||||||
modify = {}
|
|
||||||
if hasattr(self.opts, 'main_setopts') and self.opts.main_setopts:
|
|
||||||
@@ -93,24 +118,13 @@ class ConfigManagerCommand(dnf.cli.Command):
|
|
||||||
print(self.base.output.fmtSection('main'))
|
|
||||||
print(self.base.conf.dump())
|
|
||||||
|
|
||||||
+ if not matching_repos:
|
|
||||||
+ return
|
|
||||||
+
|
|
||||||
if self.opts.set_enabled or self.opts.set_disabled:
|
|
||||||
self.opts.save = True
|
|
||||||
|
|
||||||
- matched = []
|
|
||||||
- if self.opts.crepo:
|
|
||||||
- for name in self.opts.crepo:
|
|
||||||
- matched.extend(self.base.repos.get_matching(name))
|
|
||||||
- else:
|
|
||||||
- if hasattr(self.opts, 'repo_setopts'):
|
|
||||||
- for name in self.opts.repo_setopts.keys():
|
|
||||||
- matched.extend(self.base.repos.get_matching(name))
|
|
||||||
- if not matched:
|
|
||||||
- return
|
|
||||||
-
|
|
||||||
- if not matched:
|
|
||||||
- raise dnf.exceptions.Error(_("No matching repo to modify: %s.")
|
|
||||||
- % ', '.join(self.opts.crepo))
|
|
||||||
- for repo in sorted(matched):
|
|
||||||
+ for repo in sorted(matching_repos):
|
|
||||||
repo_modify = {}
|
|
||||||
if self.opts.set_enabled:
|
|
||||||
repo_modify['enabled'] = "1"
|
|
||||||
--
|
|
||||||
2.21.0
|
|
||||||
|
|
||||||
|
|
||||||
From f7d1fa8e5f657b3cc8ed60acdeaa02f6b725312a Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jaroslav Rohel <jrohel@redhat.com>
|
|
||||||
Date: Thu, 18 Jul 2019 12:13:43 +0200
|
|
||||||
Subject: [PATCH 6/6] [config-manager] Update documentation (RhBug:1702678)
|
|
||||||
|
|
||||||
---
|
|
||||||
doc/config_manager.rst | 32 +++++++++++++++++++++-----------
|
|
||||||
1 file changed, 21 insertions(+), 11 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/doc/config_manager.rst b/doc/config_manager.rst
|
|
||||||
index 2feafcb..80ee0fa 100644
|
|
||||||
--- a/doc/config_manager.rst
|
|
||||||
+++ b/doc/config_manager.rst
|
|
||||||
@@ -19,22 +19,25 @@
|
|
||||||
DNF config-manager Plugin
|
|
||||||
==========================
|
|
||||||
|
|
||||||
-Manage main DNF configuration options, toggle which
|
|
||||||
+Manage main and repository DNF configuration options, toggle which
|
|
||||||
repositories are enabled or disabled, and add new repositories.
|
|
||||||
|
|
||||||
--------
|
|
||||||
Synopsis
|
|
||||||
--------
|
|
||||||
|
|
||||||
-``dnf config-manager [options] <repoid>...``
|
|
||||||
+``dnf config-manager [options] <section>...``
|
|
||||||
|
|
||||||
---------
|
|
||||||
Arguments
|
|
||||||
---------
|
|
||||||
|
|
||||||
-``<repoid>``
|
|
||||||
- Display / modify a repository identified by <repoid>. If not specified, display / modify
|
|
||||||
- main DNF configuration. Repositories can be specified using globs.
|
|
||||||
+``<section>``
|
|
||||||
+ This argument can be used to explicitly select the configuration sections to manage.
|
|
||||||
+ A section can either be ``main`` or a repoid.
|
|
||||||
+ If not specified, the program will select the ``main`` section and each repoid
|
|
||||||
+ used within any ``--setopt`` options.
|
|
||||||
+ A repoid can be specified using globs.
|
|
||||||
|
|
||||||
-------
|
|
||||||
Options
|
|
||||||
@@ -51,13 +54,17 @@ Options
|
|
||||||
Print dump of current configuration values to stdout.
|
|
||||||
|
|
||||||
``--set-disabled``, ``--disable``
|
|
||||||
- Disable the specified repos (automatically saves).
|
|
||||||
+ Disable the specified repos (implies ``--save``).
|
|
||||||
|
|
||||||
``--set-enabled``, ``--enable``
|
|
||||||
- Enable the specified repos (automatically saves).
|
|
||||||
+ Enable the specified repos (implies ``--save``).
|
|
||||||
|
|
||||||
``--save``
|
|
||||||
- Save the current options (useful with --setopt).
|
|
||||||
+ Save the current options (useful with ``--setopt``).
|
|
||||||
+
|
|
||||||
+``--setopt=<option>=<value>``
|
|
||||||
+ Set a configuration option. To set configuration options for repositories, use
|
|
||||||
+ ``repoid.option`` for the ``<option>``. Globs are supported in repoid.
|
|
||||||
|
|
||||||
--------
|
|
||||||
Examples
|
|
||||||
@@ -71,12 +78,15 @@ Examples
|
|
||||||
``dnf config-manager --dump``
|
|
||||||
Display main DNF configuration.
|
|
||||||
|
|
||||||
-``dnf config-manager <repoid> --dump``
|
|
||||||
- Display configuration of a repository identified by <repoid>.
|
|
||||||
+``dnf config-manager --dump <section>``
|
|
||||||
+ Display configuration of a repository identified by <section>.
|
|
||||||
|
|
||||||
``dnf config-manager --set-enabled <repoid>``
|
|
||||||
Enable repository identified by <repoid> and make the change permanent.
|
|
||||||
|
|
||||||
-``dnf config-manager --setopt proxy=http://proxy.example.com:3128/ <repo1> <repo2> --save``
|
|
||||||
+``dnf config-manager --save --setopt=*.proxy=http://proxy.example.com:3128/ <repo1> <repo2>``
|
|
||||||
Update proxy setting in repositories with repoid <repo1> and <repo2> and make the change
|
|
||||||
permanent.
|
|
||||||
+
|
|
||||||
+``dnf config-manager --save --setopt=*-debuginfo.gpgcheck=0``
|
|
||||||
+ Update gpgcheck setting in all repositories whose id ends with -debuginfo and make the change permanent.
|
|
||||||
--
|
|
||||||
2.21.0
|
|
||||||
|
|
44609
SOURCES/0004-Update-translations-from-zanata-RhBug-1754960.patch
Normal file
44609
SOURCES/0004-Update-translations-from-zanata-RhBug-1754960.patch
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,82 +0,0 @@
|
|||||||
From 134d5405d024e6e313e24062ed92fa2a946e0287 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Michal Domonkos <mdomonko@redhat.com>
|
|
||||||
Date: Fri, 9 Aug 2019 17:34:58 +0200
|
|
||||||
Subject: [PATCH] [spec] Generate yum-utils(1) instead of symlinking (RhBug:1676418)
|
|
||||||
|
|
||||||
This ensures that the man page actually says "yum-utils" instead of
|
|
||||||
"dnf-utils" in the beginning.
|
|
||||||
---
|
|
||||||
dnf-plugins-core.spec | 12 ++++++------
|
|
||||||
doc/CMakeLists.txt | 1 +
|
|
||||||
doc/conf.py | 2 ++
|
|
||||||
3 files changed, 9 insertions(+), 6 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/dnf-plugins-core.spec b/dnf-plugins-core.spec
|
|
||||||
index b84477f..a072438 100644
|
|
||||||
--- a/dnf-plugins-core.spec
|
|
||||||
+++ b/dnf-plugins-core.spec
|
|
||||||
@@ -428,11 +428,10 @@ ln -sf %{_libexecdir}/dnf-utils %{buildroot}%{_bindir}/yum-debug-dump
|
|
||||||
ln -sf %{_libexecdir}/dnf-utils %{buildroot}%{_bindir}/yum-debug-restore
|
|
||||||
ln -sf %{_libexecdir}/dnf-utils %{buildroot}%{_bindir}/yumdownloader
|
|
||||||
# These commands don't have a dedicated man page, so let's just point them to
|
|
||||||
-# dnf-utils(1) which contains the descriptions.
|
|
||||||
-ln -sf %{_mandir}/man1/dnf-utils.1.gz %{buildroot}%{_mandir}/man1/find-repos-of-install.1.gz
|
|
||||||
-ln -sf %{_mandir}/man1/dnf-utils.1.gz %{buildroot}%{_mandir}/man1/repoquery.1.gz
|
|
||||||
-ln -sf %{_mandir}/man1/dnf-utils.1.gz %{buildroot}%{_mandir}/man1/repotrack.1.gz
|
|
||||||
-ln -sf %{_mandir}/man1/dnf-utils.1.gz %{buildroot}%{_mandir}/man1/yum-utils.1.gz
|
|
||||||
+# to the utils page which contains their descriptions.
|
|
||||||
+ln -sf %{_mandir}/man1/%{yum_utils_subpackage_name}.1.gz %{buildroot}%{_mandir}/man1/find-repos-of-install.1.gz
|
|
||||||
+ln -sf %{_mandir}/man1/%{yum_utils_subpackage_name}.1.gz %{buildroot}%{_mandir}/man1/repoquery.1.gz
|
|
||||||
+ln -sf %{_mandir}/man1/%{yum_utils_subpackage_name}.1.gz %{buildroot}%{_mandir}/man1/repotrack.1.gz
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%check
|
|
||||||
@@ -563,11 +562,11 @@ PYTHONPATH=./plugins nosetests-%{python3_version} -s tests/
|
|
||||||
%{_mandir}/man1/yumdownloader.*
|
|
||||||
%{_mandir}/man1/package-cleanup.*
|
|
||||||
%{_mandir}/man1/dnf-utils.*
|
|
||||||
+%{_mandir}/man1/yum-utils.*
|
|
||||||
# These are only built with yumutils bcond.
|
|
||||||
%{_mandir}/man1/find-repos-of-install.*
|
|
||||||
%{_mandir}/man1/repoquery.*
|
|
||||||
%{_mandir}/man1/repotrack.*
|
|
||||||
-%{_mandir}/man1/yum-utils.*
|
|
||||||
%else
|
|
||||||
# These are built regardless of yumutils bcond so we need to exclude them.
|
|
||||||
%exclude %{_mandir}/man1/debuginfo-install.*
|
|
||||||
@@ -584,6 +583,7 @@ PYTHONPATH=./plugins nosetests-%{python3_version} -s tests/
|
|
||||||
%exclude %{_mandir}/man1/yumdownloader.*
|
|
||||||
%exclude %{_mandir}/man1/package-cleanup.*
|
|
||||||
%exclude %{_mandir}/man1/dnf-utils.*
|
|
||||||
+%exclude %{_mandir}/man1/yum-utils.*
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{?rhel} == 0
|
|
||||||
diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
|
|
||||||
index b4ba2d5..b258c84 100644
|
|
||||||
--- a/doc/CMakeLists.txt
|
|
||||||
+++ b/doc/CMakeLists.txt
|
|
||||||
@@ -60,6 +60,7 @@ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/debuginfo-install.1
|
|
||||||
${CMAKE_CURRENT_BINARY_DIR}/yumdownloader.1
|
|
||||||
${CMAKE_CURRENT_BINARY_DIR}/package-cleanup.1
|
|
||||||
${CMAKE_CURRENT_BINARY_DIR}/dnf-utils.1
|
|
||||||
+ ${CMAKE_CURRENT_BINARY_DIR}/yum-utils.1
|
|
||||||
DESTINATION share/man/man1)
|
|
||||||
|
|
||||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/yum-versionlock.conf.5
|
|
||||||
diff --git a/doc/conf.py b/doc/conf.py
|
|
||||||
index b4bbba5..fd6d28c 100644
|
|
||||||
--- a/doc/conf.py
|
|
||||||
+++ b/doc/conf.py
|
|
||||||
@@ -293,6 +293,8 @@ man_pages = [
|
|
||||||
'orphaned packages.', AUTHORS, 1),
|
|
||||||
('dnf-utils', 'dnf-utils', u'classic YUM utilities implemented as CLI shims on top of DNF',
|
|
||||||
AUTHORS, 1),
|
|
||||||
+ ('dnf-utils', 'yum-utils', u'classic YUM utilities implemented as CLI shims on top of DNF',
|
|
||||||
+ AUTHORS, 1),
|
|
||||||
]
|
|
||||||
|
|
||||||
# If true, show URL addresses after external links.
|
|
||||||
--
|
|
||||||
libgit2 0.28.2
|
|
||||||
|
|
@ -1,7 +1,10 @@
|
|||||||
%{?!dnf_lowest_compatible: %global dnf_lowest_compatible 4.2.7-3}
|
%{?!dnf_lowest_compatible: %global dnf_lowest_compatible 4.2.17}
|
||||||
%global dnf_plugins_extra 2.0.0
|
%global dnf_plugins_extra 2.0.0
|
||||||
%global hawkey_version 0.34.0
|
%global hawkey_version 0.37.0
|
||||||
%global yum_utils_subpackage_name dnf-utils
|
%global yum_utils_subpackage_name dnf-utils
|
||||||
|
%if 0%{?rhel} > 7
|
||||||
|
%global yum_utils_subpackage_name yum-utils
|
||||||
|
%endif
|
||||||
|
|
||||||
%if 0%{?rhel} && 0%{?rhel} <= 7
|
%if 0%{?rhel} && 0%{?rhel} <= 7
|
||||||
%bcond_with python3
|
%bcond_with python3
|
||||||
@ -16,7 +19,6 @@
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?rhel} > 7 || 0%{?fedora} > 30
|
%if 0%{?rhel} > 7 || 0%{?fedora} > 30
|
||||||
%global yum_utils_subpackage_name yum-utils
|
|
||||||
%bcond_without yumcompatibility
|
%bcond_without yumcompatibility
|
||||||
%else
|
%else
|
||||||
%bcond_with yumcompatibility
|
%bcond_with yumcompatibility
|
||||||
@ -29,17 +31,16 @@
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
Name: dnf-plugins-core
|
Name: dnf-plugins-core
|
||||||
Version: 4.0.8
|
Version: 4.0.12
|
||||||
Release: 3%{?dist}
|
Release: 3%{?dist}
|
||||||
Summary: Core Plugins for DNF
|
Summary: Core Plugins for DNF
|
||||||
License: GPLv2+
|
License: GPLv2+
|
||||||
URL: https://github.com/rpm-software-management/dnf-plugins-core
|
URL: https://github.com/rpm-software-management/dnf-plugins-core
|
||||||
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
|
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
|
||||||
Patch0: 0001-Update-localizations-from-zanata-RhBug1689984.patch
|
Patch1: 0001-reposync-Fix-delete-with-multiple-repos-RhBug1774103.patch
|
||||||
Patch1: 0002-Rename-dnf-utils-to-yum-utils-RhBug1722093.patch
|
Patch2: 0002-Redesign-reposync-latest-for-modular-system-RhBug1775434.patch
|
||||||
Patch2: 0003-builddep-Report-all-rpm-errors-RhBug166361916582921724668.patch
|
Patch3: 0003-config-manager-Allow-use-of-set-enabled-without-arguments-RhBug1679213.patch
|
||||||
Patch3: 0004-Behaviour-of--setopt-in-config-manager-plugin-RhBug1702678.patch
|
Patch4: 0004-Update-translations-from-zanata-RhBug-1754960.patch
|
||||||
Patch4: 0005-spec-Generate-yum-utils1-instead-of-symlinking-RhBug1676418.patch
|
|
||||||
|
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
BuildRequires: cmake
|
BuildRequires: cmake
|
||||||
@ -172,10 +173,9 @@ Additionally provides generate_completion_cache passive plugin.
|
|||||||
%if %{with yumutils}
|
%if %{with yumutils}
|
||||||
%package -n %{yum_utils_subpackage_name}
|
%package -n %{yum_utils_subpackage_name}
|
||||||
%if "%{yum_utils_subpackage_name}" == "dnf-utils"
|
%if "%{yum_utils_subpackage_name}" == "dnf-utils"
|
||||||
Conflicts: yum-utils < 1.1.31-513
|
Conflicts: yum-utils < 1.1.31-520
|
||||||
%if 0%{?rhel} != 7
|
%if 0%{?rhel} != 7
|
||||||
Provides: yum-utils = %{version}-%{release}
|
Provides: yum-utils = %{version}-%{release}
|
||||||
Obsoletes: yum-utils < 1.1.31-513
|
|
||||||
%endif
|
%endif
|
||||||
%else
|
%else
|
||||||
Provides: dnf-utils = %{version}-%{release}
|
Provides: dnf-utils = %{version}-%{release}
|
||||||
@ -286,6 +286,34 @@ Obsoletes: python-dnf-plugins-extras-migrate < %{dnf_plugins_extra}
|
|||||||
Migrate Plugin for DNF, Python 2 version. Migrates history, group and yumdb data from yum to dnf.
|
Migrate Plugin for DNF, Python 2 version. Migrates history, group and yumdb data from yum to dnf.
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
%if %{with python2}
|
||||||
|
%package -n python2-dnf-plugin-post-transaction-actions
|
||||||
|
Summary: Post transaction actions Plugin for DNF
|
||||||
|
Requires: python2-%{name} = %{version}-%{release}
|
||||||
|
%if !%{with python3}
|
||||||
|
Provides: dnf-plugin-post-transaction-actions = %{version}-%{release}
|
||||||
|
%endif
|
||||||
|
Conflicts: python3-dnf-plugin-post-transaction-actions < %{version}-%{release}
|
||||||
|
|
||||||
|
%description -n python2-dnf-plugin-post-transaction-actions
|
||||||
|
Post transaction actions Plugin for DNF, Python 2 version. Plugin runs actions
|
||||||
|
(shell commands) after transaction is completed. Actions are defined in action
|
||||||
|
files.
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if %{with python3}
|
||||||
|
%package -n python3-dnf-plugin-post-transaction-actions
|
||||||
|
Summary: Post transaction actions Plugin for DNF
|
||||||
|
Requires: python3-%{name} = %{version}-%{release}
|
||||||
|
Provides: dnf-plugin-post-transaction-actions = %{version}-%{release}
|
||||||
|
Conflicts: python2-dnf-plugin-post-transaction-actions < %{version}-%{release}
|
||||||
|
|
||||||
|
%description -n python3-dnf-plugin-post-transaction-actions
|
||||||
|
Post transaction actions Plugin for DNF, Python 3 version. Plugin runs actions
|
||||||
|
(shell commands) after transaction is completed. Actions are defined in action
|
||||||
|
files.
|
||||||
|
%endif
|
||||||
|
|
||||||
%if 0%{?rhel} == 0 && %{with python2}
|
%if 0%{?rhel} == 0 && %{with python2}
|
||||||
%package -n python2-dnf-plugin-show-leaves
|
%package -n python2-dnf-plugin-show-leaves
|
||||||
Summary: Leaves Plugin for DNF
|
Summary: Leaves Plugin for DNF
|
||||||
@ -434,7 +462,7 @@ ln -sf %{_libexecdir}/dnf-utils %{buildroot}%{_bindir}/yum-config-manager
|
|||||||
ln -sf %{_libexecdir}/dnf-utils %{buildroot}%{_bindir}/yum-debug-dump
|
ln -sf %{_libexecdir}/dnf-utils %{buildroot}%{_bindir}/yum-debug-dump
|
||||||
ln -sf %{_libexecdir}/dnf-utils %{buildroot}%{_bindir}/yum-debug-restore
|
ln -sf %{_libexecdir}/dnf-utils %{buildroot}%{_bindir}/yum-debug-restore
|
||||||
ln -sf %{_libexecdir}/dnf-utils %{buildroot}%{_bindir}/yumdownloader
|
ln -sf %{_libexecdir}/dnf-utils %{buildroot}%{_bindir}/yumdownloader
|
||||||
# These commands don't have a dedicated man page, so let's just point them to
|
# These commands don't have a dedicated man page, so let's just point them
|
||||||
# to the utils page which contains their descriptions.
|
# to the utils page which contains their descriptions.
|
||||||
ln -sf %{_mandir}/man1/%{yum_utils_subpackage_name}.1.gz %{buildroot}%{_mandir}/man1/find-repos-of-install.1.gz
|
ln -sf %{_mandir}/man1/%{yum_utils_subpackage_name}.1.gz %{buildroot}%{_mandir}/man1/find-repos-of-install.1.gz
|
||||||
ln -sf %{_mandir}/man1/%{yum_utils_subpackage_name}.1.gz %{buildroot}%{_mandir}/man1/repoquery.1.gz
|
ln -sf %{_mandir}/man1/%{yum_utils_subpackage_name}.1.gz %{buildroot}%{_mandir}/man1/repoquery.1.gz
|
||||||
@ -450,20 +478,20 @@ PYTHONPATH=./plugins nosetests-%{python3_version} -s tests/
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%{_mandir}/man8/dnf.plugin.builddep.*
|
%{_mandir}/man8/dnf-builddep.*
|
||||||
%{_mandir}/man8/dnf.plugin.changelog.*
|
%{_mandir}/man8/dnf-changelog.*
|
||||||
%{_mandir}/man8/dnf.plugin.config_manager.*
|
%{_mandir}/man8/dnf-config-manager.*
|
||||||
%{_mandir}/man8/dnf.plugin.copr.*
|
%{_mandir}/man8/dnf-copr.*
|
||||||
%{_mandir}/man8/dnf.plugin.debug.*
|
%{_mandir}/man8/dnf-debug.*
|
||||||
%{_mandir}/man8/dnf.plugin.debuginfo-install.*
|
%{_mandir}/man8/dnf-debuginfo-install.*
|
||||||
%{_mandir}/man8/dnf.plugin.download.*
|
%{_mandir}/man8/dnf-download.*
|
||||||
%{_mandir}/man8/dnf.plugin.generate_completion_cache.*
|
%{_mandir}/man8/dnf-generate_completion_cache.*
|
||||||
%{_mandir}/man8/dnf.plugin.needs_restarting.*
|
%{_mandir}/man8/dnf-needs-restarting.*
|
||||||
%{_mandir}/man8/dnf.plugin.repoclosure.*
|
%{_mandir}/man8/dnf-repoclosure.*
|
||||||
%{_mandir}/man8/dnf.plugin.repodiff.*
|
%{_mandir}/man8/dnf-repodiff.*
|
||||||
%{_mandir}/man8/dnf.plugin.repograph.*
|
%{_mandir}/man8/dnf-repograph.*
|
||||||
%{_mandir}/man8/dnf.plugin.repomanage.*
|
%{_mandir}/man8/dnf-repomanage.*
|
||||||
%{_mandir}/man8/dnf.plugin.reposync.*
|
%{_mandir}/man8/dnf-reposync.*
|
||||||
%if %{with yumcompatibility}
|
%if %{with yumcompatibility}
|
||||||
%{_mandir}/man1/yum-changelog.*
|
%{_mandir}/man1/yum-changelog.*
|
||||||
%{_mandir}/man8/yum-copr.*
|
%{_mandir}/man8/yum-copr.*
|
||||||
@ -476,7 +504,7 @@ PYTHONPATH=./plugins nosetests-%{python3_version} -s tests/
|
|||||||
%files -n python2-%{name} -f %{name}.lang
|
%files -n python2-%{name} -f %{name}.lang
|
||||||
%license COPYING
|
%license COPYING
|
||||||
%doc AUTHORS README.rst
|
%doc AUTHORS README.rst
|
||||||
%ghost %{_var}/cache/dnf/packages.db
|
%ghost %attr(644,-,-) %{_var}/cache/dnf/packages.db
|
||||||
%config(noreplace) %{_sysconfdir}/dnf/plugins/copr.conf
|
%config(noreplace) %{_sysconfdir}/dnf/plugins/copr.conf
|
||||||
%config(noreplace) %{_sysconfdir}/dnf/plugins/copr.d
|
%config(noreplace) %{_sysconfdir}/dnf/plugins/copr.d
|
||||||
%config(noreplace) %{_sysconfdir}/dnf/plugins/debuginfo-install.conf
|
%config(noreplace) %{_sysconfdir}/dnf/plugins/debuginfo-install.conf
|
||||||
@ -501,7 +529,7 @@ PYTHONPATH=./plugins nosetests-%{python3_version} -s tests/
|
|||||||
%files -n python3-%{name} -f %{name}.lang
|
%files -n python3-%{name} -f %{name}.lang
|
||||||
%license COPYING
|
%license COPYING
|
||||||
%doc AUTHORS README.rst
|
%doc AUTHORS README.rst
|
||||||
%ghost %{_var}/cache/dnf/packages.db
|
%ghost %attr(644,-,-) %{_var}/cache/dnf/packages.db
|
||||||
%config(noreplace) %{_sysconfdir}/dnf/plugins/copr.conf
|
%config(noreplace) %{_sysconfdir}/dnf/plugins/copr.conf
|
||||||
%config(noreplace) %{_sysconfdir}/dnf/plugins/copr.d
|
%config(noreplace) %{_sysconfdir}/dnf/plugins/copr.d
|
||||||
%config(noreplace) %{_sysconfdir}/dnf/plugins/debuginfo-install.conf
|
%config(noreplace) %{_sysconfdir}/dnf/plugins/debuginfo-install.conf
|
||||||
@ -598,18 +626,18 @@ PYTHONPATH=./plugins nosetests-%{python3_version} -s tests/
|
|||||||
%if %{with python2}
|
%if %{with python2}
|
||||||
%files -n python2-dnf-plugin-leaves
|
%files -n python2-dnf-plugin-leaves
|
||||||
%{python2_sitelib}/dnf-plugins/leaves.*
|
%{python2_sitelib}/dnf-plugins/leaves.*
|
||||||
%{_mandir}/man8/dnf.plugin.leaves.*
|
%{_mandir}/man8/dnf-leaves.*
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if %{with python3}
|
%if %{with python3}
|
||||||
%files -n python3-dnf-plugin-leaves
|
%files -n python3-dnf-plugin-leaves
|
||||||
%{python3_sitelib}/dnf-plugins/leaves.*
|
%{python3_sitelib}/dnf-plugins/leaves.*
|
||||||
%{python3_sitelib}/dnf-plugins/__pycache__/leaves.*
|
%{python3_sitelib}/dnf-plugins/__pycache__/leaves.*
|
||||||
%{_mandir}/man8/dnf.plugin.leaves.*
|
%{_mandir}/man8/dnf-leaves.*
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%else
|
%else
|
||||||
%exclude %{_mandir}/man8/dnf.plugin.leaves.*
|
%exclude %{_mandir}/man8/dnf-leaves.*
|
||||||
%if %{with python2}
|
%if %{with python2}
|
||||||
%exclude %{python2_sitelib}/dnf-plugins/leaves.*
|
%exclude %{python2_sitelib}/dnf-plugins/leaves.*
|
||||||
%endif
|
%endif
|
||||||
@ -623,7 +651,7 @@ PYTHONPATH=./plugins nosetests-%{python3_version} -s tests/
|
|||||||
%files -n python2-dnf-plugin-local
|
%files -n python2-dnf-plugin-local
|
||||||
%config(noreplace) %{_sysconfdir}/dnf/plugins/local.conf
|
%config(noreplace) %{_sysconfdir}/dnf/plugins/local.conf
|
||||||
%{python2_sitelib}/dnf-plugins/local.*
|
%{python2_sitelib}/dnf-plugins/local.*
|
||||||
%{_mandir}/man8/dnf.plugin.local.*
|
%{_mandir}/man8/dnf-local.*
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if %{with python3} && 0%{?rhel} == 0
|
%if %{with python3} && 0%{?rhel} == 0
|
||||||
@ -631,15 +659,32 @@ PYTHONPATH=./plugins nosetests-%{python3_version} -s tests/
|
|||||||
%config(noreplace) %{_sysconfdir}/dnf/plugins/local.conf
|
%config(noreplace) %{_sysconfdir}/dnf/plugins/local.conf
|
||||||
%{python3_sitelib}/dnf-plugins/local.*
|
%{python3_sitelib}/dnf-plugins/local.*
|
||||||
%{python3_sitelib}/dnf-plugins/__pycache__/local.*
|
%{python3_sitelib}/dnf-plugins/__pycache__/local.*
|
||||||
%{_mandir}/man8/dnf.plugin.local.*
|
%{_mandir}/man8/dnf-local.*
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if %{with python2}
|
%if %{with python2}
|
||||||
%files -n python2-dnf-plugin-migrate
|
%files -n python2-dnf-plugin-migrate
|
||||||
%{python2_sitelib}/dnf-plugins/migrate.*
|
%{python2_sitelib}/dnf-plugins/migrate.*
|
||||||
%{_mandir}/man8/dnf.plugin.migrate.*
|
%{_mandir}/man8/dnf-migrate.*
|
||||||
%else
|
%else
|
||||||
%exclude %{_mandir}/man8/dnf.plugin.migrate.*
|
%exclude %{_mandir}/man8/dnf-migrate.*
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if %{with python2}
|
||||||
|
%files -n python2-dnf-plugin-post-transaction-actions
|
||||||
|
%config(noreplace) %{_sysconfdir}/dnf/plugins/post-transaction-actions.conf
|
||||||
|
%config(noreplace) %{_sysconfdir}/dnf/plugins/post-transaction-actions.d
|
||||||
|
%{python2_sitelib}/dnf-plugins/post-transaction-actions.*
|
||||||
|
%{_mandir}/man8/dnf-post-transaction-actions.*
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if %{with python3}
|
||||||
|
%files -n python3-dnf-plugin-post-transaction-actions
|
||||||
|
%config(noreplace) %{_sysconfdir}/dnf/plugins/post-transaction-actions.conf
|
||||||
|
%config(noreplace) %{_sysconfdir}/dnf/plugins/post-transaction-actions.d
|
||||||
|
%{python3_sitelib}/dnf-plugins/post-transaction-actions.*
|
||||||
|
%{python3_sitelib}/dnf-plugins/__pycache__/post-transaction-actions.*
|
||||||
|
%{_mandir}/man8/dnf-post-transaction-actions.*
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?rhel} == 0
|
%if 0%{?rhel} == 0
|
||||||
@ -647,18 +692,18 @@ PYTHONPATH=./plugins nosetests-%{python3_version} -s tests/
|
|||||||
%if %{with python2}
|
%if %{with python2}
|
||||||
%files -n python2-dnf-plugin-show-leaves
|
%files -n python2-dnf-plugin-show-leaves
|
||||||
%{python2_sitelib}/dnf-plugins/show_leaves.*
|
%{python2_sitelib}/dnf-plugins/show_leaves.*
|
||||||
%{_mandir}/man8/dnf.plugin.show-leaves.*
|
%{_mandir}/man8/dnf-show-leaves.*
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if %{with python3}
|
%if %{with python3}
|
||||||
%files -n python3-dnf-plugin-show-leaves
|
%files -n python3-dnf-plugin-show-leaves
|
||||||
%{python3_sitelib}/dnf-plugins/show_leaves.*
|
%{python3_sitelib}/dnf-plugins/show_leaves.*
|
||||||
%{python3_sitelib}/dnf-plugins/__pycache__/show_leaves.*
|
%{python3_sitelib}/dnf-plugins/__pycache__/show_leaves.*
|
||||||
%{_mandir}/man8/dnf.plugin.show-leaves.*
|
%{_mandir}/man8/dnf-show-leaves.*
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%else
|
%else
|
||||||
%exclude %{_mandir}/man8/dnf.plugin.show-leaves.*
|
%exclude %{_mandir}/man8/dnf-show-leaves.*
|
||||||
%if %{with python2}
|
%if %{with python2}
|
||||||
%exclude %{python2_sitelib}/dnf-plugins/show_leaves.*
|
%exclude %{python2_sitelib}/dnf-plugins/show_leaves.*
|
||||||
%endif
|
%endif
|
||||||
@ -673,7 +718,7 @@ PYTHONPATH=./plugins nosetests-%{python3_version} -s tests/
|
|||||||
%config(noreplace) %{_sysconfdir}/dnf/plugins/versionlock.conf
|
%config(noreplace) %{_sysconfdir}/dnf/plugins/versionlock.conf
|
||||||
%config(noreplace) %{_sysconfdir}/dnf/plugins/versionlock.list
|
%config(noreplace) %{_sysconfdir}/dnf/plugins/versionlock.list
|
||||||
%{python2_sitelib}/dnf-plugins/versionlock.*
|
%{python2_sitelib}/dnf-plugins/versionlock.*
|
||||||
%{_mandir}/man8/dnf.plugin.versionlock.*
|
%{_mandir}/man8/dnf-versionlock.*
|
||||||
%if %{with yumcompatibility}
|
%if %{with yumcompatibility}
|
||||||
%{_mandir}/man8/yum-versionlock.*
|
%{_mandir}/man8/yum-versionlock.*
|
||||||
%{_mandir}/man5/yum-versionlock.*
|
%{_mandir}/man5/yum-versionlock.*
|
||||||
@ -689,7 +734,7 @@ PYTHONPATH=./plugins nosetests-%{python3_version} -s tests/
|
|||||||
%config(noreplace) %{_sysconfdir}/dnf/plugins/versionlock.list
|
%config(noreplace) %{_sysconfdir}/dnf/plugins/versionlock.list
|
||||||
%{python3_sitelib}/dnf-plugins/versionlock.*
|
%{python3_sitelib}/dnf-plugins/versionlock.*
|
||||||
%{python3_sitelib}/dnf-plugins/__pycache__/versionlock.*
|
%{python3_sitelib}/dnf-plugins/__pycache__/versionlock.*
|
||||||
%{_mandir}/man8/dnf.plugin.versionlock.*
|
%{_mandir}/man8/dnf-versionlock.*
|
||||||
%if %{with yumcompatibility}
|
%if %{with yumcompatibility}
|
||||||
%{_mandir}/man8/yum-versionlock.*
|
%{_mandir}/man8/yum-versionlock.*
|
||||||
%{_mandir}/man5/yum-versionlock.*
|
%{_mandir}/man5/yum-versionlock.*
|
||||||
@ -700,6 +745,37 @@ PYTHONPATH=./plugins nosetests-%{python3_version} -s tests/
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Jan 31 2020 Marek Blaha <mblaha@redhat.com> - 4.0.12-3
|
||||||
|
- [translations] Update translations from zanata (RhBug:1754960)
|
||||||
|
|
||||||
|
* Mon Jan 13 2020 Ales Matej <amatej@redhat.com> - 4.0.12-2
|
||||||
|
- [config-manager] Allow use of --set-enabled without arguments (RhBug:1679213)
|
||||||
|
- [reposync] Fix --delete with multiple repos (RhBug:1774103)
|
||||||
|
- Redesign reposync --latest for modular system (RhBug:1775434)
|
||||||
|
|
||||||
|
* Mon Nov 25 2019 Ales Matej <amatej@redhat.com> - 4.0.12-1
|
||||||
|
- Update to 4.0.12
|
||||||
|
- [reposync] Add --urls option (RhBug:1686602)
|
||||||
|
- [versionlock] Add --raw option (RhBug:1645564)
|
||||||
|
- [doc] move manpages for plugins to "dnf-PLUGIN" (RhBug:1706386)
|
||||||
|
- Add new plugin post-transaction-actions (RhBug:967264)
|
||||||
|
- [builddep] Add --skip-unavailable switch (RhBug:1628634)
|
||||||
|
- [versionlock] Don't apply excludes on @System (RhBug:1726712)
|
||||||
|
- [reposync] Ignore only modular excludes (RhBug:1750273)
|
||||||
|
|
||||||
|
* Thu Nov 14 2019 Ales Matej <amatej@redhat.com> - 4.0.11-1
|
||||||
|
- Update to 4.0.11
|
||||||
|
- [spec] Specify attributes for ghost file (RhBug:1754463)
|
||||||
|
- download: add the --debugsource option (RhBug:1637008)
|
||||||
|
- Fix incorrect handling richdeps in buildep (RhBug:1756902)
|
||||||
|
|
||||||
|
* Tue Oct 22 2019 Ales Matej <amatej@redhat.com> - 4.0.10-1
|
||||||
|
- Update to 4.0.10
|
||||||
|
- debuginfo-install: Update both debuginfo and debugsource for updated package (RhBug:1586084)
|
||||||
|
- copr: Support multilib repofiles (RhBug:1393664)
|
||||||
|
- copr: Fix disable if copr instance has non-default port
|
||||||
|
- copr: Fix repoid when using subdirectories in copr project
|
||||||
|
|
||||||
* Wed Aug 14 2019 Pavla Kratochvilova <pkratoch@redhat.com> - 4.0.8-3
|
* Wed Aug 14 2019 Pavla Kratochvilova <pkratoch@redhat.com> - 4.0.8-3
|
||||||
- Generate yum-utils(1) instead of symlinking (RhBug:1676418)
|
- Generate yum-utils(1) instead of symlinking (RhBug:1676418)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user