install.inc 1.5 KB

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