merge changes to diogenes.postrm
[diogenes.git] / debian / diogenes.postrm
1 #!/bin/sh -e
2 # Diogenes postrm script using debconf
3 # Originally written for horde by Ola Lundqvist <opal@debian.org>
4 # Adapted for horde2 by Nils Rennebarth <nils@debian.org>
5 # Adapted for Diogenes by Jeremy LainĂ© <jeremy.laine@m4x.org>
6
7 remove_from_webconfig () {
8     webservers="$RET"
9
10     # Remove symlink to our apache.conf
11     for server in $webservers ; do
12         server=$(echo $server | sed 's/,$//')
13         servers="$server $servers"
14         if [ -s /etc/$server/conf.d/diogenes ] ; then
15             rm -f /etc/$server/conf.d/diogenes
16             restart_servers="$server $restart_servers"
17         fi
18     done
19
20     # Restart servers
21     if [ -n "$restart_servers" ]; then
22         for server in $restart_servers; do
23             if [ -x /etc/init.d/$server ]; then
24                 if which invoke-rc.d >/dev/null 2>&1; then
25                     invoke-rc.d $server reload
26                 else
27                     /etc/init.d/$server reload
28                 fi
29             fi
30         done
31     fi
32 }
33
34 # source dbconfig-common shell library, and call the hook function
35 if [ -f /usr/share/dbconfig-common/dpkg/postrm.mysql ]; then
36     . /usr/share/dbconfig-common/dpkg/postrm.mysql 
37     dbc_go diogenes $@
38 fi
39
40 ACTION=$1
41 case "$ACTION" in
42 remove)
43     #
44     # Remove Diogenes from the webserver configuration
45     #
46     if [ -f /usr/share/debconf/confmodule ]; then
47         . /usr/share/debconf/confmodule
48         db_version 2.0
49
50         #
51         # Only try to remove Diogenes from the webserver configs if the db key
52         # diogenes/webservers exists. If not, Diogenes had not been installed
53         # correctly so we just skip the webserver part
54         #
55         if db_get "diogenes/webservers"; then
56             remove_from_webconfig
57         fi
58     fi
59     ;;
60
61 purge)
62     #
63     # Remove ucf-managed files
64     #
65     if [ -x $(which ucf) ] ; then
66         for myfile in /etc/diogenes/apache.conf /etc/diogenes/diogenes.debian.inc.php; do
67             ucf --purge $myfile
68             rm -f $myfile $myfile.dpkg-dist $myfile.dpkg-new $myfile.dpkg-old 
69         done
70     fi
71
72     #
73     # If we were asked to, purge Diogenes data
74     #
75     if [ -f /usr/share/debconf/confmodule ]; then
76         . /usr/share/debconf/confmodule
77         db_version 2.0
78         db_get "diogenes/purge_removes_data"
79         if [ "$RET" = "true" ]; then
80             # remove files
81             rm -rf /var/spool/diogenes /var/lib/diogenes
82         fi
83     fi
84     ;;
85
86 *)
87     ;;
88 esac
89
90
91 #DEBHELPER#
92
93 exit 0