# This file is part of DisOrder
# Copyright (C) 2004, 2007, 2008 Richard Kettlewell
#
-# This program is free software; you can redistribute it and/or modify
+# 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
-# the Free Software Foundation; either version 2 of the License, or
+# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
-# USA
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
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/isearch.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
+ rm -f $state/playlists.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
- rm -f /etc/disorder/conf.debconf
- # TODO - should we delete none/some/all of the contents of /var/lib/disorder?
+ update-rc.d disorder remove > /dev/null
+ cleanup_remove
+ cleanup_purge
;;
esac