summaryrefslogtreecommitdiff
path: root/debian
diff options
context:
space:
mode:
authorjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-03-24 21:36:37 +0000
committerjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-03-24 21:36:37 +0000
commit61c909e2f28758baa7089649f2ae2569213e8eac (patch)
tree616dde1ae772bfb11e1850349576786f76496891 /debian
parentd9cd1050da12aa54f225c5c1dd9bee12178f2f48 (diff)
implemented upgradehooksh
Diffstat (limited to 'debian')
-rw-r--r--debian/README.Debian8
-rwxr-xr-xdebian/postinst28
-rwxr-xr-xdebian/rules1
3 files changed, 37 insertions, 0 deletions
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 \