From 5264a58fcbe66f668671ea9a5128749ad864242f Mon Sep 17 00:00:00 2001 From: zhengyaohui Date: Sun, 12 Sep 2021 17:15:43 +0800 Subject: [PATCH] Package init --- cron.daily | 8 + ...eeper-1.18.12-fix-output-for-ansible.patch | 162 +++++++++++++++++ etckeeper-1.18.16.tar.gz | Bin 0 -> 93638 bytes etckeeper-1.18.7-fix-hg-warnings.patch | 34 ++++ etckeeper-1.18.7-fix-rpm-ignores.patch | 14 ++ etckeeper-add-breezy-python3-plugin.patch | 52 ++++++ ...eeper-makefile-remove-python-plugins.patch | 32 ++++ etckeeper.spec | 170 ++++++++++++++++++ 8 files changed, 472 insertions(+) create mode 100644 cron.daily create mode 100644 etckeeper-1.18.12-fix-output-for-ansible.patch create mode 100644 etckeeper-1.18.16.tar.gz create mode 100644 etckeeper-1.18.7-fix-hg-warnings.patch create mode 100644 etckeeper-1.18.7-fix-rpm-ignores.patch create mode 100644 etckeeper-add-breezy-python3-plugin.patch create mode 100644 etckeeper-makefile-remove-python-plugins.patch create mode 100644 etckeeper.spec diff --git a/cron.daily b/cron.daily new file mode 100644 index 0000000..eb74401 --- /dev/null +++ b/cron.daily @@ -0,0 +1,8 @@ +#!/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 diff --git a/etckeeper-1.18.12-fix-output-for-ansible.patch b/etckeeper-1.18.12-fix-output-for-ansible.patch new file mode 100644 index 0000000..7ca4b4f --- /dev/null +++ b/etckeeper-1.18.12-fix-output-for-ansible.patch @@ -0,0 +1,162 @@ +From 8266a4fb45621e08085c58537a531f33fc7eca74 Mon Sep 17 00:00:00 2001 +From: Alan Jenkins +Date: Wed, 10 Apr 2019 00:19:14 +0100 +Subject: [PATCH 1/2] DNF: stderr is not ours to log to (and doing so breaks + Ansible) + +stderr does not belong to etckeeper-dnf +--------------------------------------- + +The Ansible dnf module uses the python dnf bindings. In contexts like +these, stdout/stderr is owned by the host app (Ansible). dnf should not +mess with stdout/stderr, unless the host app asks it to log there. + +Specifically, we were breaking the JSON output of the Ansible dnf module. +This was only noticeable when the etckeeper message began with a "[" +character. Ansible has a mechanism to try and skip header messages like +login banners. However, "[" is a valid character to start a JSON document. + +https://unix.stackexchange.com/questions/511210/ansible-dnf-module-module-failure/ + +Solution +-------- + +Instead, log any non-zero exit status through the dnf logger. + +For the pre-transaction etckeeper run, this message replaces an exception. +So we now avoid logging a traceback, which did not appear to add anything +useful. (In my testing, dnf was continued to install after the exception +was logged). + +I have also added a warning message for the post-transaction etckeeper run. + +I switched from os.system() to subprocess.call(). The latter interface +supports better error reporting. (When I tested os.system(), it returned +an errno number which was indistinguishable from an exit code). + +etckeeper >/dev/null 2>&1 +-------------------------- + +Any specific error messages from etckeeper are now discarded. Because +unfortunately, python conventions about passing text strings have been +somewhat unclear. It is an error to log strings if the encoding settings +of a registered logger cannot handle them. Because a "bad" character +causes the entire string to be discarded, and optionally an exception +printed to stderr. In a previous proposal I showed code that should be +correct in all expected cases. However, the length of comment required to +define "all expected cases" was not very reassuring. + +That was on top of explaining that dnf has a workaround that will avoid +raising exceptions when arbitrary unicode is logged to stdout. My proposal +had to include that explanation, to show that we were not breaking a +system package manager. + +It might sound strange to talk about error messages with characters +we cannot encode. But I have one word for you: "filenames". + +(After the recent python PR #14008[1], logging.basicConfig() defaults +to errors='backslashreplace'. Also, errors= can be manually specified when +creating a lower-level logging "Handler". I think this will resolve the +problem in the future. It means that when programs are written for this +new version of python, it should be the responsibility of the log setup +code to prevent UnicodeEncodeError.) + +[1] https://github.com/python/cpython/pull/14008 +--- + etckeeper-dnf/etckeeper.py | 27 ++++++++++++++++----------- + 1 file changed, 16 insertions(+), 11 deletions(-) + +diff --git a/etckeeper-dnf/etckeeper.py b/etckeeper-dnf/etckeeper.py +index e8a1a51..69edd88 100644 +--- a/etckeeper-dnf/etckeeper.py ++++ b/etckeeper-dnf/etckeeper.py +@@ -9,7 +9,7 @@ + + from dnfpluginscore import logger + +-import os ++import subprocess + import dnf + + +@@ -17,20 +17,25 @@ 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: ++ logger.warning('"etckeeper %s" failed (exit code %d)' % (command, ret)) ++ if ret < 0: ++ logger.warning('"etckeeper %s" died (signal %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 +-- +2.23.0 + + +From 7cda9678b1e60c0495a2a522721b319843d5fae0 Mon Sep 17 00:00:00 2001 +From: Alan Jenkins +Date: Tue, 23 Apr 2019 20:15:01 +0100 +Subject: [PATCH 2/2] Do not use dnfpluginscore.logger + +dnfpluginscore is not core support for dnf plugins, it is just a +collection of "core plugins" for dnf. There is equally +dnfpluginsextras and dnfpluginsextras.logger. + +A comment in dnf.logger comment says the logger name 'dnf.plugin' is "api". +So we can safely rely on that name. + +Technically you can install etckeeper without the dnfpluginscore package +(at least I managed to run into this for python2, on a Fedora 29 system +which uses python3 for dnf by default). +--- + etckeeper-dnf/etckeeper.py | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/etckeeper-dnf/etckeeper.py b/etckeeper-dnf/etckeeper.py +index 69edd88..d9dd2c3 100644 +--- a/etckeeper-dnf/etckeeper.py ++++ b/etckeeper-dnf/etckeeper.py +@@ -7,11 +7,12 @@ + # Distutils code below was copied from etckeeper-bzr distributed with v1.15 + # + +-from dnfpluginscore import logger +- ++import logging + import subprocess + import dnf + ++logger = logging.getLogger('dnf.plugin') ++ + + class Etckeeper(dnf.Plugin): + +-- +2.23.0 + diff --git a/etckeeper-1.18.16.tar.gz b/etckeeper-1.18.16.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..8d2165869841372af385d1abb7e5b3ee51947a67 GIT binary patch literal 93638 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%0A1F4w7BPeV%Y#>~aWFEQL{y;2q10sOCBTIp} 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 Rk9rFTB)oKoYX1-F{{VeWnP~t3 literal 0 HcmV?d00001 diff --git a/etckeeper-1.18.7-fix-hg-warnings.patch b/etckeeper-1.18.7-fix-hg-warnings.patch new file mode 100644 index 0000000..90c6818 --- /dev/null +++ b/etckeeper-1.18.7-fix-hg-warnings.patch @@ -0,0 +1,34 @@ +diff --git a/pre-commit.d/20warn-problem-files b/pre-commit.d/20warn-problem-files +index 6bd5c2b..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 () { +- egrep -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 diff --git a/etckeeper-1.18.7-fix-rpm-ignores.patch b/etckeeper-1.18.7-fix-rpm-ignores.patch new file mode 100644 index 0000000..1cb5fed --- /dev/null +++ b/etckeeper-1.18.7-fix-rpm-ignores.patch @@ -0,0 +1,14 @@ +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" diff --git a/etckeeper-add-breezy-python3-plugin.patch b/etckeeper-add-breezy-python3-plugin.patch new file mode 100644 index 0000000..d234bef --- /dev/null +++ b/etckeeper-add-breezy-python3-plugin.patch @@ -0,0 +1,52 @@ +From b5919d7919dda614c3c3c76ba126f45e205494bd Mon Sep 17 00:00:00 2001 +From: Dimitri John Ledkov +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"}) diff --git a/etckeeper-makefile-remove-python-plugins.patch b/etckeeper-makefile-remove-python-plugins.patch new file mode 100644 index 0000000..7ed0de8 --- /dev/null +++ b/etckeeper-makefile-remove-python-plugins.patch @@ -0,0 +1,32 @@ +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 + 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" +- -$(PYTHON) ./etckeeper-dnf/etckeeper.py build || echo "** DNF support not built" + + install: etckeeper.version + mkdir -p $(DESTDIR)$(etcdir)/etckeeper/ $(DESTDIR)$(vardir)/cache/etckeeper/ +@@ -58,14 +55,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 +-ifeq ($(HIGHLEVEL_PACKAGE_MANAGER),dnf) +- -$(PYTHON) ./etckeeper-dnf/etckeeper.py install --root=$(DESTDIR) ${PYTHON_INSTALL_OPTS} || echo "** DNF support not installed" +-endif + ifeq ($(HIGHLEVEL_PACKAGE_MANAGER),zypper) + mkdir -p $(DESTDIR)$(prefix)/lib/zypp/plugins/commit + $(INSTALL) zypper-etckeeper.py $(DESTDIR)$(prefix)/lib/zypp/plugins/commit/zypper-etckeeper.py + endif +- -$(PYTHON) ./etckeeper-bzr/__init__.py install --root=$(DESTDIR) ${PYTHON_INSTALL_OPTS} || echo "** bzr support not installed" + echo "** installation successful" + + clean: etckeeper.spec etckeeper.version diff --git a/etckeeper.spec b/etckeeper.spec new file mode 100644 index 0000000..d4cecf3 --- /dev/null +++ b/etckeeper.spec @@ -0,0 +1,170 @@ +%{!?_pkgdocdir: %global _pkgdocdir %{_docdir}/%{name}-%{version}} +%global dnf_is_mandatory 1 +Name: etckeeper +Version: 1.18.16 +Release: 1 +Summary: Store /etc in a SCM system (git, mercurial, bzr or darcs) +License: GPLv2+ +URL: https://etckeeper.branchable.com/ +Source0: https://git.joeyh.name/index.cgi/etckeeper.git/snapshot/%{name}-%{version}.tar.gz +Source2: cron.daily +Patch0: etckeeper-makefile-remove-python-plugins.patch +Patch1: etckeeper-1.18.7-fix-rpm-ignores.patch +Patch2: etckeeper-1.18.7-fix-hg-warnings.patch +Patch3: etckeeper-add-breezy-python3-plugin.patch +Patch4: etckeeper-1.18.12-fix-output-for-ansible.patch +BuildArch: noarch +BuildRequires: python3-markdown +Requires: git >= 1.6.1 perl-interpreter crontabs findutils hostname which +%if 0%{?dnf_is_mandatory} +Requires: %{name}-dnf = %{version}-%{release} +%endif +BuildRequires: systemd +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd +%description +The etckeeper program is a tool to let /etc be stored in a git, +mercurial, bzr or darcs repository. It hooks into yum to automatically +commit changes made to /etc during package upgrades. It tracks file +metadata that version control systems do not normally support, but that +is important for /etc, such as the permissions of /etc/shadow. It's +quite modular and configurable, while also being simple to use if you +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). +%{?bazaar: To use bazaar/breezy as backend, please also install the %{name}-%{bazaar} 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 brz +Requires: %{name} = %{version}-%{release} brz +%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 + +%package dnf +Summary: DNF plugin for etckeeper support +BuildRequires: python3-devel +BuildRequires: dnf dnf-plugins-core make +Requires: %{name} = %{version}-%{release} dnf dnf-plugins-core +%description dnf +This package provides a DNF plugin for etckeeper. If you want to use +etckeeper with DNF, install this package. + +%prep +%autosetup -p1 +%if 0%{?with_yum} +sed -e 's|HIGHLEVEL_PACKAGE_MANAGER=.*|HIGHLEVEL_PACKAGE_MANAGER=yum|' \ +%else +sed -e 's|HIGHLEVEL_PACKAGE_MANAGER=.*|HIGHLEVEL_PACKAGE_MANAGER=dnf|' \ +%endif + -e 's|LOWLEVEL_PACKAGE_MANAGER=.*|LOWLEVEL_PACKAGE_MANAGER=rpm|' \ + -i etckeeper.conf +sed -e 's|^prefix=.*|prefix=%{_prefix}|' \ + -e 's|^bindir=.*|bindir=%{_bindir}|' \ + -e 's|^etcdir=.*|etcdir=%{_sysconfdir}|' \ + -e 's|^mandir=.*|mandir=%{_mandir}|' \ + -e 's|^vardir=.*|vardir=%{_localstatedir}|' \ + -e 's|^INSTALL=.*|INSTALL=install -p|' \ + -e 's|^CP=.*|CP=cp -pR|' \ + -e 's|^systemddir=.*|systemddir=%{_unitdir}|' \ + -i Makefile +mkdir brz-plugin ; mv etckeeper-brz brz-plugin +mkdir dnf-plugin ; mv etckeeper-dnf dnf-plugin + +%build +%make_build +%if 0%{?with_brz} +pushd brz-plugin +%define py_setup etckeeper-brz/__init__.py +%py3_build +popd +%endif +pushd dnf-plugin +%define py_setup etckeeper-dnf/etckeeper.py build +%py3_build +popd +`ls /usr/bin/ |grep "markdown"` -f README.html README.md + +%install +%make_install +%if 0%{?with_brz} +pushd brz-plugin +%define py_setup etckeeper-brz/__init__.py +%py3_install +popd +%endif +pushd dnf-plugin +%define py_setup etckeeper-dnf/etckeeper.py build +%py3_install +popd +%if 0%{?dnf_is_mandatory} +sed -e 's|HIGHLEVEL_PACKAGE_MANAGER=.*|HIGHLEVEL_PACKAGE_MANAGER=dnf|' \ + -i %{buildroot}%{_sysconfdir}/%{name}/%{name}.conf +%endif +install -D -p %{SOURCE2} %{buildroot}%{_sysconfdir}/cron.daily/%{name} +install -d %{buildroot}%{_localstatedir}/cache/%{name} + +%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.md +%license GPL +%{_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} +%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} +%if 0%{?with_yum} +%dir %{_prefix}/lib/yum-plugins +%{_prefix}/lib/yum-plugins/%{name}.* +%dir %{_sysconfdir}/yum/pluginconf.d +%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/%{name}.conf +%endif +%{_localstatedir}/cache/%{name} +%{_unitdir}/%{name}.service +%{_unitdir}/%{name}.timer +%if 0%{?with_brz} + +%files brz +%dir %{python3_sitelib}/breezy/ +%dir %{python3_sitelib}/breezy/plugins/ +%{python3_sitelib}/breezy/plugins/%{name}/ +%{python3_sitelib}/brz_%{name}-*.egg-info +%endif + +%files dnf +%{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__.* +%{python3_sitelib}/dnf_%{name}-*.egg-info + +%changelog +* Tue Sep 7 2021 zhengyaohui - 1.18.16-1 +- package init