#!/bin/sh #---------------------------------------------------------------------------- # /var/install/deinstall/eisfax - deinstall script # # Creation: 2005-04-14 jv # Last Update: $Id$ # # Copyright (c) 2005-@@YEAR@@ Holger Bruenjes, holgerbruenjes(at)gmx(dot)net # # 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 # (at your option) any later version. #---------------------------------------------------------------------------- . /var/lib/eisfax/eisfax.info # set package-name package_name=eisfax # check for update is given case "${1}" in --update|update) update=true ;; esac # --------------------------------------------------------------------------- # stop deamon # --------------------------------------------------------------------------- if ! /usr/sbin/service is-enabled eisfax-hfaxd.service then quiet='--quiet' fi # stop eisfax-devices systemd unit files /var/install/config.d/${package_name}.sh --quiet devices_stop /usr/sbin/service ${quiet} stop eisfax-hfaxd.service \ eisfax-faxq.service /usr/sbin/service disable eisfax-hfaxd.service \ eisfax-faxq.service # --------------------------------------------------------------------------- # remove config and check file # --------------------------------------------------------------------------- rm -f /etc/default.d/${package_name} rm -f /etc/check.d/${package_name} rm -f /etc/check.d/${package_name}.* # --------------------------------------------------------------------------- # remove program files # --------------------------------------------------------------------------- if [ -f /usr/bin/${PRINTFAX_DEL_FILE} ] then while read line do rm -f /usr/bin/$line done </usr/bin/${PRINTFAX_DEL_FILE} fi # check for eisfax-coverpege file if [ -f /var/lib/eisfax/eisfax-coverpage ] then rm -f /var/lib/eisfax/eisfax-coverpage fi rm -f ${PRINT_MODEM} rm -f ${PRINT_MODEM_ISDN} rm -f ${PRINT_MODEM_FRITZBOX} # remove old obsolete links rm -f /usr/lib/libfaxserver.so rm -f /usr/lib/libfaxutil.so # --------------------------------------------------------------------------- # stop remove for update only # --------------------------------------------------------------------------- if "${update:-false}" then exit 0 fi # remove eisfax-devices systemd unit files /var/install/config.d/${package_name}.sh uninstall . /etc/config.d/${package_name} # do that only if apache installed if [ -f '/etc/config.d/apache2' ] then . /etc/config.d/apache2 vhost_alias_path='/etc/apache2/vhost' vhost_include_path='/etc/apache2/mods-include' vhost_enabled_path='/etc/apache2/mods-enabled' project_name="$(echo ${package_name} | tr [[:lower:]-] [[:upper:]_])_WEB" eval _project_n='${'${project_name}'_N}' idx=1 while [ ${idx} -le ${_project_n:-0} ] do eval web_name='${'${project_name}'_'${idx}'_NAME}' eval inst_servername='${'${project_name}'_'${idx}'_HOST_NAME}' eval inst_alias='${'${project_name}'_'${idx}'_HOST_ALIAS}' rm -f ${vhost_alias_path}/host-${inst_servername}-${inst_alias} rm -f ${vhost_alias_path}/vhost-${inst_servername}-${inst_alias} # remove cert link if [ -L /var/certs/ssl/certs/${package_name}-${web_name}.pem ] then rm -f /var/certs/ssl/certs/${package_name}-${web_name}.pem fi idx=$((${idx} + 1)) done rm -f ${vhost_include_path}/${package_name}-*.conf rm -f ${vhost_enabled_path}/virtualhost-${package_name}-*.conf # write new apache config /var/install/config.d/apache2.sh --quiet # reload apache2 configuration if apache is running if [ -f /run/httpd.pid ] || [ -f /run/apache2.pid ] then /usr/sbin/servcice stop apache2 sleep 3 /usr/sbin/servcice start apache2 fi fi # --------------------------------------------------------------------------- # remove package from menu system / remove all menu and config files # --------------------------------------------------------------------------- /var/install/bin/del-menu \ setup.services.menu \ setup.services.${package_name}.menu rm -f /var/install/menu/setup.services.${package_name}.edit.web-auth.menu # --------------------------------------------------------------------------- # remove config file # --------------------------------------------------------------------------- configfiles="/etc/config.d/${package_name} /etc/config.d/hylafax /etc/backup.d/${package_name}.* /etc/backup.d/hylafax.* /public/${package_name} ${FAXCRON_TIMER_DIR}/${FAXCRON_TIMER_CONF} ${FAXQCLEAN_TIMER_DIR}/${FAXQCLEAN_TIMER_CONF}" for cfile in ${configfiles} do rm -f ${cfile} done # --------------------------------------------------------------------------- # remove program files # --------------------------------------------------------------------------- if [ "${EISFAX_RESPOND_SPECIAL_FOLDER}" = "no" ] then rm -rf ${RESPOND_DEFAULT_PATH} else rm -rf ${EISFAX_RESPOND_SPECIAL_FOLDER} fi rm -rf /var/spool/hylafax rm -rf /tmp/.fax* rm -rf /var/lib/eisfax rm -rf /etc/iaxmodem rm -rf /var/log/iaxmodem logfiles="/tmp/smb-spoolfile /tmp/fax* /var/log/log.fax-* /etc/config.faxCAPI /etc/logrotate.d/eisfax /usr/etc/logrotate.d/eisfax /etc/capi.d/eisfax /etc/capi.d/${PACKAGE_NAME}-c2faxrecv.service /etc/aliases.eisfax" for lfile in ${logfiles} do rm -f ${lfile} done get_smtp_alias() { local mail_a="${1}" case "${mail_a}" in msmtp) /var/install/config.d/mstmp.sh --alias ;; ssmtp) /var/install/config.d/smtp.sh alias ;; exim) /var/install/config.d/mail.sh alias ;; sendmail) /var/install/config.d/vmail.sh alias ;; *) alias_ret=1 esac } if [ -f /usr/lib/sendmail ] then smtp_installed=$(basename $(readlink /usr/lib/sendmail)) get_smtp_alias "${smtp_installed}" fi # --------------------------------------------------------------------------- # remove cron jobs # --------------------------------------------------------------------------- rm -f /var/cron/etc/root/faxqclean rm -f /var/cron/etc/root/faxcron /var/install/config.d/cron --quiet # --------------------------------------------------------------------------- # remove user and group # --------------------------------------------------------------------------- #/var/install/bin/remove-user-from-additional-group --user fax --group dialout # remove folder rm -rf /srv/www/${package_name} rm -f /etc/logrotate.d/${package_name}-* rmdir --ignore-fail-on-non-empty ${FAXQCLEAN_TIMER_DIR} 2>/dev/null rmdir --ignore-fail-on-non-empty ${FAXCRON_TIMER_DIR} 2>/dev/null /usr/bin/systemctl --no-reload disable --now eisfax-faxq.service \ eisfax-hfaxd.service \ eisfax.target \ eisfax-faxcron.timer \ eisfax-faxqclean.timer /usr/bin/systemctl clean --what=state eisfax-faxcron.timer \ eisfax-faxqclean.timer exit 0 # --------------------------------------------------------------------------- # end # ---------------------------------------------------------------------------