Compare commits

..

No commits in common. "rawhide" and "f22" have entirely different histories.

11 changed files with 145 additions and 531 deletions

View file

@ -4,8 +4,9 @@ aspects, and how it all works.
For the impatient: Run
etckeeper init
etckeeper vcs status
etckeeper vcs commit -m 'msg'
cd /etc
git status
git commit -m 'msg'
to get etckeeper started.
@ -13,9 +14,9 @@ Once you do that, the cronjob is in place and it'll do daily
autocommits for you. To disable it, set AVOID_DAILY_AUTOCOMMITS=1 in
/etc/etckeeper/etckeeper.conf.
There's a yum plugin enabled that autocommits before and after each
yum transaction. A dnf plugin is also included, in the subpackage
etckeeper-dnf.
The yum plugin can be disabled in
There's also a yum plugin enabled that autocommits before and after
each yum transaction. It can be disabled in
/etc/yum/pluginconf.d/etckeeper.conf.
If you ever want to deinstall etckeeper via yum, disable the plugin
like this: "yum --disableplugin=etckeeper remove etckeeper".

View file

@ -1,8 +0,0 @@
#!/bin/sh
set -e
if [ -e /etc/etckeeper/daily ] && [ -e /etc/etckeeper/etckeeper.conf ]; then
. /etc/etckeeper/etckeeper.conf
if [ "$AVOID_DAILY_AUTOCOMMITS" != "1" ]; then
/etc/etckeeper/daily
fi
fi

View file

@ -1,34 +0,0 @@
diff --git a/pre-commit.d/20warn-problem-files b/pre-commit.d/20warn-problem-files
index 43320e4..7899268 100755
--- a/pre-commit.d/20warn-problem-files
+++ b/pre-commit.d/20warn-problem-files
@@ -1,19 +1,20 @@
#!/bin/sh
set -e
-exclude_internal () {
- grep -E -v '(^|/)(\.git|\.hg|\.bzr|_darcs)/'
-}
+# (Note that when using this, the find expression must end with
+# -print or -exec, else the excluded directories will actually be
+# printed!)
+NOVCS='. -path ./.git -prune -o -path ./.bzr -prune -o -path ./.hg -prune -o -path ./_darcs -prune -o'
if [ "$VCS" = bzr ] || [ "$VCS" = darcs ]; then
- special=$(find . ! -type d ! -type f ! -type l | exclude_internal) || true
- hardlinks=$(find . -type f ! -links 1 | exclude_internal ) || true
+ special=$(find $NOVCS ! -type d ! -type f ! -type l -print) || true
+ hardlinks=$(find $NOVCS -type f ! -links 1 -print) || true
elif [ "$VCS" = hg ]; then
- special=$(find . ! -type d ! -type f ! -type l | exclude_internal) || true
- hardlinks=$(find . -type f ! -links 1 -exec hg status {} \; | exclude_internal ) || true
+ special=$(find $NOVCS ! -type d ! -type f ! -type l -print) || true
+ hardlinks=$(find $NOVCS -type f ! -links 1 -exec hg status {} \; -print) || true
elif [ "$VCS" = git ]; then
- special=$(find . ! -type d ! -type f ! -type l -exec git ls-files --exclude-standard --cached --others {} + | exclude_internal) || true
- hardlinks=$(find . -type f ! -links 1 -exec git ls-files --exclude-standard --cached --others {} + | exclude_internal) || true
+ special=$(find $NOVCS ! -type d ! -type f ! -type l -exec git ls-files --exclude-standard --cached --others {} + -print) || true
+ hardlinks=$(find $NOVCS -type f ! -links 1 -exec git ls-files --exclude-standard --cached --others {} + -print) || true
else
special=""
fi

View file

@ -1,52 +0,0 @@
diff --git a/etckeeper-dnf/etckeeper.py b/etckeeper-dnf/etckeeper.py
index e8a1a51..7c3210b 100644
--- a/etckeeper-dnf/etckeeper.py
+++ b/etckeeper-dnf/etckeeper.py
@@ -7,30 +7,34 @@
# Distutils code below was copied from etckeeper-bzr distributed with v1.15
#
-from dnfpluginscore import logger
-
-import os
+import logging
+import subprocess
import dnf
+logger = logging.getLogger('dnf.plugin')
+
class Etckeeper(dnf.Plugin):
name = 'etckeeper'
- def _out(self, msg):
- logger.debug('Etckeeper plugin: %s', msg)
+ def _run_command(self, command):
+ logger.debug('Etckeeper plugin: %s', command)
+ try:
+ with open("/dev/null", "wb") as devnull:
+ ret = subprocess.call(("etckeeper", command),
+ stdout=devnull, stderr=devnull,
+ close_fds=True)
+ if ret != 0:
+ raise dnf.exceptions.Error('"etckeeper %s" returned: %d' % (command, ret))
+ except OSError as err:
+ logger.warning('Failed to run "etckeeper %s": %s' % (command, err))
def resolved(self):
- self._out('pre transaction commit')
- command = '%s %s' % ('etckeeper', " pre-install")
- ret = os.system(command)
- if ret != 0:
- raise dnf.exceptions.Error('etckeeper returned %d' % (ret >> 8))
+ self._run_command("pre-install")
def transaction(self):
- self._out('post transaction commit')
- command = '%s %s > /dev/null' % ('etckeeper', "post-install")
- os.system(command)
+ self._run_command("post-install")
if __name__ == "__main__":
from distutils.core import setup

View file

@ -1,11 +0,0 @@
--- a/post-install.d/50vcs-commit 2023-12-05 10:45:18.967497833 +0100
+++ b/post-install.d/50vcs-commit 2023-12-05 10:46:00.848138455 +0100
@@ -6,7 +6,7 @@
# Parent process is etckeeper
# (Only procps ps is currently supported, others will fail,
# so this may end up empty.)
-ETCKEEPER_PID=$( ps --no-headers -o ppid "${PPID}" 2>/dev/null | sed 's/^ *//' )
+ETCKEEPER_PID=$( ps --no-headers -o ppid "$$" 2>/dev/null | sed 's/^ *//' )
# Find the parent of etckeeper and get the command line of the process
if ! [ -z "${ETCKEEPER_PID}" ]; then

View file

@ -1,14 +0,0 @@
diff -up etckeeper-1.18.7/update-ignore.d/01update-ignore.orig etckeeper-1.18.7/update-ignore.d/01update-ignore
--- etckeeper-1.18.7/update-ignore.d/01update-ignore.orig 2017-08-13 12:31:57.360734395 +0200
+++ etckeeper-1.18.7/update-ignore.d/01update-ignore 2017-08-13 12:32:45.246242478 +0200
@@ -91,7 +91,9 @@ writefile () {
nl
elif [ "$LOWLEVEL_PACKAGE_MANAGER" = "rpm" ]; then
comment "new and old versions of conffiles, stored by apt/rpm"
- ignore "*.rpm*"
+ ignore "*.rpmnew"
+ ignore "*.rpmorig"
+ ignore "*.rpmsave"
nl
elif [ "$LOWLEVEL_PACKAGE_MANAGER" = "pacman-g2" -o "$LOWLEVEL_PACKAGE_MANAGER" = "pacman" -o "$LOWLEVEL_PACKAGE_MANAGER" = "pacmatic" ]; then
comment "new and old versions of conffiles, stored by pacman"

View file

@ -1,52 +0,0 @@
From b5919d7919dda614c3c3c76ba126f45e205494bd Mon Sep 17 00:00:00 2001
From: Dimitri John Ledkov <xnox@ubuntu.com>
Date: Mon, 29 Apr 2019 14:11:09 +0100
Subject: [PATCH 1/3] Add breezy python3 plugin
---
Makefile | 3 +++
debian/changelog | 6 ++++++
debian/control | 6 +++---
etckeeper-brz/__init__.py | 34 ++++++++++++++++++++++++++++++++++
4 files changed, 46 insertions(+), 3 deletions(-)
create mode 100644 etckeeper-brz/__init__.py
Index: etckeeper-1.18.10/etckeeper-brz/__init__.py
===================================================================
--- /dev/null
+++ etckeeper-1.18.10/etckeeper-brz/__init__.py
@@ -0,0 +1,34 @@
+#
+# Breezy plugin that runs etckeeper pre-commit when necessary
+
+"""Runs etckeeper pre-commit when necessary."""
+
+from breezy.errors import BzrError
+import os
+
+def etckeeper_startcommit_hook(tree):
+ abspath = getattr(tree, "abspath", None)
+ if abspath is None or not os.path.exists(abspath(".etckeeper")):
+ # Only run the commit hook when this is an etckeeper branch
+ return
+ import subprocess
+ ret = subprocess.call(["etckeeper", "pre-commit", abspath(".")])
+ if ret != 0:
+ raise BzrError("etckeeper pre-commit failed")
+
+try:
+ from breezy.hooks import install_lazy_named_hook
+except ImportError:
+ from breezy.mutabletree import MutableTree
+ MutableTree.hooks.install_named_hook('start_commit',
+ etckeeper_startcommit_hook, 'etckeeper')
+else:
+ install_lazy_named_hook(
+ "breezy.mutabletree", "MutableTree.hooks",
+ 'start_commit', etckeeper_startcommit_hook, 'etckeeper')
+
+if __name__ == "__main__":
+ from distutils.core import setup
+ setup(name="brz-etckeeper",
+ packages=["breezy.plugins.etckeeper"],
+ package_dir={"breezy.plugins.etckeeper":"etckeeper-brz"})

View file

@ -1,13 +1,11 @@
diff -up etckeeper-1.18.7/Makefile.orig etckeeper-1.18.7/Makefile
--- etckeeper-1.18.7/Makefile.orig 2017-06-08 18:59:32.000000000 +0200
+++ etckeeper-1.18.7/Makefile 2017-06-12 22:58:50.802133039 +0200
@@ -15,13 +15,10 @@ CP=cp -R
diff -up etckeeper-1.18/Makefile.orig etckeeper-1.18/Makefile
--- etckeeper-1.18/Makefile.orig 2015-03-20 16:53:23.681037197 +0100
+++ etckeeper-1.18/Makefile 2015-03-20 16:56:28.697621078 +0100
@@ -13,11 +13,8 @@ CP=cp -R
INSTALL=install
INSTALL_EXE=${INSTALL}
INSTALL_DATA=${INSTALL} -m 0644
-PYTHON=python
FAKEROOT := $(shell command -v fakeroot 2> /dev/null)
TESTDIR := $(shell mktemp -u -d)
build: etckeeper.spec etckeeper.version
- -$(PYTHON) ./etckeeper-bzr/__init__.py build || echo "** bzr support not built"
@ -15,7 +13,7 @@ diff -up etckeeper-1.18.7/Makefile.orig etckeeper-1.18.7/Makefile
install: etckeeper.version
mkdir -p $(DESTDIR)$(etcdir)/etckeeper/ $(DESTDIR)$(vardir)/cache/etckeeper/
@@ -58,14 +55,10 @@ ifeq ($(HIGHLEVEL_PACKAGE_MANAGER),yum)
@@ -45,14 +42,10 @@ ifeq ($(HIGHLEVEL_PACKAGE_MANAGER),yum)
mkdir -p $(DESTDIR)$(etcdir)/yum/pluginconf.d
$(INSTALL_DATA) yum-etckeeper.conf $(DESTDIR)$(etcdir)/yum/pluginconf.d/etckeeper.conf
endif

View file

@ -1,4 +0,0 @@
# to be placed in /etc/dnf/libdnf5-plugins/actions.d
# requires dnf5 5.2.11.0 or later
pre_base_setup:::raise_error=1:/usr/bin/sh -c /usr/bin/etckeeper\ pre-install\ \|\ /usr/bin/sed\ -e\ 's/^/log.INFO=/'
post_transaction::::/usr/bin/sh -c /usr/bin/etckeeper\ post-install\ \|\ /usr/bin/sed\ -e\ 's/^/log.INFO=/'

View file

@ -1,51 +1,52 @@
%if 0%{?rhel} && 0%{?rhel} <= 6
%{!?__python2: %global __python2 /usr/bin/python2}
%{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
%endif
%{!?_pkgdocdir: %global _pkgdocdir %{_docdir}/%{name}-%{version}}
%if 0%{?fedora} || 0%{?rhel} > 5
%global with_bzr 1
%else
%global with_bzr 0
%endif
%if 0%{?fedora}
%global with_brz 1
%global with_dnf5 1
# todo: enable dnf for epel7 later
%global with_dnf 1
%if 0%{fedora} >= 22
%global dnf_is_mandatory 1
%endif
%if 0%{fedora} >= 23
%global dnf_uses_python3 1
%global __python_dnf %{__python3}
%else
%global dnf_uses_python3 0
%global __python_dnf %{__python2}
%endif
%else
%global with_dnf 0
%endif
Name: etckeeper
Version: 1.18.22
Release: 6%{?dist}
Version: 1.18.3
Release: 2%{?dist}
Summary: Store /etc in a SCM system (git, mercurial, bzr or darcs)
# Automatically converted from old format: GPLv2+ - review is highly recommended.
License: GPL-2.0-or-later
URL: https://etckeeper.branchable.com/
Source0: https://git.joeyh.name/index.cgi/etckeeper.git/snapshot/%{name}-%{version}.tar.gz
Group: Applications/System
License: GPLv2+
URL: http://etckeeper.branchable.com/
Source0: https://github.com/joeyh/etckeeper/archive/%{version}/%{name}-%{version}.tar.gz
Source1: README.fedora
Source2: cron.daily
Source3: etckeeper.actions
# build plugins separately
Patch0: etckeeper-makefile-remove-python-plugins.patch
# see rhbz#1460461
Patch1: etckeeper-1.18.7-fix-rpm-ignores.patch
# see rhbz#1480843
Patch2: etckeeper-1.18.18-fix-hg-warnings.patch
# From https://bugs.launchpad.net/ubuntu/+source/etckeeper/+bug/1826855
Patch3: etckeeper-add-breezy-python3-plugin.patch
# see rhbz#1762693 and https://github.com/ansible/ansible/issues/54949
# see also rhbz#1917461
Patch4: etckeeper-1.18.18-fix-output-for-ansible.patch
# see rhbz#2203408 and pr#7
Patch5: etckeeper-1.18.21-bz2203408.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch: noarch
BuildRequires: make
BuildRequires: %{_bindir}/markdown_py
Requires: git-core
Requires: perl-interpreter
BuildRequires: python-markdown
Requires: git >= 1.5.4
Requires: perl
Requires: crontabs
Requires: findutils
Requires: hostname
Requires: which
%if 0%{?dnf_is_mandatory}
Requires: %{name}-dnf = %{version}-%{release}
%if 0%{?with_dnf5}
Requires: %{name}-dnf5 = %{version}-%{release}
%endif # with_dnf5
BuildRequires: systemd
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
%endif # dnf_is_mandatory
%description
The etckeeper program is a tool to let /etc be stored in a git,
@ -58,56 +59,52 @@ understand the basics of working with version control.
The default backend is git, if want to use a another backend please
install the appropriate tool (mercurial, darcs or bzr).
%{?with_brz: To use breezy as bzr backend, please also install the %{name}-brz package.}
To use bzr as backend, please also install the %{name}-bzr package.
To start using the package please read %{_pkgdocdir}/README.
%if 0%{?with_brz}
%package brz
Summary: Support for bzr with etckeeper (via breezy)
BuildRequires: python3-devel
BuildRequires: brz
%if 0%{?with_bzr}
%package bzr
Summary: Support for bzr with etckeeper
Group: Applications/System
BuildRequires: python2-devel
BuildRequires: bzr
Requires: %{name} = %{version}-%{release}
Requires: brz
Requires: bzr
%description brz
This package provides a brz (breezy) backend for etckeeper, if you want to use
etckeeper with (bzr) bazaar repositories, install this package.
%endif # with_brz
%description bzr
This package provides a bzr backend for etckeeper, if you want to use
etckeeper with bzr backend, install this package.
%endif # with_bzr
%if 0%{?with_dnf}
%package dnf
Summary: DNF plugin for etckeeper support
Group: Applications/System
%if 0%{?dnf_uses_python3}
BuildRequires: python3-devel
BuildRequires: python3-dnf
Requires: python3-dnf
%else
BuildRequires: python2-devel
%endif # dnf_uses_python3
BuildRequires: dnf
BuildRequires: dnf-plugins-core
Requires: %{name} = %{version}-%{release}
Requires: dnf
Requires: dnf-plugins-core
%description dnf
This package provides a DNF plugin for etckeeper. If you want to use
etckeeper with DNF, install this package.
%if 0%{?with_dnf5}
%package dnf5
Summary: DNF5 plugin for etckeeper support
Requires: %{name} = %{version}-%{release}
Requires: libdnf5-plugin-actions >= 5.2.11.0
Requires: sed
%description dnf5
This package provides a DNF5 plugin for etckeeper. If you want to use
etckeeper with DNF5, install this package.
%endif # with_dnf5
%endif # with_dnf
%prep
%autosetup -p1
sed -e 's|HIGHLEVEL_PACKAGE_MANAGER=.*|HIGHLEVEL_PACKAGE_MANAGER=dnf|' \
-e 's|LOWLEVEL_PACKAGE_MANAGER=.*|LOWLEVEL_PACKAGE_MANAGER=rpm|' \
%setup -q
%patch0 -p1
sed -e 's|HIGHLEVEL_PACKAGE_MANAGER=apt|HIGHLEVEL_PACKAGE_MANAGER=yum|' \
-e 's|LOWLEVEL_PACKAGE_MANAGER=dpkg|LOWLEVEL_PACKAGE_MANAGER=rpm|' \
-i etckeeper.conf
sed -e 's|^prefix=.*|prefix=%{_prefix}|' \
-e 's|^bindir=.*|bindir=%{_bindir}|' \
@ -116,333 +113,126 @@ sed -e 's|^prefix=.*|prefix=%{_prefix}|' \
-e 's|^vardir=.*|vardir=%{_localstatedir}|' \
-e 's|^INSTALL=.*|INSTALL=install -p|' \
-e 's|^CP=.*|CP=cp -pR|' \
-e 's|^systemddir=.*|systemddir=%{_unitdir}|' \
-i Makefile
# move each plugin in its own subdirectory, so each has its own build/
# directory
mkdir brz-plugin
mv etckeeper-brz brz-plugin
ln -snf etckeeper-brz/__init__.py brz-plugin/setup.py
mkdir dnf-plugin
mv etckeeper-dnf dnf-plugin
ln -snf etckeeper-dnf/etckeeper.py dnf-plugin/setup.py
mkdir bzr-plugin ; mv etckeeper-bzr bzr-plugin
mkdir dnf-plugin ; mv etckeeper-dnf dnf-plugin
cp -av %{SOURCE1} .
%generate_buildrequires
%if 0%{?with_brz}
cd brz-plugin
%pyproject_buildrequires
cd ..
%endif # with_brz
cd dnf-plugin
%pyproject_buildrequires
cd ..
%build
%make_build
make %{?_smp_mflags}
%if 0%{?with_brz}
cd brz-plugin
%pyproject_wheel
cd ..
%endif # with_brz
%if 0%{?with_bzr}
pushd bzr-plugin
%{__python2} etckeeper-bzr/__init__.py build
popd
%endif
cd dnf-plugin
%pyproject_wheel
cd ..
%if 0%{?with_dnf}
pushd dnf-plugin
%{__python_dnf} etckeeper-dnf/etckeeper.py build
popd
%endif
%if 0%{?fedora} || 0%{?rhel} > 6
# the binary in python-markdown has been renamed
markdown_py -f README.html README.md
%else
markdown -f README.html README.md
%endif
%install
%make_install
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}
%if 0%{?with_brz}
cd brz-plugin
%pyproject_install
cd ..
%endif # with_brz
%if 0%{?with_bzr}
pushd bzr-plugin
%{__python2} etckeeper-bzr/__init__.py install -O1 --skip-build --root %{buildroot}
popd
%endif
cd dnf-plugin
%pyproject_install
cd ..
%if 0%{?with_dnf}
pushd dnf-plugin
%{__python_dnf} etckeeper-dnf/etckeeper.py install -O1 --skip-build --root %{buildroot}
popd
%endif
install -D -p %{SOURCE2} %{buildroot}%{_sysconfdir}/cron.daily/%{name}
install -D -p debian/cron.daily %{buildroot}%{_sysconfdir}/cron.daily/%{name}
install -d %{buildroot}%{_localstatedir}/cache/%{name}
%if 0%{?with_dnf5}
install -D -p %{SOURCE3} %{buildroot}%{_sysconfdir}/dnf/libdnf5-plugins/actions.d/%{name}.actions
%endif # with_dnf5
# on RHEL < 7, move the completion file back to /etc/bash_completion.d
%if !(0%{?fedora} || 0%{?rhel} >= 7)
install -d %{buildroot}%{_sysconfdir}/bash_completion.d
mv %{buildroot}%{_datadir}/bash-completion/completions/%{name} \
%{buildroot}%{_sysconfdir}/bash_completion.d/%{name}
%endif
%clean
rm -rf %{buildroot}
%post
if [ $1 -gt 1 ] ; then
%{_bindir}/%{name} update-ignore
fi
%systemd_post %{name}.service
%systemd_post %{name}.timer
%preun
%systemd_preun %{name}.service
%systemd_preun %{name}.timer
%postun
%systemd_postun %{name}.service
%systemd_postun %{name}.timer
%files
%doc README.html README.fedora
%if 0%{?_licensedir:1}
%license GPL
%else
%doc GPL
%endif # licensedir
%{_bindir}/%{name}
%{_mandir}/man8/%{name}.8*
%dir %{_sysconfdir}/%{name}
%{_sysconfdir}/%{name}/*.d
%{_sysconfdir}/%{name}/daily
%config(noreplace) %{_sysconfdir}/%{name}/%{name}.conf
%config(noreplace) %{_sysconfdir}/cron.daily/%{name}
%{_sysconfdir}/cron.daily/%{name}
%if 0%{?fedora} || 0%{?rhel} >= 7
%dir %{_datadir}/bash-completion
%dir %{_datadir}/bash-completion/completions
%{_datadir}/bash-completion/completions/%{name}
%dir %{_datadir}/zsh
%dir %{_datadir}/zsh/vendor-completions
%{_datadir}/zsh/vendor-completions/_%{name}
%else
%dir %{_sysconfdir}/bash_completion.d
%{_sysconfdir}/bash_completion.d/%{name}
%endif
%dir %{_prefix}/lib/yum-plugins
%{_prefix}/lib/yum-plugins/%{name}.*
%dir %{_sysconfdir}/yum/pluginconf.d
%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/%{name}.conf
%{_localstatedir}/cache/%{name}
%{_unitdir}/%{name}.service
%{_unitdir}/%{name}.timer
%if 0%{?with_brz}
%files brz
# co-own the plugins directories
# breezy installs to sitearch
%dir %{python3_sitelib}/breezy/
%dir %{python3_sitelib}/breezy/plugins/
%{python3_sitelib}/breezy/plugins/%{name}/
# exclude egg-info dir, doesn't contain meaningful information
%exclude %{python3_sitelib}/brz_%{name}-*.dist-info
%endif # with_brz
%if 0%{?with_bzr}
%files bzr
%{python2_sitelib}/bzrlib/plugins/%{name}
%{python2_sitelib}/bzr_%{name}-*.egg-info
%endif # with_bzr
%if 0%{?with_dnf}
%files dnf
%if 0%{?dnf_uses_python3}
%{python3_sitelib}/dnf-plugins/%{name}.py
%exclude %{python3_sitelib}/dnf-plugins/__init__.py
%{python3_sitelib}/dnf-plugins/__pycache__/%{name}.*
%exclude %{python3_sitelib}/dnf-plugins/__pycache__/__init__.*
# exclude egg-info dir, doesn't contain meaningful information
%exclude %{python3_sitelib}/dnf_%{name}-*.dist-info
%if 0%{?with_dnf5}
%files dnf5
%{_sysconfdir}/dnf/libdnf5-plugins/actions.d/%{name}.actions
%endif # with_dnf5
%{python3_sitelib}/dnf_%{name}-*.egg-info
%else
%{python2_sitelib}/dnf-plugins/%{name}.py*
%exclude %{python2_sitelib}/dnf-plugins/__init__.py*
%{python2_sitelib}/dnf_%{name}-*.egg-info
%endif # dnf_uses_python3
%endif # with_dnf
%changelog
* Fri Sep 19 2025 Python Maint <python-maint@redhat.com> - 1.18.22-6
- Rebuilt for Python 3.14.0rc3 bytecode
* Fri Aug 15 2025 Python Maint <python-maint@redhat.com> - 1.18.22-5
- Rebuilt for Python 3.14.0rc2 bytecode
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.22-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Tue Jul 15 2025 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.22-3
- Fix conditional.
* Tue Jul 15 2025 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.22-2
- Update action file to produce expected action output.
* Mon Jul 14 2025 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.22-1
- Update to 1.18.22.
- Remove all EL7-related conditionals and parts.
- Update for current Python packaging guidelines (rhbz#2377253).
- Add support for DNF5 (rhbz#2326283).
* Tue Jun 03 2025 Python Maint <python-maint@redhat.com> - 1.18.21-6
- Rebuilt for Python 3.14
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.21-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Thu Jul 25 2024 Miroslav Suchý <msuchy@redhat.com> - 1.18.21-4
- convert license to SPDX
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.21-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Fri Jun 07 2024 Python Maint <python-maint@redhat.com> - 1.18.21-2
- Rebuilt for Python 3.13
* Wed May 1 2024 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.21-1
- Update to 1.18.21.
- Add patch for rhbz#2203408 from pr#7.
- Depend on python3-dnf, not dnf (pr#6).
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.20-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.20-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Tue Jul 25 2023 Python Maint <python-maint@redhat.com> - 1.18.20-3
- Rebuilt for Python 3.12
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.20-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Sat Jan 28 2023 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.20-1
- Update to 1.18.20.
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.18-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Fri Dec 2 2022 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.18-1
- Update to 1.18.18.
- Rebase patches.
- Update patch to fix logging with Ansible (#1917461).
- BuildRequire setuptools when Python >= 3.12.
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.17-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Wed Jun 15 2022 Python Maint <python-maint@redhat.com> - 1.18.17-2
- Rebuilt for Python 3.11
* Tue Mar 8 2022 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.17-1
- Update to 1.18.17.
* Wed Feb 16 2022 Todd Zullinger <tmz@pobox.com> - 1.18.16-6
- Require git-core instead of git
* Mon Jan 31 2022 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.16-5
- Exclude egg-info directories for dnf, bzr and brz plugins (#2048085).
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.16-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.16-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 1.18.16-2
- Rebuilt for Python 3.10
* Tue Feb 9 2021 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.16-1
- Update to 1.18.16.
- Update spec file, remove obsolete conditionals.
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.14-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.14-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 1.18.14-2
- Rebuilt for Python 3.9
* Sat Mar 14 2020 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.14-1
- Update to 1.18.14.
- Include zsh completion.
- Mark cron file as config file.
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.12-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Sun Dec 1 2019 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.12-1
- Update to 1.18.12.
- New version of patch to fix logging with Ansible (#1762693).
* Tue Nov 19 2019 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.10-6
- Add patch to fix logging with Ansible (#1762693).
* Fri Nov 01 2019 Miro Hrončok <mhroncok@redhat.com> - 1.18.10-5
- Add breezy plugin on Fedora 31+
- Remove bazaar plugin on Fedora 32+
- https://fedoraproject.org/wiki/Changes/ReplaceBazaarWithBreezy
* Fri Oct 4 2019 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.10-4
- Package fixes for CentOS8.
- Build dnf plugin on CentOS7.
* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 1.18.10-3
- Rebuilt for Python 3.8.0rc1 (#1748018)
* Thu Oct 3 2019 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.10-2
- There is currently no bzr for rhel8.
* Thu Oct 3 2019 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.10-1
- Update to 1.18.10.
* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 1.18.8-4
- Rebuilt for Python 3.8
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.8-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Mon Jul 16 2018 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.8-1
- Update to 1.18.8.
- Update URL: and Source: tags.
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.7-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 1.18.7-4
- Rebuilt for Python 3.7
* Mon May 14 2018 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.7-3
- Use correct Requires: for the hostname cmd on EPEL6.
* Sat Apr 21 2018 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.7-2
- DNF is no longer available in EPEL7.
* Sat Apr 21 2018 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.7-1
- Update to 1.18.7.
- Rebase patches.
- Slightly modernize spec file.
- Update Python dependencies.
- Fix ignore rules (rhbz#1460461).
- Update README.fedora (rhbz#1478655).
- Add missing BRs (rhbz#1418790).
- Add patch to prevent mercurial warnings (rhbz#1480843).
* Wed Feb 07 2018 Iryna Shcherbina <ishcherb@redhat.com> - 1.18.5-7
- Update Python 2 dependency declarations to new packaging standards
(See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.5-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.5-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Thu Jul 13 2017 Petr Pisar <ppisar@redhat.com> - 1.18.5-4
- perl dependency renamed to perl-interpreter
<https://fedoraproject.org/wiki/Changes/perl_Package_to_Install_Core_Modules>
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.18.5-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Mon Dec 19 2016 Miro Hrončok <mhroncok@redhat.com> - 1.18.5-2
- Rebuild for Python 3.6
* Tue Aug 23 2016 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.5-1
- Update to 1.18.5.
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.18.3-3
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
* Wed Mar 2 2016 Thomas Moschny <thomas.moschny@gmx.de> - 1.18.3-2
- Move completion file back to /etc/bash_completion.d on EPEL<7.

View file

@ -1 +1 @@
SHA512 (etckeeper-1.18.22.tar.gz) = e35ab90862c1f4426c17aec4d9ffe5975c652b290645ac333e9f27fcc157b9eba5e0efe73553a400464102c939f085f4e08f4b04564a015ad6941b1d50dbbe76
570ddf024b8c0621e7b8a33478016c68 etckeeper-1.18.3.tar.gz