Prva inacica paketa za Debian jessie distribuciju.
[apache2-cn.git] / debian / prerm
index 7bc72f1..d4b99f1 100755 (executable)
@@ -2,78 +2,60 @@
 
 set -e
 
-# Include CARNet functions.
-. /usr/share/carnet-tools/functions.sh
-
+PKG=apache2-cn
 CONFDIR="/etc/apache2"
-sitesendir=${CONFDIR}/sites-enabled
-sites=
-
-
-case "$1" in
-       remove|deconfigure)
-       
-               # Get CARNet config files in /etc/apache2/sites-enabled directory.
-               if [ -d "${sitesendir}" ] && [ -n "$(ls ${sitesendir}/)" ]; then
-               
-                   for file in ${sitesendir}/*; do
-                       if [ -f "$file" ]; then
-                           if egrep -q "^## Begin - Generated by CARNet package apache2-cn$" $file; then
-                               site=`echo "$file" | sed 's/^\/.*\///'`
-                               sites="$sites $site"
-                           fi
-                       fi
-                   done
-               fi
-
-               # Deconfigure our web sites, do nothing else
-               if [ -n "$sites" ]; then
-                   for site in $sites; do
-               
-                       if [ -e "$sitesendir/$site" ]; then
-
-                           cp_echo "CN: Disabling $site site configuration."
-                           rm -f $sitesendir/$site
-                       fi
-                   done
-               fi
-
-               if [ -f "${CONFDIR}/sites-available/default" ]; then
-                   cp_echo "CN: Enabling default site configuration for Apache2 web server."
-                   a2ensite default >/dev/null || true
-               fi
-
-               # Restart Apache2 web server.
-               if apache2ctl configtest 2>/dev/null; then
-
-                       # Restart Apache2 web server.
-                       if [ -x "/etc/init.d/apache2" ]; then
-                           if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then
-                               invoke-rc.d apache2 restart || true
-                           else
-                               /etc/init.d/apache2 restart || true
-                           fi
-                       fi
-               else
-               
-                       # Something is broken.
-                       cp_echo "CN: Your Apache2 configuration seem to be broken."
-                       cp_echo "CN: Please, check the service configuration!"
-               fi
-               
-               # Mail root
-               cp_mail "apache2-cn"
 
-               echo
-               ;;
-       upgrade)
-               ;;
-       failed-upgrade)
-               ;;
-       *)
-               echo "prerm called with unknown argument \`$1'" >&2
-               exit 0
-               ;;
-esac
+need_restart=0
+
+# disable_conf()
+#
+#   Disable Apache2 configuration files located in specified directory.
+#
+disable_conf () {
+    local ctype dir file
+
+    ctype="$1"
+    dir="$2"
+
+    case "$ctype" in
+        site|conf)
+            # continue below
+            ;;
+        *)
+            return 1
+            ;;
+    esac
+
+    if [ -d "${dir}" ] && [ -n "$(ls -A ${dir}/)" ]; then
+        for file in ${dir}/*.conf; do
+            if [ -f "$file" ]; then
+                if egrep -q "^## Begin - Generated by CARNet package apache2-cn$" "$file"; then
+                    a2dis$ctype -m -f -q "`basename "$file" .conf`"
+                    need_restart=1
+                fi
+            fi
+        done
+    fi
+}
+
+if [ "$1" = "remove" ] || [ "$1" = "deconfigure" ]; then
+
+    echo "CN: Disabling $PKG configuration for Apache2."
+    disable_conf site ${CONFDIR}/sites-enabled
+    disable_conf conf ${CONFDIR}/conf-enabled
+
+    echo "CN: Enabling default site configuration for Apache2 web server."
+    a2ensite -m -q 000-default && need_restart=1
+
+    if [ $need_restart -eq 1 ]; then
+        if apache2ctl configtest 2>/dev/null; then
+            service apache2 reload || true
+        else
+            echo "Your Apache2 configuration seems to be broken."
+        fi
+    fi
+fi
+
+#DEBHELPER#
 
 exit 0