X-Git-Url: http://ftp.carnet.hr/carnet-debian/scm?a=blobdiff_plain;f=debian%2Fpostrm;h=c63c1f1f98c5000f93cbee75ffca71cefd73dbef;hb=refs%2Ftags%2Fdebian%2F2.4.38%2Bcn10u1;hp=5171fe39071959e87d12a3b3e09db73810447306;hpb=251b0e7421babc128a48dbf1d25d049efc566e7b;p=apache2-cn.git diff --git a/debian/postrm b/debian/postrm index 5171fe3..c63c1f1 100755 --- a/debian/postrm +++ b/debian/postrm @@ -5,82 +5,72 @@ set -e # Debconf . /usr/share/debconf/confmodule -# Include CARNet functions. -. /usr/share/carnet-tools/functions.sh +case "$1" in + purge) + # continue below + ;; + *) + exit 0 + ;; +esac CONFDIR="/etc/apache2" -sitesdir=${CONFDIR}/sites-available HOST=$(hostname -f) DOMAIN=$(hostname -d) -sitefiles= +# purge_conf() +# +# Purge Apache2 configuration files located in specified directory. +# +purge_conf () { + local ctype dir file -case "$1" in - purge) - # continue below - ;; + ctype="$1" + dir="$2" + + case "$ctype" in + site|conf) + # continue below + ;; *) - exit 0 - ;; -esac + return 1 + ;; + esac -# Get CARNet config files in /etc/apache2/sites-available directory. -if [ -d "${sitesdir}" ] && [ -n "$(ls ${sitesdir}/)" ]; then - for file in ${sitesdir}/*; do - if [ -f "$file" ]; then - if egrep -q "^## Begin - Generated by CARNet package apache2-cn$" $file; then - site=`echo "$file" | sed 's/^\/.*\///'` - sitefiles="$sitefiles $site" - fi + 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 -p -f -q "`basename "$file" .conf`" || exit $? + rm -f "$file" fi + fi done -fi + fi +} -# Remove our vhosts. -if [ -n "$sitefiles" ]; then - for site in $sitefiles; do - if [ -e "$sitesdir/$site" ]; then - cp_echo "CN: Removing $site site configuration file." - rm -f $sitesdir/$site - fi - done -fi +# Configuration generated by this CARNET package. +echo "CN: Purging $PKG configuration for Apache2." +purge_conf site ${CONFDIR}/sites-available +purge_conf conf ${CONFDIR}/conf-available # Remove default DocumentRoot if there's only a one line index.html there docroots="/var/www/$HOST /var/www/www.$DOMAIN" if [ -d "/var/www" ]; then - for docroot in $docroots; do - if [ -d $docroot ]; then - if [ "x$(echo ${docroot}/*)" = "x${docroot}/index.html" ]; then - if [ "$(wc -l ${docroot}/index.html | awk '{print $1}')" -eq 1 ]; then - cp_echo "CN: Removing document root directory ${docroot}." - rm -f $docroot/index.html - rmdir $docroot || true - fi - fi - fi - done -fi - -# Remove CARNet specific configuration. -if [ -d "${CONFDIR}/conf.d" ] && [ -n "$(ls ${CONFDIR}/conf.d/)" ]; then - cp_echo "CN: Disabling CARNet specific configuration." - for file in ${CONFDIR}/conf.d/*; do - if [ -f "$file" ]; then - if egrep -q "^## Begin - Generated by CARNet package apache2-cn$" $file; then - rm -f $file - fi + for docroot in $docroots; do + if [ -d $docroot ]; then + if [ "x$(echo ${docroot}/*)" = "x${docroot}/index.html" ]; then + if [ "$(wc -l ${docroot}/index.html | awk '{print $1}')" -eq 1 ]; then + echo "CN: Removing document root directory ${docroot}." + rm -f $docroot/index.html + rmdir $docroot || true fi - done + fi + fi + done fi -# dh_installdeb will replace this with shell code automatically -# generated by other debhelper scripts. - #DEBHELPER# -# Mail root -cp_mail "apache2-cn" - exit 0