chiark / gitweb /
Mildly more vigorous uninstall rules
[disorder] / debian / postrm.disorder-server
index c2084d699380d3c2e1b75fc400230bad2a2ca506..99488dd617b8dbf77dd49669550ae619f0656854 100755 (executable)
@@ -1,7 +1,7 @@
 #! /bin/sh
 #
 # This file is part of DisOrder
-# Copyright (C) 2004, 2007 Richard Kettlewell
+# Copyright (C) 2004, 2007, 2008 Richard Kettlewell
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 #
 set -e
 
+state=/var/lib/disorder
+
+# For --remove we only delete cachable stuff
+cleanup_remove() {
+  rm -f $state/lock
+  rm -f $state/socket
+  rm -f $state/speaker/socket
+  [ -d $state/speaker ] && rmdir $state/speaker || true
+  rm -f $state/log.*
+  rm -f $state/__db.*
+  rm -f $state/noticed.db
+  rm -f $state/search.db
+  rm -f $state/tags.db
+  rm -f $state/tracks.db
+}
+
+# For --purge we delete everything
+cleanup_purge() {
+  rm -f /etc/disorder/conf.debconf
+  rm -f $state/queue
+  rm -f $state/recent
+  rm -f $state/global.db
+  rm -f $state/prefs.db
+  rm -f $state/schedule.db
+  rm -f $state/users.db
+}
+
 case "$1" in
+remove )
+  cleanup_remove
+  ;;
 purge )
   if [ -e /usr/share/debconf/confmodule ]; then
     . /usr/share/debconf/confmodule
     db_purge
   fi
   update-rc.d disorder remove
+  cleanup_remove
+  cleanup_purge
   ;;
 esac