2017-07-01 19:54:37 +02:00
#!/bin/bash
2017-08-01 11:29:01 +02:00
#=================================================
# IMPORT GENERIC HELPERS
#=================================================
source _common.sh
2017-07-05 12:28:42 +02:00
source /usr/share/yunohost/helpers
2017-08-01 11:29:01 +02:00
#=================================================
2024-07-01 11:30:11 +02:00
# INITIALIZE AND STORE SETTINGS
2017-08-01 11:29:01 +02:00
#=================================================
2017-07-05 12:28:42 +02:00
2024-08-31 03:55:25 +02:00
admin_password=$(ynh_string_random --length=24)
2023-07-30 16:49:26 +02:00
admin_password_hashed=$(mkpasswd -m md5crypt --stdin <<< "$admin_password")
2018-09-01 18:12:10 +02:00
2024-08-31 03:55:25 +02:00
ynh_app_setting_set --key="admin_password" --value="$admin_password"
2017-07-01 19:54:37 +02:00
2019-04-06 20:29:15 +02:00
#=================================================
2019-04-18 04:57:31 +02:00
# DOWNLOAD, CHECK AND UNPACK SOURCE
2019-04-06 20:29:15 +02:00
#=================================================
2024-08-31 03:55:25 +02:00
ynh_script_progression "Setting up source files..."
2019-04-06 20:29:15 +02:00
2019-04-18 04:57:31 +02:00
# Download, check integrity, uncompress and patch the source from app.src
2023-06-07 22:28:49 +02:00
ynh_setup_source --dest_dir="$install_dir"
2017-07-01 19:54:37 +02:00
2024-07-01 11:30:11 +02:00
chmod -R 700 "$install_dir/data"
2024-08-31 03:55:25 +02:00
#REMOVEME? Assuming the install dir is setup using ynh_setup_source, the proper chmod/chowns are now already applied and it shouldn't be necessary to tweak perms | chmod -R o-rwx "$install_dir"
#REMOVEME? Assuming the install dir is setup using ynh_setup_source, the proper chmod/chowns are now already applied and it shouldn't be necessary to tweak perms | chown -R "$app:www-data" "$install_dir"
2018-09-01 18:12:10 +02:00
#=================================================
2024-07-01 11:30:11 +02:00
# APP INITIAL CONFIGURATION
2018-09-01 18:12:10 +02:00
#=================================================
2024-08-31 03:55:25 +02:00
ynh_script_progression "Adding $app's configuration files..."
2017-07-01 19:54:37 +02:00
2019-04-18 04:58:41 +02:00
# Adding the details of the database to the config file
2024-08-31 03:55:25 +02:00
ynh_config_add --template="config.ini.php" --destination="$install_dir/data/config.ini.php"
2019-04-18 04:58:41 +02:00
# Load initial SQL into the new database
2024-08-31 03:55:25 +02:00
ynh_config_add --template="sql/webtrees.sql" --destination="$install_dir/webtrees.sql"
ynh_config_add --template="sql/admin.sql" --destination="$install_dir/admin.sql"
2019-04-18 04:58:41 +02:00
2024-08-31 03:55:25 +02:00
ynh_mysql_db_shell < "$install_dir/webtrees.sql"
ynh_mysql_db_shell < "$install_dir/admin.sql"
2019-04-18 04:58:41 +02:00
2024-08-31 03:55:25 +02:00
ynh_safe_rm "$install_dir/webtrees.sql"
ynh_safe_rm "$install_dir/admin.sql"
2024-07-01 11:30:11 +02:00
#=================================================
# SYSTEM CONFIGURATION
#=================================================
2024-08-31 03:55:25 +02:00
ynh_script_progression "Adding system configurations related to $app..."
2024-07-01 11:30:11 +02:00
# Create a dedicated NGINX config
2024-08-31 03:55:25 +02:00
ynh_config_add_nginx
2024-07-01 11:30:11 +02:00
# Create a dedicated PHP-FPM config
2024-08-31 03:55:25 +02:00
ynh_config_add_phpfpm
2017-07-01 19:54:37 +02:00
2019-04-06 20:29:15 +02:00
#=================================================
# END OF SCRIPT
#=================================================
2024-08-31 03:55:25 +02:00
ynh_script_progression "Installation of $app completed"