Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37530006
en ru br
Репозитории ALT
S:1.18.8-alt2
5.1: 0.50-alt5.M51.1
4.1: 0.10-alt2
www.altlinux.org/Changes

Группа :: Система/Настройка/Прочее
Пакет: etckeeper

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Патч: etckeeper-1.18.8-alt2.patch
Скачать


 .gear/etckeeper.spec                               | 230 +++++++++++++++++++++
 .gear/merge                                        |   1 +
 .gear/rules                                        |   3 +
 .../tags/4535cb6de35d66ea516356930d24608154282bc5  |  22 ++
 .gear/tags/list                                    |   1 +
 apt.conf                                           |   5 +-
 debian/cron.daily                                  |   0
 etckeeper                                          |   5 +-
 etckeeper.8                                        |   6 +-
 etckeeper.conf                                     |   2 +-
 list-installed.d/50list-installed                  |   2 +-
 post-install.d/50vcs-commit                        |   6 +-
 pre-commit.d/20warn-problem-files                  |   2 +-
 pre-install.d/10packagelist                        |   7 +-
 14 files changed, 275 insertions(+), 17 deletions(-)
diff --git a/.gear/etckeeper.spec b/.gear/etckeeper.spec
new file mode 100644
index 0000000..3351c97
--- /dev/null
+++ b/.gear/etckeeper.spec
@@ -0,0 +1,230 @@
+%define _unpackaged_files_terminate_build 1
+
+Name: etckeeper
+Version: 1.18.8
+Release: alt2
+
+Summary: Etckeeper help to keep your /etc directory in VCS repository
+License: GPL-2.0-or-later
+Group: System/Configuration/Other
+Url: https://etckeeper.branchable.com/
+Source: %name-%version.tar
+Patch: %name-%version-%release.patch
+BuildArch: noarch
+AutoReq: yes,noshell
+Requires: coreutils diffutils findutils grep sh
+Requires: git-core >= 1.6.0
+Requires: perl-base
+Obsoletes: %name-origin < %version-%release
+
+Packager: Evgenii Terechkov <evg@altlinux.org>
+
+%description
+etckeeper is a collection of tools to let /etc be stored in a VCS
+repository. It hooks into apt/yum/packman/etc to automatically commit
+changes made to /etc during package upgrades. It's quite modular and
+configurable, while also being simple to use if you understand the
+basics of working with VCS.
+
+%prep
+%setup
+%patch -p1
+
+%build
+%install
+make install DESTDIR=%buildroot
+install -D debian/cron.daily %buildroot%_sysconfdir/cron.daily/%name
+
+# We dont want bzr now:
+rm -rf %buildroot%_libdir/python*
+# There is no cruft package for ALT:
+rm -rf %buildroot%_sysconfdir/cruft
+
+mv -v %buildroot%_sysconfdir/apt/apt.conf.d/05%name %buildroot%_sysconfdir/apt/apt.conf.d/%name.conf
+
+%check
+find %buildroot -type f | xargs file | grep 'shell script' | cut -d: -f1 | xargs -n1 -t bash -n
+
+%post
+if [ -e %_sysconfdir/.git/hooks/pre-commit ] && grep -E '^(/us[rb]/s?bin/)?%name' %_sysconfdir/.git/hooks/pre-commit >/dev/null 2>&1; then
+ echo "Replacing path to etckeeper in %_sysconfdir/.git/hooks/pre-commit"
+ sed -i 's!^/usr/sbin/etckeeper!etckeeper!;s!^/usr/bin/etckeeper!etckeeper!;s!^/usb/sbin/etckeeper!etckeeper!' %_sysconfdir/.git/hooks/pre-commit
+fi
+
+%files
+%_bindir/%name
+%_sysconfdir/%name
+%config(noreplace) %_sysconfdir/%name/%name.conf
+%_sysconfdir/apt/apt.conf.d/%name.conf
+%_man8dir/%{name}.*
+/usr/share/bash-completion/completions/%name
+%_cachedir/%name
+%_sysconfdir/cron.daily/%name
+%_unitdir/%{name}.*
+%doc README.md GPL
+
+%changelog
+* Tue Jun 28 2022 Vitaly Chikunov <vt@altlinux.org> 1.18.8-alt2
+- Fixed annoying 'egrep is obsolescent' warning.
+- Updated License, Group, and Url tags.
+
+* Sun Sep 30 2018 Terechkov Evgenii <evg@altlinux.org> 1.18.8-alt1
+- 1.18.8
+
+* Sat Aug 26 2017 Terechkov Evgenii <evg@altlinux.org> 1.18.7-alt1
+- 1.18.7
+
+* Sat Jun 25 2016 Terechkov Evgenii <evg@altlinux.org> 1.18.4-alt1
+- 1.18.4
+
+* Sat Apr  4 2015 Terechkov Evgenii <evg@altlinux.org> 1.18.1-alt1
+- 1.18.1
+
+* Sun Mar  1 2015 Terechkov Evgenii <evg@altlinux.org> 1.17-alt1
+- 1.17
+
+* Tue Oct 28 2014 Terechkov Evgenii <evg@altlinux.org> 1.15-alt1
+- 1.15
+
+* Sat Jun 28 2014 Terechkov Evgenii <evg@altlinux.org> 1.12-alt1
+- 1.12
+
+* Sat Sep 28 2013 Terechkov Evgenii <evg@altlinux.org> 1.9-alt1
+- 1.9
+
+* Mon Jun 24 2013 Terechkov Evgenii <evg@altlinux.org> 1.4-alt1
+- 1.4
+
+* Sun Dec 23 2012 Terechkov Evgenii <evg@altlinux.org> 0.64-alt1
+- 0.64
+
+* Sat Feb 18 2012 Terechkov Evgenii <evg@altlinux.org> 0.61-alt1
+- 0.61
+- Require perl again
+- Require fresh git-core
+
+* Wed Nov  9 2011 Terechkov Evgenii <evg@altlinux.org> 0.57-alt1
+- 0.57
+
+* Fri Sep 30 2011 Terechkov Evgenii <evg@altlinux.org> 0.56-alt1
+- 0.56-87-ge3eadd8
+
+* Sat Mar 19 2011 Terechkov Evgenii <evg@altlinux.org> 0.53-alt1
+- 0.53
+- Drop useless and dangerous etckeeper-origin
+
+* Fri Jan 14 2011 Terechkov Evgenii <evg@altlinux.org> 0.51-alt2
+- Update from upstream (ALT#24903)
+
+* Mon Dec 27 2010 Terechkov Evgenii <evg@altlinux.org> 0.51-alt1
+- 0.51
+
+* Tue Dec  7 2010 Terechkov Evgenii <evg@altlinux.org> 0.50-alt6
+- Workaround for #24678
+
+* Wed Dec  1 2010 Terechkov Evgenii <evg@altlinux.org> 0.50-alt5.1
+- Fixup postin script
+
+* Wed Dec  1 2010 Terechkov Evgenii <evg@altlinux.org> 0.50-alt5
+- git-20101201 (workaround for #24479)
+
+* Thu Nov 11 2010 Terechkov Evgenii <evg@altlinux.org> 0.50-alt4
+- etckeeper-origin
+
+* Sun Nov  7 2010 Terechkov Evgenii <evg@altlinux.org> 0.50-alt3
+- Futher filter out alt-specific hardlinked files complains
+
+* Mon Oct 25 2010 Terechkov Evgenii <evg@altlinux.org> 0.50-alt2
+- Drop useless /etc/skel* complains
+
+* Sun Oct 24 2010 Terechkov Evgenii <evg@altlinux.org> 0.50-alt1
+- 0.50
+
+* Tue Sep 14 2010 Terechkov Evgenii <evg@altlinux.org> 0.49-alt1
+- 0.49
+
+* Sat Jul 17 2010 Terechkov Evgenii <evg@altlinux.ru> 0.48-alt1
+- 0.48
+
+* Mon May 31 2010 Terechkov Evgenii <evg@altlinux.ru> 0.47-alt1
+- 0.47
+
+* Mon May 17 2010 Terechkov Evgenii <evg@altlinux.ru> 0.46-alt1
+- 0.46
+
+* Fri Apr 16 2010 Terechkov Evgenii <evg@altlinux.ru> 0.45-alt1
+- 0.45
+
+* Thu Apr 15 2010 Terechkov Evgenii <evg@altlinux.ru> 0.44-alt1
+- 0.44
+
+* Fri Feb 19 2010 Terechkov Evgenii <evg@altlinux.ru> 0.43-alt1
+- 0.43
+
+* Fri Oct  2 2009 Terechkov Evgenii <evg@altlinux.ru> 0.41-alt2
+- Package list generation fixed
+
+* Sun Sep 27 2009 Terechkov Evgenii <evg@altlinux.ru> 0.41-alt1
+- 0.41
+
+* Thu Aug 27 2009 Terechkov Evgenii <evg@altlinux.ru> 0.40-alt1
+- 0.40
+
+* Thu Jul  9 2009 Terechkov Evgenii <evg@altlinux.ru> 0.38-alt1
+- 0.38
+
+* Sat Jul  4 2009 Terechkov Evgenii <evg@altlinux.ru> 0.37-alt2
+- Document ETCKEEPER_CONF_DIR in man page (ALT #20587)
+- Description updated
+
+* Tue Jun  9 2009 Terechkov Evgenii <evg@altlinux.ru> 0.37-alt1
+- 0.37
+
+* Sun May 17 2009 Terechkov Evgenii <evg@altlinux.ru> 0.36-alt1
+- 0.36
+
+* Thu May 14 2009 Terechkov Evgenii <evg@altlinux.ru> 0.35-alt2
+- Typo fixed (ALT #20038)
+- Dont require perl anymore
+- Dont build bzr plugin (requires python)
+
+* Thu May  7 2009 Terechkov Evgenii <evg@altlinux.ru> 0.35-alt1
+- 0.35
+
+* Thu Apr 16 2009 Terechkov Evgenii <evg@altlinux.ru> 0.34-alt4
+- Upgrade from etckeeper < 0.34-alt2 fixed (ALT #19638)
+
+* Thu Apr  2 2009 Terechkov Evgenii <evg@altlinux.ru> 0.34-alt3
+- Paths in precommit hook fixed
+
+* Wed Apr  1 2009 Terechkov Evgenii <evg@altlinux.ru> 0.34-alt2
+- Cron paths fixed
+
+* Sat Mar 21 2009 Terechkov Evgenii <evg@altlinux.ru> 0.34-alt1
+- 0.34
+
+* Sun Feb  8 2009 Terechkov Evgenii <evg@altlinux.ru> 0.27-alt1.1
+- Stupid typo in apt conf fixed
+
+* Sun Feb  8 2009 Terechkov Evgenii <evg@altlinux.ru> 0.27-alt1
+- 0.27
+
+* Sat Sep 20 2008 Terechkov Evgenii <evg@altlinux.ru> 0.21-alt1
+- 0.21
+
+* Sat Jul 19 2008 Terechkov Evgenii <evg@altlinux.ru> 0.20-alt1
+- 0.20
+- Patch updated (obsoleted code removed, package list support for RPM added)
+- Obsoleted fix removed from spec
+
+* Sat Mar 22 2008 Terechkov Evgenii <evg@altlinux.ru> 0.12-alt1
+- 0.12
+
+* Sun Feb 10 2008 Terechkov Evgenii <evg@altlinux.ru> 0.10-alt2
+- Unneeded patches removed
+
+* Sat Feb  9 2008 Terechkov Evgenii <evg@altlinux.ru> 0.10-alt1
+- 0.10
+
+* Wed Jan  2 2008 Terechkov Evgenii <evg@altlinux.ru> 0.6-alt0
+- Initial build for ALT Linux Sisyphus
diff --git a/.gear/merge b/.gear/merge
new file mode 100644
index 0000000..e297d4d
--- /dev/null
+++ b/.gear/merge
@@ -0,0 +1 @@
+merge: upstream master
diff --git a/.gear/rules b/.gear/rules
new file mode 100644
index 0000000..8594f6e
--- /dev/null
+++ b/.gear/rules
@@ -0,0 +1,3 @@
+tar: @version@:.
+diff: @version@:. .
+spec: .gear/etckeeper.spec
diff --git a/.gear/tags/4535cb6de35d66ea516356930d24608154282bc5 b/.gear/tags/4535cb6de35d66ea516356930d24608154282bc5
new file mode 100644
index 0000000..1e05cba
--- /dev/null
+++ b/.gear/tags/4535cb6de35d66ea516356930d24608154282bc5
@@ -0,0 +1,22 @@
+object c120e9ff5f9f35d8f744b0ee093e39c179125147
+type commit
+tag 1.18.8
+tagger Joey Hess <joeyh@joeyh.name> 1528229043 -0400
+
+tagging package etckeeper version 1.18.8
+-----BEGIN PGP SIGNATURE-----
+
+iQIzBAABCgAdFiEEKKUAw1IH6rcvbA8l2xLbD/BfjzgFAlsW7LMACgkQ2xLbD/Bf
+jziCyA/+N7ZsTzid4gUv787Q8FzmZqn2B43xJCks69gtV9Hx5DTM4zY6t6hIaTT9
+aNz99lgCoEIiCKq9CRGITJMg+jBxE0NT/YAU5DeOIZls3sDwu12w0VLtFkwWqlFH
+TnwWw+BXLV8kgyBB6jjB5BgEOThUcIdP0DcShZRWQjjoeNSfeSQAxBg21gqvvXHm
+IoyoTsTKvUNdReg7DID3ACobv3VTuwzTt0GLvkrm8D46iGAtcJl/14M/ZiN5ZEV4
+8FVDRcP3QKiYFyuEQd6AOY803GWKpnV1Cznv4kHMGhTq+0wWqTF7gPs4km0Xd3Bv
+fdSZzgRQHpK/NpYTfRf4sVOqE5SS3OkLWAvi5ak3MWzXd+qYokHp0VuIoxOXGAH5
+e8IULW1XCv9/inzCFD7fFqtctXqlEnGy5hOtL4DCuK5OnLD5znmatn4kV8QpONJN
+8RGgTgYgvRpG9kfYM2fB/WyuTy2MTbbcibqKFRDRGj+BNXT5O1oo5MxPdMX0TqcQ
+pPTGjqqpB/7NWsbT4Xg06tzWVmhDHlOVuxqTxKXu/PAg41p1ax762wxWKZqrDlT8
+FebTV6f3AGPezliM+0JuEzjVNFU2XvBZFVSr0ehtgm2b01WsPwDiwQmvApBKDUB6
+iDWwdPXfgjHXd4G7B3uNj9GibVGz0RHNX7AfJ45w5ZJM28HFjyM=
+=EnyW
+-----END PGP SIGNATURE-----
diff --git a/.gear/tags/list b/.gear/tags/list
new file mode 100644
index 0000000..95d1cb9
--- /dev/null
+++ b/.gear/tags/list
@@ -0,0 +1 @@
+4535cb6de35d66ea516356930d24608154282bc5 1.18.8
diff --git a/apt.conf b/apt.conf
index 5e690a2..f2bda8a 100644
--- a/apt.conf
+++ b/apt.conf
@@ -1,5 +1,2 @@
-DPkg::Pre-Invoke       { "if [ -x /usr/bin/etckeeper ]; then etckeeper pre-install; fi"; };
-DPkg::Post-Invoke      { "if [ -x /usr/bin/etckeeper ]; then etckeeper post-install; fi"; };
-
-RPM::Pre-Invoke       { "if [ -x /usr/bin/etckeeper ]; then etckeeper pre-install; fi"; };
+RPM::Pre-Install-Pkgs { "xargs| (if [ -x /usr/bin/etckeeper ]; then etckeeper pre-install; fi)"; };
 RPM::Post-Invoke      { "if [ -x /usr/bin/etckeeper ]; then etckeeper post-install; fi"; };
diff --git a/debian/cron.daily b/debian/cron.daily
old mode 100644
new mode 100755
diff --git a/etckeeper b/etckeeper
index 9adbec0..eb95af1 100755
--- a/etckeeper
+++ b/etckeeper
@@ -4,6 +4,7 @@ set -e
 if [ -z "$ETCKEEPER_CONF_DIR" ]; then
 	ETCKEEPER_CONF_DIR=/etc/etckeeper
 fi
+export ETCKEEPER_CONF_DIR
 
 conf="$ETCKEEPER_CONF_DIR/etckeeper.conf"
 
@@ -84,7 +85,7 @@ elif [ "$command" = "pre-apt" ]; then
 	command=pre-install
 fi
 
-if echo "$command" | LANG=C egrep -q '[^-a-z_]'; then
+if echo "$command" | LANG=C grep -E -q '[^-a-z_]'; then
 	echo "etckeeper: invalid command $command" >&2
 	exit 1
 fi
@@ -142,7 +143,7 @@ else
 	# fallback if perl isn't present
 	for script in $ETCKEEPER_CONF_DIR/$command.d/*; do
 		if [ ! -d "$script" -a -x "$script" ]; then
-			echo "$script" | egrep -q "/[-a-zA-Z0-9]+$"
+			echo "$script" | grep -E -q "/[-a-zA-Z0-9]+$"
 			[ $? -eq 0 ] && "$script" "$@"
 		fi
 	done
diff --git a/etckeeper.8 b/etckeeper.8
index 6164351..d289492 100644
--- a/etckeeper.8
+++ b/etckeeper.8
@@ -29,14 +29,14 @@ This is called as a pre-commit hook. It stores metadata and does sanity
 checks.
 .TP
 .B pre-install
-This is called by apt's DPkg::Pre-Install-Pkgs hook, or by equivalent hooks
+This is called by apt's RPM::Pre-Install-Pkgs hook, or by equivilant hooks
 of other package managers. It allows committing any uncommitted changes before
 packages are installed, upgraded, etc.
 .TP
 .B post-install
-This is called by apt's DPkg::Post-Invoke hook, or by equivalent hooks
+This is called by apt's RPM::Post-Invoke hook, or by equivilant hooks
 of other package managers. It commits changes made by packages into the
-repository. (You can also call this by hand after running dpkg by hand.)
+repository. (You can also call this by hand after running apt/rpm by hand.)
 .TP
 .B unclean
 This returns true if the directory contains uncommitted changes.
diff --git a/etckeeper.conf b/etckeeper.conf
index f13de1c..921c70b 100644
--- a/etckeeper.conf
+++ b/etckeeper.conf
@@ -37,7 +37,7 @@ HIGHLEVEL_PACKAGE_MANAGER=apt
 
 # The low-level package manager that's being used.
 # (dpkg, rpm, pacman, pacmatic, pacman-g2, apk etc)
-LOWLEVEL_PACKAGE_MANAGER=dpkg
+LOWLEVEL_PACKAGE_MANAGER=rpm
 
 # To push each commit to a remote, put the name of the remote here.
 # (eg, "origin" for git). Space-separated lists of multiple remotes
diff --git a/list-installed.d/50list-installed b/list-installed.d/50list-installed
index d89b8ce..5426481 100755
--- a/list-installed.d/50list-installed
+++ b/list-installed.d/50list-installed
@@ -12,7 +12,7 @@ else
 	# format "package version\n" (or something similar).
 	if [ "$LOWLEVEL_PACKAGE_MANAGER" = dpkg ]; then
 		dpkg-query -W -f '${Status}\t${Package} ${Version} ${Architecture}\n' | \
-			egrep '(ok installed|ok config-files)' | cut -f2,3
+			grep -E '(ok installed|ok config-files)' | cut -f2,3
 	elif [ "$LOWLEVEL_PACKAGE_MANAGER" = rpm ]; then
 		rpm -qa --qf "%|epoch?{%{epoch}}:{0}|:%{name}-%{version}-%{release}.%{arch}\n" | sort
 	elif [ "$LOWLEVEL_PACKAGE_MANAGER" = pacman ]; then
diff --git a/post-install.d/50vcs-commit b/post-install.d/50vcs-commit
index 53138c8..a80bd31 100755
--- a/post-install.d/50vcs-commit
+++ b/post-install.d/50vcs-commit
@@ -12,7 +12,7 @@ if etckeeper unclean; then
 			echo "$message"
 			echo
 			echo "Package changes:"
-			etckeeper list-installed | diff -U0 $pl.pre-install - | tail -n+4 | egrep '^[-+]' || true
+			etckeeper list-installed | diff -U0 $pl.pre-install - | tail -n+4 | grep -E '^[-+]' || true
 		) | etckeeper commit --stdin
 	else
 		etckeeper commit "$(printf "$message")"
@@ -25,4 +25,6 @@ if etckeeper unclean; then
 	fi
 fi
 	
-rm -f $pl.pre-install $pl.fmt
+if [ -e $pl.pre-install ]; then
+	rm -f $pl.pre-install $pl.fmt ||: # rm -f return 1 in file exist, but permission denied
+fi
diff --git a/pre-commit.d/20warn-problem-files b/pre-commit.d/20warn-problem-files
index 6bd5c2b..2c1b11e 100755
--- a/pre-commit.d/20warn-problem-files
+++ b/pre-commit.d/20warn-problem-files
@@ -2,7 +2,7 @@
 set -e
 
 exclude_internal () {
-	egrep -v '(^|/)(\.git|\.hg|\.bzr|_darcs)/'
+	grep -E -v '(^|/)(\.git|\.hg|\.bzr|_darcs)/' | grep -E -v '^services$|^hosts$|^localtime$|^resolv.conf$|^skel[/.]|^host.conf$|^nsswitch.conf$'
 }
 
 if [ "$VCS" = bzr ] || [ "$VCS" = darcs ]; then
diff --git a/pre-install.d/10packagelist b/pre-install.d/10packagelist
index fbd4ac3..f46350a 100755
--- a/pre-install.d/10packagelist
+++ b/pre-install.d/10packagelist
@@ -1,5 +1,6 @@
 #!/bin/sh
 # This list will be later used when committing.
-mkdir -p /var/cache/etckeeper/
-etckeeper list-installed > /var/cache/etckeeper/packagelist.pre-install
-etckeeper list-installed fmt > /var/cache/etckeeper/packagelist.fmt
+list=/var/cache/etckeeper/packagelist
+mkdir -p "`dirname $list`" 2>/dev/null && touch $list.pre-install 2>/dev/null || exit 0 # for non-root usage
+etckeeper list-installed > $list.pre-install
+etckeeper list-installed fmt > $list.fmt
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin