install.inc 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #!/bin/sh
  2. hestia_module_dovecot_install() {
  3. source $HESTIA/bin/module/func.inc
  4. module_installed=$(hestia_module_isinstalled imap)
  5. if [ "$module_installed" ] && [ ! "$param_force" ]; then
  6. echo "IMAP module is already installed. See 'hestia module info imap'."
  7. exit 1
  8. fi
  9. echo "Installing IMAP (Dovecot) module..."
  10. osal_service_stop $OSAL_SERVICE_DOVECOT > /dev/null 2>&1
  11. hestia_config_backup 'dovecot-install' $OSAL_PATH_DOVECOT_CONF
  12. osal_package_preinstall
  13. osal_package_install $OSAL_PKG_DOVECOT
  14. gpasswd -a dovecot mail > /dev/null 2>&1
  15. cp -rf $HESTIA_INSTALL_DIR/dovecot/* $OSAL_PATH_DOVECOT_CONF/
  16. cp -f $HESTIA_INSTALL_DIR/logrotate/dovecot $OSAL_PATH_LOGROTATE_CONF_D/
  17. chown -R root:root $OSAL_PATH_DOVECOT_CONF
  18. # Why do we do this?
  19. rm -f /etc/dovecot/conf.d/15-mailboxes.conf
  20. osal_service_enable $OSAL_SERVICE_DOVECOT
  21. osal_service_start $OSAL_SERVICE_DOVECOT
  22. check_result $? "Dovecot start failed"
  23. osal_kv_write $HESTIA/conf/hestia.conf 'IMAP_SYSTEM' 'dovecot'
  24. osal_kv_write $HESTIA_CONF_MODULES/imap.conf 'installed' '1'
  25. osal_kv_write $HESTIA_CONF_MODULES/imap.conf 'description' 'Hestia IMAP (Dovecot) module'
  26. osal_kv_write $HESTIA_CONF_MODULES/imap.conf 'enabled' '1'
  27. osal_kv_write $HESTIA_CONF_MODULES/imap.conf 'variant' 'dovecot'
  28. osal_kv_write $HESTIA_CONF_MODULES/imap.conf 'version' '1'
  29. osal_kv_write $HESTIA_CONF_MODULES/imap.conf 'service_name' $OSAL_PKG_DOVECOT
  30. exit 0
  31. }