summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobby Workman <rworkman@slackbuilds.org>2013-02-24 01:10:25 -0600
committerRobby Workman <rworkman@slackbuilds.org>2013-02-24 10:23:10 -0600
commitda48480fec8e28b0fc41a9688589ea22a01a9f04 (patch)
tree3c37cc5eb199e7dfe869fb61bb1b1100ddcf0b52
parentbf30e26a0b914d6daee19b7bb23b72a2b180273f (diff)
downloadslackbuilds-da48480fec8e28b0fc41a9688589ea22a01a9f04.tar.gz
office/wyrd: Don't clobber config file on package upgrades
Signed-off-by: Robby Workman <rworkman@slackbuilds.org>
-rw-r--r--office/wyrd/doinst.sh15
-rw-r--r--office/wyrd/wyrd.SlackBuild4
2 files changed, 19 insertions, 0 deletions
diff --git a/office/wyrd/doinst.sh b/office/wyrd/doinst.sh
new file mode 100644
index 0000000000..8af25febd8
--- /dev/null
+++ b/office/wyrd/doinst.sh
@@ -0,0 +1,15 @@
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
+ # toss the redundant copy
+ rm $NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+}
+
+config etc/wyrdrc.new
+
diff --git a/office/wyrd/wyrd.SlackBuild b/office/wyrd/wyrd.SlackBuild
index 109f682df9..b682018c0c 100644
--- a/office/wyrd/wyrd.SlackBuild
+++ b/office/wyrd/wyrd.SlackBuild
@@ -83,6 +83,9 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install DESTDIR=$PKG
+# Don't clobber the config file
+mv $PKG/etc/etc/wyrdrc $PKG/etc/wyrdrc.new
+
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -97,6 +100,7 @@ cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}