From 61c909e2f28758baa7089649f2ae2569213e8eac Mon Sep 17 00:00:00 2001 From: joey Date: Fri, 24 Mar 2006 21:36:37 +0000 Subject: implemented upgradehooksh --- debian/README.Debian | 8 ++++++++ debian/postinst | 28 ++++++++++++++++++++++++++++ debian/rules | 1 + 3 files changed, 37 insertions(+) create mode 100644 debian/README.Debian create mode 100755 debian/postinst (limited to 'debian') diff --git a/debian/README.Debian b/debian/README.Debian new file mode 100644 index 000000000..3bdeb2a3a --- /dev/null +++ b/debian/README.Debian @@ -0,0 +1,8 @@ +It's a good idea, and in some cases a requirement, to rebuild your wiki +when upgrading to a new version of ikiwiki. If you have a lot of different +wikis on a system, this can be a pain to do by hand, and it's a good idea +to automate it anyway. + +This Debian package of ikiwiki supports rebuilding wikis on upgrade. The +file /etc/ikiwiki/wikilist lists the setup files of wikis to rebuild, as +well as the user who owns the wiki. diff --git a/debian/postinst b/debian/postinst new file mode 100755 index 000000000..e716fb2f5 --- /dev/null +++ b/debian/postinst @@ -0,0 +1,28 @@ +#!/bin/sh +set -e +#DEBHELPER# + +wikilist=/etc/ikiwiki/wikilist + +processline () { + user="$1" + setup="$2" + + if [ -z "$user" ] || [ -z "$setup" ]; then + echo "parse failure in /etc/ikiwiki/wikilist, line: '$user $setup'" >&2 + exit 1 + fi + + if [ ! -f "$setup" ]; then + echo "warning: $setup specified in /etc/ikiwiki/wikilist does not exist, skipping" >&2 + else + echo "Rebuilding $setup as user $user ..." + su "$user" -c "ikiwiki -setup $setup" + fi +} + +if [ "$1" = configure ] && [ -e $wikilist ]; then + grep -v '^#' $wikilist | grep -v '^$' | while read line; do + processline $line + done +fi diff --git a/debian/rules b/debian/rules index 6ca612c9e..fc703fc90 100755 --- a/debian/rules +++ b/debian/rules @@ -23,6 +23,7 @@ binary-indep: build dh_clean -k $(MAKE) pure_install INSTALLDIRS=vendor \ PREFIX=$(shell pwd)/debian/ikiwiki/$(shell perl -MConfig -e 'print $$Config{prefix}') + dh_install debian/wikilist etc/ikiwiki dh_installdocs html dh_link usr/share/common-licenses/GPL usr/share/doc/ikiwiki/html/GPL dh_link usr/share/ikiwiki/basewiki \ -- cgit v1.2.3