install.inc 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #!/bin/sh
  2. hestia_module_exim_install() {
  3. source $HESTIA/bin/module/func.inc
  4. module_installed=$(hestia_module_isinstalled mta)
  5. if [ "$module_installed" ] && [ ! "$param_force" ]; then
  6. echo "MTA module is already installed. See 'hestia module info mta'."
  7. exit 1
  8. fi
  9. echo "Installing MTA (Exim) module..."
  10. osal_service_stop $OSAL_PKG_EXIM
  11. hestia_config_backup 'exim-install' $OSAL_PATH_EXIM_CONF
  12. osal_package_preinstall
  13. osal_package_install $OSAL_PKG_EXIM $OSAL_PKG_EXIM_DAEMON
  14. gpasswd -a $OSAL_USER_EXIM mail > /dev/null 2>&1
  15. cp -f $HESTIA_INSTALL_DIR/exim/${OSAL_PKG_EXIM}.conf.template $OSAL_PATH_EXIM_CONF/
  16. cp -f $HESTIA_INSTALL_DIR/exim/dnsbl.conf $OSAL_PATH_EXIM_CONF/
  17. cp -f $HESTIA_INSTALL_DIR/exim/spam-blocks.conf $OSAL_PATH_EXIM_CONF/
  18. touch $OSAL_PATH_EXIM_CONF/white-blocks.conf
  19. // TODO: move to clamd and spamd installers
  20. #if [ "$spamd" = 'yes' ]; then
  21. # sed -i "s/#SPAM/SPAM/g" /etc/exim4/exim4.conf.template
  22. #fi
  23. #if [ "$clamd" = 'yes' ]; then
  24. # sed -i "s/#CLAMD/CLAMD/g" /etc/exim4/exim4.conf.template
  25. #fi
  26. chmod 640 $OSAL_PATH_EXIM_CONF/${OSAL_PKG_EXIM}.conf.template
  27. rm -rf $OSAL_PATH_EXIM_CONF/domains
  28. mkdir -p $OSAL_PATH_EXIM_CONF/domains
  29. rm -f /etc/alternatives/mta
  30. ln -s /usr/sbin/$OSAL_PKG_EXIM /etc/alternatives/mta
  31. osal_service_stop sendmail
  32. osal_service_disable sendmail
  33. osal_service_stop postfix
  34. osal_service_disable postfix
  35. osal_service_enable $OSAL_PKG_EXIM
  36. osal_service_start $OSAL_PKG_EXIM
  37. check_result $? "Exim start failed"
  38. osal_kv_write $HESTIA/conf/hestia.conf 'MAIL_SYSTEM' 'exim'
  39. osal_kv_write $HESTIA_CONF_MODULES/mta.conf 'installed' '1'
  40. osal_kv_write $HESTIA_CONF_MODULES/mta.conf 'description' 'Hestia MTA (Exim) module'
  41. osal_kv_write $HESTIA_CONF_MODULES/mta.conf 'enabled' '1'
  42. osal_kv_write $HESTIA_CONF_MODULES/mta.conf 'variant' 'exim'
  43. osal_kv_write $HESTIA_CONF_MODULES/mta.conf 'version' '1'
  44. osal_kv_write $HESTIA_CONF_MODULES/mta.conf 'service_name' $OSAL_PKG_EXIM
  45. exit 0
  46. }