#!/bin/bash #================================================= # GENERIC START #================================================= # IMPORT GENERIC HELPERS #================================================= source _common.sh source /usr/share/yunohost/helpers #================================================= # RETRIEVE ARGUMENTS FROM THE MANIFEST #================================================= fpm_footprint="low" fpm_free_footprint=0 fpm_usage="low" #================================================= # STORE SETTINGS FROM MANIFEST #================================================= ynh_script_progression --message="Storing installation settings..." --weight=2 ynh_app_setting_set --app=$app --key=fpm_footprint --value=$fpm_footprint ynh_app_setting_set --app=$app --key=fpm_free_footprint --value=$fpm_free_footprint ynh_app_setting_set --app=$app --key=fpm_usage --value=$fpm_usage #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE #================================================= ynh_script_progression --message="Setting up source files..." --weight=7 # Download, check integrity, uncompress and patch the source from app.src ynh_setup_source --dest_dir="$install_dir" chmod -R o-rwx "$install_dir" chown -R $app:www-data "$install_dir" #================================================= # NGINX CONFIGURATION #================================================= ynh_script_progression --message="Configuring NGINX web server..." --weight=2 # Create a dedicated NGINX config ynh_add_nginx_config # Create a dedicated php-fpm config ynh_add_fpm_config --usage=$fpm_usage --footprint=$fpm_footprint #================================================= # INITIALIZE DATABASE #================================================= ynh_script_progression --message="Initializing database..." --weight=3 ynh_mysql_connect_as --user="$db_user" --password="$db_pwd" --database="$db_name" < "$install_dir/SQL/mysql.initial.sql" #================================================= # INSTALL DEPENDENCIES AND PLUGINS #================================================= ynh_script_progression --message="Installing Roundcube with Composer..." --weight=30 setup_composer_deps ynh_install_composer ynh_script_progression --message="Configuring Roundcube..." --weight=2 configure_roundcube ynh_script_progression --message="Installing ldap, automatic addressbook and contextmenu plugins..." --weight=60 install_ldap_addressbook_contextmenu_plugins if [ $with_carddav -eq 1 ] then ynh_script_progression --message="Installing carddav plugin..." --weight=30 install_carddav_plugin fi ynh_script_progression --message="Install javascript dependencies..." --weight=10 update_javascript_deps ynh_script_progression --message="Updating Roundcube configuration..." --weight=3 enable_plugins_in_config ynh_script_progression --message="Installation of $app completed" --last