From 118f0016d2f1ecece4d282a257049a86bc4c9ca6 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sat, 5 Apr 2008 14:31:19 -0400 Subject: Include etckeeper plugin in Debian package. Conflicts: debian/control --- Makefile | 1 + debian/control | 4 ++-- debian/rules | 1 + etckeeper-bzr.py | 26 -------------------------- etckeeper-bzr/__init__.py | 30 ++++++++++++++++++++++++++++++ 5 files changed, 34 insertions(+), 28 deletions(-) delete mode 100755 etckeeper-bzr.py create mode 100755 etckeeper-bzr/__init__.py diff --git a/Makefile b/Makefile index 930dc7b..aac2f1e 100644 --- a/Makefile +++ b/Makefile @@ -27,3 +27,4 @@ endif ifeq ($(LOWLEVEL_PACKAGE_MANAGER),pacman-g2) $(INSTALL_DATA) pacman-g2.hook $(DESTDIR)$(etcdir)/pacman-g2/hooks/etckeeper endif + -./etckeeper-bzr/__init__.py install --root=$(DESTDIR) diff --git a/debian/control b/debian/control index af675b6..df3e58c 100644 --- a/debian/control +++ b/debian/control @@ -1,7 +1,7 @@ Source: etckeeper Section: admin Priority: optional -Build-Depends: debhelper (>= 5), dpkg-dev (>= 1.9.0) +Build-Depends: debhelper (>= 5), dpkg-dev (>= 1.9.0), bzr (>= 1.4~), python-support (>= 0.5.3) Maintainer: Joey Hess Standards-Version: 3.7.3 Vcs-Git: git://git.kitenet.net/etckeeper @@ -10,7 +10,7 @@ Homepage: http://kitenet.net/~joey/code/etckeeper/ Package: etckeeper Architecture: all Section: admin -Depends: git-core (>= 1:1.5.4) | mercurial | bzr (>= 1.0), ${misc:Depends} +Depends: git-core (>= 1:1.5.4) | mercurial | bzr (>= 1.4~), ${misc:Depends} Description: store /etc in git, mercurial, or bzr The etckeeper program is a tool to let /etc be stored in a git, mercurial, or bzr repository. It hooks into APT to automatically commit changes made to diff --git a/debian/rules b/debian/rules index eb737a5..28e3c1b 100755 --- a/debian/rules +++ b/debian/rules @@ -15,6 +15,7 @@ binary-indep: build dh_testroot dh_clean -k $(MAKE) install DESTDIR=debian/etckeeper + dh_pysupport dh_installdocs README TODO dh_installexamples dh_installchangelogs diff --git a/etckeeper-bzr.py b/etckeeper-bzr.py deleted file mode 100755 index 97a8689..0000000 --- a/etckeeper-bzr.py +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/python -# Bazaar plugin that runs etckeeper pre-commit when necessary - -"""Runs etckeeper pre-commit when necessary.""" - -from bzrlib.mutabletree import MutableTree -from bzrlib.errors import BzrError, NotLocalUrl -import os -import subprocess - -def etckeeper_startcommit_hook(tree): - if not os.path.exists(tree.abspath(".etckeeper")): - # Only run the commit hook when this is an etckeeper branch - return - ret = subprocess.call(["etckeeper", "pre-commit", tree.abspath(".")]) - if ret != 0: - raise BzrError("etckeeper pre-commit failed") - -MutableTree.hooks.install_hook('start_commit', etckeeper_startcommit_hook) -MutableTree.hooks.name_hook(etckeeper_startcommit_hook, "etckeeper") - -if __name__ == "__main__": - from distutils.core import setup - setup(name="bzr-etckeeper", - package_dir={"bzrlib.plugins.etckeeper":__file__}, - py_modules=["bzrlib.plugins.etckeeper"]) diff --git a/etckeeper-bzr/__init__.py b/etckeeper-bzr/__init__.py new file mode 100755 index 0000000..a5381c5 --- /dev/null +++ b/etckeeper-bzr/__init__.py @@ -0,0 +1,30 @@ +#!/usr/bin/python +# Bazaar plugin that runs etckeeper pre-commit when necessary + +"""Runs etckeeper pre-commit when necessary.""" + +import bzrlib +from bzrlib.mutabletree import MutableTree +from bzrlib.errors import BzrError, NotLocalUrl +import os +import subprocess + +if bzrlib.version_info[:2] < (1,4): + raise "Version of Bazaar to old. Need at least 1.4." + +def etckeeper_startcommit_hook(tree): + if not os.path.exists(tree.abspath(".etckeeper")): + # Only run the commit hook when this is an etckeeper branch + return + ret = subprocess.call(["etckeeper", "pre-commit", tree.abspath(".")]) + if ret != 0: + raise BzrError("etckeeper pre-commit failed") + +MutableTree.hooks.install_hook('start_commit', etckeeper_startcommit_hook) +MutableTree.hooks.name_hook(etckeeper_startcommit_hook, "etckeeper") + +if __name__ == "__main__": + from distutils.core import setup + setup(name="bzr-etckeeper", + packages=["bzrlib.plugins.etckeeper"], + package_dir={"bzrlib.plugins.etckeeper":"etckeeper-bzr"}) -- cgit v1.2.3