Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=bmf.git;a=commitdiff;h=533a92305c2fa5e78e7a7c43146f2093c83c67e3

commit 533a92305c2fa5e78e7a7c43146f2093c83c67e3
Author: Miklos Vajna <[EMAIL PROTECTED]>
Date:   Fri Jan 4 01:12:33 2008 +0100

etckeeper-0.6-1-i686
new package. it's not for current yet as:
- it depends on pacman from git (packaged in this repo)
- pacman-g2.diff needs more testing

diff --git a/source/apps-extra/etckeeper/FrugalBuild 
b/source/apps-extra/etckeeper/FrugalBuild
new file mode 100644
index 0000000..6c80878
--- /dev/null
+++ b/source/apps-extra/etckeeper/FrugalBuild
@@ -0,0 +1,27 @@
+# Compiling Time: 0 SBU
+# Maintainer: VMiklos <[EMAIL PROTECTED]>
+
+pkgname=etckeeper
+pkgver=0.6
+pkgrel=1
+pkgdesc="Stores the /etc directory in a git repo."
+url="http://kitenet.net/~joey/code/etckeeper/";
+rodepends=('git>=1.5.3.4' 'metastore' 'pacman-g2>=3.6.6.6.g3a1c159' \
+       'dcron>=3.2-4')
+backup=(etc/$pkgname/$pkgname)
+groups=('apps-extra')
+archs=('i686')
+pkgurl="http://ftp.frugalware.org/pub/other/sources/etckeeper/";
+up2date="lynx -dump $pkgurl |Flasttarbz2"
+source=($pkgurl/$pkgname-$pkgver.tar.bz2 pacman-g2.diff)
+signatures=($source.asc '')
+
+# this pkg should be in bmf till:
+# - the next pacman-g2 release
+# - the pacman-g2.diff stabilizes
+
+build()
+{
+       Fpatchall
+       Fmakeinstall PACKAGE_MANAGER=pacman-g2 PREFIX=$Fdestdir
+}
diff --git a/source/apps-extra/etckeeper/pacman-g2.diff 
b/source/apps-extra/etckeeper/pacman-g2.diff
new file mode 100644
index 0000000..5b9c4ed
--- /dev/null
+++ b/source/apps-extra/etckeeper/pacman-g2.diff
@@ -0,0 +1,104 @@
+diff --git a/Makefile b/Makefile
+index 17ac854..3ad9a18 100644
+--- a/Makefile
++++ b/Makefile
+@@ -3,6 +3,11 @@ install:
+       cp -a *.d $(PREFIX)/etc/etckeeper/
+       cp etckeeper.conf $(PREFIX)/etc/etckeeper/
+       install -D etckeeper $(PREFIX)/usr/bin/etckeeper
++ifeq ($(PACKAGE_MANAGER),)
+       install -m 0644 -D apt.conf $(PREFIX)/etc/apt/apt.conf.d/05etckeeper
++endif
++ifeq ($(PACKAGE_MANAGER),pacman-g2)
++      install -m 0644 -D pacman-g2.hook 
$(PREFIX)/etc/pacman-g2/hooks/etckeeper
++endif
+       install -m 0644 -D etckeeper.1 $(PREFIX)/usr/share/man/man1/etckeeper.1
+       install -m 0644 -D bash_completion 
$(PREFIX)/etc/bash_completion.d/etckeeper
+\ No newline at end of file
+diff --git a/init.d/50git-ignore b/init.d/50git-ignore
+index f931592..533782a 100755
+--- a/init.d/50git-ignore
++++ b/init.d/50git-ignore
+@@ -7,6 +7,11 @@ if [ ! -e .gitignore ]; then
+ # new and old versions of conffiles, stored by dpkg
+ *.dpkg-*
+
++# new and old versions of conffiles, stored by pacman
++*.pacnew
++*.pacorig
++*.pacsave
++
+ # mount(8) records system state here, no need to keep these in git
+ blkid.tab
+ blkid.tab.old
+diff --git a/pacman-g2.hook b/pacman-g2.hook
+new file mode 100644
+index 0000000..4670a07
+--- /dev/null
++++ b/pacman-g2.hook
+@@ -0,0 +1,19 @@
++#!/bin/sh
++
++pre_sysupgrade()
++{
++      if [ -x /usr/bin/etckeeper ]; then
++              etckeeper pre-apt
++      fi
++}
++
++post_sysupgrade()
++{
++      if [ -x /usr/bin/etckeeper ]; then
++              etckeeper post-apt
++      fi
++}
++
++op=$1
++shift
++$op $*
+diff --git a/pre-apt.d/50uncommitted-changes b/pre-apt.d/50uncommitted-changes
+index d39401c..b68aadf 100755
+--- a/pre-apt.d/50uncommitted-changes
++++ b/pre-apt.d/50uncommitted-changes
+@@ -1,22 +1,29 @@
+ #!/bin/sh
+ set -e
+ if [ -d .git ] && ! LANG=C git-status 2>&1 | grep -q "working directory 
clean"; then
+-      . /usr/share/debconf/confmodule
+-      db_capb escape
+-      db_title etckeeper
++      RET="true"
++      if [ -e /usr/share/debconf/confmodule ]; then
++              . /usr/share/debconf/confmodule
++              db_capb escape
++              db_title etckeeper
+
+-      db_reset etckeeper/unclean || true
+-      db_subst etckeeper/unclean STATUS $(git-status | debconf-escape -e) || 
true
+-      db_input critical etckeeper/unclean || true
+-      db_go || true
+-      db_get etckeeper/unclean
++              db_reset etckeeper/unclean || true
++              db_subst etckeeper/unclean STATUS $(git-status | debconf-escape 
-e) || true
++              db_input critical etckeeper/unclean || true
++              db_go || true
++              db_get etckeeper/unclean
++      fi
+       if [ "$RET" = true ]; then
+               git add .
+               if ! git commit $GIT_COMMIT_OPTIONS -m "saving uncommitted 
changes in /etc prior to apt run"; then
+-                      db_input critical etckeeper/commit_failed || true
+-                      db_go || true
+-                      db_reset etckeeper/commit_failed || true
++                      if [ -e /usr/share/debconf/confmodule ]; then
++                              db_input critical etckeeper/commit_failed || 
true
++                              db_go || true
++                              db_reset etckeeper/commit_failed || true
++                      fi
+               fi
+       fi
+-      db_reset etckeeper/unclean || true
++      if [ -e /usr/share/debconf/confmodule ]; then
++              db_reset etckeeper/unclean || true
++      fi
+ fi
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to