From fb0cfff9cf1149a157620a55cfa3e4d22d626f38 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Thu, 6 Apr 2023 13:42:27 +0200 Subject: [PATCH 01/27] v2 --- conf/app.src | 7 ---- conf/emailpoubelle.cron | 2 +- conf/nginx.conf | 2 +- conf/php-fpm.conf | 2 +- manifest.toml | 66 +++++++++++++++++++++++++++++++ scripts/_common.sh | 2 +- scripts/backup | 16 ++++---- scripts/install | 88 ++++++++++++++++++++--------------------- scripts/remove | 28 ++++++------- scripts/restore | 46 ++++++++++----------- scripts/upgrade | 84 +++++++++++++++++++-------------------- 11 files changed, 201 insertions(+), 142 deletions(-) delete mode 100644 conf/app.src create mode 100644 manifest.toml diff --git a/conf/app.src b/conf/app.src deleted file mode 100644 index 5a82027..0000000 --- a/conf/app.src +++ /dev/null @@ -1,7 +0,0 @@ -SOURCE_URL=https://framagit.org/kepon/emailPoubellePhp/-/archive/d25ae5b243f5dbd8c2b023b80b6406c110843586/emailPoubellePhp-d25ae5b243f5dbd8c2b023b80b6406c110843586.tar.gz -SOURCE_SUM=4b96d268ecf81684a91c31416b16f2b79a7409416dfd67cdd720d4d13b2ae1d8 -SOURCE_SUM_PRG=sha256sum -SOURCE_FORMAT=tar.gz -SOURCE_IN_SUBDIR=true -SOURCE_FILENAME= -SOURCE_EXTRACT=true diff --git a/conf/emailpoubelle.cron b/conf/emailpoubelle.cron index 45235b0..f6c4fd1 100644 --- a/conf/emailpoubelle.cron +++ b/conf/emailpoubelle.cron @@ -1 +1 @@ -0 */2 * * * www-data cd $final_path/www/; /usr/bin/php index.php > /dev/null 2>&1 \ No newline at end of file +0 */2 * * * www-data cd $install_dir/www/; /usr/bin/php index.php > /dev/null 2>&1 \ No newline at end of file diff --git a/conf/nginx.conf b/conf/nginx.conf index 1b27d14..a689f75 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -2,7 +2,7 @@ location __PATH__/ { # Path to source - alias __FINALPATH__/www/ ; + alias __INSTALL_DIR__/www/ ; index index.php; diff --git a/conf/php-fpm.conf b/conf/php-fpm.conf index 92c8066..c487766 100644 --- a/conf/php-fpm.conf +++ b/conf/php-fpm.conf @@ -358,7 +358,7 @@ request_terminate_timeout = 1d ; Chdir to this directory at the start. ; Note: relative path can be used. ; Default Value: current directory or / when chroot -chdir = __FINALPATH__/www +chdir = __INSTALL_DIR__/www ; Redirect worker stdout and stderr into main error log. If not set, stdout and ; stderr will be redirected to /dev/null according to FastCGI specs. diff --git a/manifest.toml b/manifest.toml new file mode 100644 index 0000000..d20a494 --- /dev/null +++ b/manifest.toml @@ -0,0 +1,66 @@ +packaging_format = 2 + +id = "emailpoubelle" +name = "EmailPoubelle" +description.en = "Create throwable email address redirected to your real one" +description.fr = "Créez des adresses email jetables qui redirigent les mails vers votre adresse réelle" + +version = "2022.06.08~ynh1" + +maintainers = ["Krakinou"] + +[upstream] +license = "Beerware" +website = "https://forge.zici.fr/project/view/6" +demo = "https://poubelle.zici.fr" +code = "https://framagit.org/kepon/emailPoubellePhp" +cpe = "???" # FIXME: optional but recommended if relevant, this is meant to contain the Common Platform Enumeration, which is sort of a standard id for applications defined by the NIST. In particular, Yunohost may use this is in the future to easily track CVE (=security reports) related to apps. The CPE may be obtained by searching here: https://nvd.nist.gov/products/cpe/search. For example, for Nextcloud, the CPE is 'cpe:2.3:a:nextcloud:nextcloud' (no need to include the version number) +fund = "???" # FIXME: optional but recommended (or remove if irrelevant / not applicable). This is meant to be an URL where people can financially support this app, especially when its development is based on volunteers and/or financed by its community. YunoHost may later advertise it in the webadmin. + +[integration] +yunohost = ">= 4.3.0" +architectures = "all" # FIXME: can be replaced by a list of supported archs using the dpkg --print-architecture nomenclature (amd64/i386/armhf/arm64), for example: ["amd64", "i386"] +multi_instance = false +ldap = "?" # FIXME: replace with true, false, or "not_relevant". Not to confuse with the "sso" key : the "ldap" key corresponds to wether or not a user *can* login on the app using its YunoHost credentials. +sso = "?" # FIXME: replace with true, false, or "not_relevant". Not to confuse with the "ldap" key : the "sso" key corresponds to wether or not a user is *automatically logged-in* on the app when logged-in on the YunoHost portal. +disk = "50M" # FIXME: replace with an **estimate** minimum disk requirement. e.g. 20M, 400M, 1G, ... +ram.build = "50M" # FIXME: replace with an **estimate** minimum ram requirement. e.g. 50M, 400M, 1G, ... +ram.runtime = "50M" # FIXME: replace with an **estimate** minimum ram requirement. e.g. 50M, 400M, 1G, ... + +[install] + [install.domain] + # this is a generic question - ask strings are automatically handled by Yunohost's core + type = "domain" + + [install.path] + # this is a generic question - ask strings are automatically handled by Yunohost's core + type = "path" + default = "/poubelle" + + [install.init_main_permission] + type = "group" + default = false + + [install.admin] + # this is a generic question - ask strings are automatically handled by Yunohost's core + type = "user" + + [install.password] + # this is a generic question - ask strings are automatically handled by Yunohost's core + type = "password" + +[resources] + [resources.sources.main] + url = "https://framagit.org/kepon/emailPoubellePhp/-/archive/d25ae5b243f5dbd8c2b023b80b6406c110843586/emailPoubellePhp-d25ae5b243f5dbd8c2b023b80b6406c110843586.tar.gz" + sha256 = "4b96d268ecf81684a91c31416b16f2b79a7409416dfd67cdd720d4d13b2ae1d8" + + + [resources.system_user] + + [resources.install_dir] + + [resources.permissions] + main.url = "/" + + [resources.database] + type = "mysql" diff --git a/scripts/_common.sh b/scripts/_common.sh index 6250b66..861b18a 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -5,7 +5,7 @@ #================================================= # dependencies used by the app -pkg_dependencies="php$YNH_DEFAULT_PHP_VERSION-geoip php$YNH_DEFAULT_PHP_VERSION-cli" +#REMOVEME? pkg_dependencies="php$YNH_DEFAULT_PHP_VERSION-geoip php$YNH_DEFAULT_PHP_VERSION-cli" lang="fr_FR.UTF-8 en_US.UTF-8 it_IT.UTF-8" #================================================= diff --git a/scripts/backup b/scripts/backup index 049cff2..2fffcca 100644 --- a/scripts/backup +++ b/scripts/backup @@ -15,19 +15,19 @@ source /usr/share/yunohost/helpers #================================================= # Exit if an error occurs during the execution of the script -ynh_abort_if_errors +#REMOVEME? ynh_abort_if_errors #================================================= # LOAD SETTINGS #================================================= -ynh_print_info --message="Loading installation settings..." +#REMOVEME? ynh_print_info --message="Loading installation settings..." -app=$YNH_APP_INSTANCE_NAME +#REMOVEME? app=$YNH_APP_INSTANCE_NAME -final_path=$(ynh_app_setting_get --app=$app --key=final_path) -domain=$(ynh_app_setting_get --app=$app --key=domain) -db_name=$(ynh_app_setting_get --app=$app --key=db_name) -phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) +#REMOVEME? #REMOVEME? install_dir=$(ynh_app_setting_get --app=$app --key=install_dir) +#REMOVEME? domain=$(ynh_app_setting_get --app=$app --key=domain) +#REMOVEME? db_name=$(ynh_app_setting_get --app=$app --key=db_name) +#REMOVEME? phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) #================================================= # DECLARE DATA AND CONF FILES TO BACKUP @@ -38,7 +38,7 @@ ynh_print_info --message="Declaring files to be backed up..." # BACKUP THE APP MAIN DIR #================================================= -ynh_backup --src_path="$final_path" +ynh_backup --src_path="$install_dir" #================================================= # BACKUP THE NGINX CONFIGURATION diff --git a/scripts/install b/scripts/install index 04736eb..669e814 100644 --- a/scripts/install +++ b/scripts/install @@ -14,49 +14,49 @@ source /usr/share/yunohost/helpers #================================================= # Exit if an error occurs during the execution of the script -ynh_abort_if_errors +#REMOVEME? ynh_abort_if_errors #================================================= # RETRIEVE ARGUMENTS FROM THE MANIFEST #================================================= -domain=$YNH_APP_ARG_DOMAIN -path_url=$YNH_APP_ARG_PATH -is_public=$YNH_APP_ARG_IS_PUBLIC -admin=$YNH_APP_ARG_ADMIN -password=$YNH_APP_ARG_PASSWORD +#REMOVEME? domain=$YNH_APP_ARG_DOMAIN +#REMOVEME? path=$YNH_APP_ARG_PATH +#REMOVEME? is_public=$YNH_APP_ARG_IS_PUBLIC +#REMOVEME? admin=$YNH_APP_ARG_ADMIN +#REMOVEME? password=$YNH_APP_ARG_PASSWORD -app=$YNH_APP_INSTANCE_NAME +#REMOVEME? app=$YNH_APP_INSTANCE_NAME #================================================= # CHECK IF THE APP CAN BE INSTALLED WITH THESE ARGS #================================================= -ynh_script_progression --message="Validating installation parameters..." --weight=1 +#REMOVEME? ynh_script_progression --message="Validating installation parameters..." --weight=1 -final_path=/var/www/$app -test ! -e "$final_path" || ynh_die --message="This path already contains a folder" +#REMOVEME? install_dir=/var/www/$app +#REMOVEME? test ! -e "$install_dir" || ynh_die --message="This path already contains a folder" # Register (book) web path -ynh_webpath_register --app=$app --domain=$domain --path_url=$path_url +#REMOVEME? ynh_webpath_register --app=$app --domain=$domain --path=$path #================================================= # STORE SETTINGS FROM MANIFEST #================================================= -ynh_script_progression --message="Storing installation settings..." --weight=1 +#REMOVEME? ynh_script_progression --message="Storing installation settings..." --weight=1 -ynh_app_setting_set --app=$app --key=domain --value=$domain -ynh_app_setting_set --app=$app --key=path --value=$path_url -ynh_app_setting_set --app=$app --key=admin --value=$admin -ynh_app_setting_set --app=$app --key=password --value=$password +#REMOVEME? ynh_app_setting_set --app=$app --key=domain --value=$domain +#REMOVEME? ynh_app_setting_set --app=$app --key=path --value=$path +#REMOVEME? ynh_app_setting_set --app=$app --key=admin --value=$admin +#REMOVEME? ynh_app_setting_set --app=$app --key=password --value=$password #================================================= # STANDARD MODIFICATIONS #================================================= # INSTALL DEPENDENCIES #================================================= -ynh_script_progression --message="Installing dependencies..." --weight=15 +#REMOVEME? ynh_script_progression --message="Installing dependencies..." --weight=15 -ynh_install_app_dependencies $pkg_dependencies +#REMOVEME? ynh_install_app_dependencies $pkg_dependencies #install locale (nginx will restart at the end of the install) for i in $lang ; do @@ -68,37 +68,37 @@ locale-gen #================================================= # CREATE DEDICATED USER #================================================= -ynh_script_progression --message="Configuring system user..." +#REMOVEME? ynh_script_progression --message="Configuring system user..." # Create a system user -ynh_system_user_create --username=$app --home_dir="$final_path" +#REMOVEME? ynh_system_user_create --username=$app --home_dir="$install_dir" #================================================= # CREATE A MYSQL DATABASE #================================================= -ynh_script_progression --message="Creating a MySQL database..." +#REMOVEME? ynh_script_progression --message="Creating a MySQL database..." -db_name=$(ynh_sanitize_dbid --db_name=$app) -db_user=$db_name -ynh_app_setting_set --app=$app --key=db_name --value=$db_name -ynh_mysql_setup_db --db_user=$db_user --db_name=$db_name +#REMOVEME? db_name=$(ynh_sanitize_dbid --db_name=$app) +#REMOVEME? db_user=$db_name +#REMOVEME? ynh_app_setting_set --app=$app --key=db_name --value=$db_name +#REMOVEME? ynh_mysql_setup_db --db_user=$db_user --db_name=$db_name #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE #================================================= ynh_script_progression --message="Setting up source files..." --weight=5 -ynh_app_setting_set --app=$app --key=final_path --value=$final_path +#REMOVEME? ynh_app_setting_set --app=$app --key=install_dir --value=$install_dir # Download, check integrity, uncompress and patch the source from app.src -ynh_setup_source --dest_dir="$final_path" -ynh_add_config --template="../conf/index_source.php" --destination="$final_path/www/index.php" -ynh_secure_remove --file="$final_path/www/admin.php" +ynh_setup_source --dest_dir="$install_dir" +ynh_add_config --template="../conf/index_source.php" --destination="$install_dir/www/index.php" +#REMOVEME? ynh_secure_remove --file="$install_dir/www/admin.php" -ln -s $final_path/lib $final_path/www/lib +ln -s $install_dir/lib $install_dir/www/lib -chmod 750 "$final_path" -chmod -R o-rwx "$final_path" -chown -R $app:www-data "$final_path" +chmod 750 "$install_dir" +chmod -R o-rwx "$install_dir" +chown -R $app:www-data "$install_dir" #================================================= # PHP-FPM CONFIGURATION @@ -123,10 +123,10 @@ ynh_add_nginx_config #================================================= ynh_script_progression --message="Adding a configuration file..." -ynh_add_config --template="../conf/conf-dist.php" --destination="$final_path/conf.php" +ynh_add_config --template="../conf/conf-dist.php" --destination="$install_dir/conf.php" -chmod 400 "$final_path/conf.php" -chown $app:$app "$final_path/conf.php" +chmod 400 "$install_dir/conf.php" +chown $app:$app "$install_dir/conf.php" # Setting postfix to use virtual aliases file # Add postfix configuration hook and regen postfix conf @@ -134,9 +134,9 @@ cp -R ../sources/hooks/conf_regen/98-postfix_emailpoubelle /usr/share/yunohost/h yunohost tools regen-conf postfix # Create the virtual aliases file -touch $final_path/var/virtual -postmap $final_path/var/virtual -chown -R $app:www-data "$final_path" +touch $install_dir/var/virtual +postmap $install_dir/var/virtual +chown -R $app:www-data "$install_dir" # Create an alias for deleted junk adresses cp /etc/aliases /etc/aliases.emailpoubelle.bak #backup it @@ -154,22 +154,22 @@ chmod 644 /etc/cron.d/$app #================================================= # SETUP SSOWAT #================================================= -ynh_script_progression --message="Configuring permissions..." +#REMOVEME? ynh_script_progression --message="Configuring permissions..." # Make app public if necessary -if [ $is_public -eq 1 ] +#REMOVEME? if [ $is_public -eq 1 ] then # Everyone can access the app. # The "main" permission is automatically created before the install script. - ynh_permission_update --permission="main" --add="visitors" +#REMOVEME? ynh_permission_update --permission="main" --add="visitors" fi #================================================= # RELOAD NGINX #================================================= -ynh_script_progression --message="Reloading NGINX web server..." +#REMOVEME? ynh_script_progression --message="Reloading NGINX web server..." -ynh_systemd_action --service_name=nginx --action=reload +#REMOVEME? ynh_systemd_action --service_name=nginx --action=reload #================================================= # END OF SCRIPT diff --git a/scripts/remove b/scripts/remove index abfd355..3abeaf8 100644 --- a/scripts/remove +++ b/scripts/remove @@ -12,32 +12,32 @@ source /usr/share/yunohost/helpers #================================================= # LOAD SETTINGS #================================================= -ynh_script_progression --message="Loading installation settings..." +#REMOVEME? ynh_script_progression --message="Loading installation settings..." -app=$YNH_APP_INSTANCE_NAME +#REMOVEME? app=$YNH_APP_INSTANCE_NAME -domain=$(ynh_app_setting_get --app=$app --key=domain) -db_name=$(ynh_app_setting_get --app=$app --key=db_name) -db_user=$db_name -final_path=$(ynh_app_setting_get --app=$app --key=final_path) +#REMOVEME? domain=$(ynh_app_setting_get --app=$app --key=domain) +#REMOVEME? db_name=$(ynh_app_setting_get --app=$app --key=db_name) +#REMOVEME? db_user=$db_name +#REMOVEME? #REMOVEME? install_dir=$(ynh_app_setting_get --app=$app --key=install_dir) #================================================= # STANDARD REMOVE #================================================= # REMOVE THE MYSQL DATABASE #================================================= -ynh_script_progression --message="Removing the MySQL database..." +#REMOVEME? ynh_script_progression --message="Removing the MySQL database..." # Remove a database if it exists, along with the associated user -ynh_mysql_remove_db --db_user=$db_user --db_name=$db_name +#REMOVEME? ynh_mysql_remove_db --db_user=$db_user --db_name=$db_name #================================================= # REMOVE APP MAIN DIR #================================================= -ynh_script_progression --message="Removing app main directory..." +#REMOVEME? ynh_script_progression --message="Removing app main directory..." # Remove the app directory securely -ynh_secure_remove --file="$final_path" +#REMOVEME? ynh_secure_remove --file="$install_dir" #================================================= @@ -59,10 +59,10 @@ ynh_remove_fpm_config #================================================= # REMOVE DEPENDENCIES #================================================= -ynh_script_progression --message="Removing dependencies..." +#REMOVEME? ynh_script_progression --message="Removing dependencies..." # Remove metapackage and its dependencies -ynh_remove_app_dependencies +#REMOVEME? ynh_remove_app_dependencies #================================================= # SPECIFIC REMOVE @@ -86,10 +86,10 @@ ynh_systemd_action --service_name=postfix --action=reload #================================================= # REMOVE DEDICATED USER #================================================= -ynh_script_progression --message="Removing the dedicated system user..." +#REMOVEME? ynh_script_progression --message="Removing the dedicated system user..." # Delete a system user -ynh_system_user_delete --username=$app +#REMOVEME? ynh_system_user_delete --username=$app #================================================= # END OF SCRIPT diff --git a/scripts/restore b/scripts/restore index 1cc8432..64e4295 100644 --- a/scripts/restore +++ b/scripts/restore @@ -15,60 +15,60 @@ source /usr/share/yunohost/helpers #================================================= # Exit if an error occurs during the execution of the script -ynh_abort_if_errors +#REMOVEME? ynh_abort_if_errors #================================================= # LOAD SETTINGS #================================================= -ynh_script_progression --message="Loading installation settings..." --weight=1 +#REMOVEME? ynh_script_progression --message="Loading installation settings..." --weight=1 -app=$YNH_APP_INSTANCE_NAME +#REMOVEME? app=$YNH_APP_INSTANCE_NAME -domain=$(ynh_app_setting_get --app=$app --key=domain) -path_url=$(ynh_app_setting_get --app=$app --key=path) -final_path=$(ynh_app_setting_get --app=$app --key=final_path) -db_name=$(ynh_app_setting_get --app=$app --key=db_name) -db_user=$db_name -phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) +#REMOVEME? domain=$(ynh_app_setting_get --app=$app --key=domain) +#REMOVEME? path=$(ynh_app_setting_get --app=$app --key=path) +#REMOVEME? #REMOVEME? install_dir=$(ynh_app_setting_get --app=$app --key=install_dir) +#REMOVEME? db_name=$(ynh_app_setting_get --app=$app --key=db_name) +#REMOVEME? db_user=$db_name +#REMOVEME? phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) #================================================= # CHECK IF THE APP CAN BE RESTORED #================================================= -ynh_script_progression --message="Validating restoration parameters..." --weight=1 +#REMOVEME? ynh_script_progression --message="Validating restoration parameters..." --weight=1 -test ! -d $final_path \ - || ynh_die --message="There is already a directory: $final_path " +#REMOVEME? test ! -d $install_dir \ + || ynh_die --message="There is already a directory: $install_dir " #================================================= # STANDARD RESTORATION STEPS #================================================= # RECREATE THE DEDICATED USER #================================================= -ynh_script_progression --message="Recreating the dedicated system user..." +#REMOVEME? ynh_script_progression --message="Recreating the dedicated system user..." # Create the dedicated user (if not existing) -ynh_system_user_create --username=$app --home_dir="$final_path" +#REMOVEME? ynh_system_user_create --username=$app --home_dir="$install_dir" #================================================= # RESTORE THE APP MAIN DIR #================================================= ynh_script_progression --message="Restoring the app main directory..." --weight=1 -ynh_restore_file --origin_path="$final_path" +ynh_restore_file --origin_path="$install_dir" -chmod 750 "$final_path" -chmod -R o-rwx "$final_path" -chown -R $app:www-data "$final_path" +chmod 750 "$install_dir" +chmod -R o-rwx "$install_dir" +chown -R $app:www-data "$install_dir" #================================================= # SPECIFIC RESTORATION #================================================= # REINSTALL DEPENDENCIES #================================================= -ynh_script_progression --message="Reinstalling dependencies..." --weight=15 +#REMOVEME? ynh_script_progression --message="Reinstalling dependencies..." --weight=15 # Define and install dependencies -ynh_install_app_dependencies $pkg_dependencies +#REMOVEME? ynh_install_app_dependencies $pkg_dependencies #Check & regen local for i in $lang ; do @@ -93,10 +93,10 @@ ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf" #================================================= # RESTORE THE MYSQL DATABASE #================================================= -ynh_script_progression --message="Restoring the MySQL database..." --weight=1 +#REMOVEME? ynh_script_progression --message="Restoring the MySQL database..." --weight=1 -db_pwd=$(ynh_app_setting_get --app=$app --key=mysqlpwd) -ynh_mysql_setup_db --db_user=$db_user --db_name=$db_name --db_pwd=$db_pwd +#REMOVEME? db_pwd=$(ynh_app_setting_get --app=$app --key=mysqlpwd) +#REMOVEME? ynh_mysql_setup_db --db_user=$db_user --db_name=$db_name --db_pwd=$db_pwd ynh_mysql_connect_as --user=$db_user --password=$db_pwd --database=$db_name < ./db.sql #================================================= diff --git a/scripts/upgrade b/scripts/upgrade index 747c1ca..d0be34a 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -12,18 +12,18 @@ source /usr/share/yunohost/helpers #================================================= # LOAD SETTINGS #================================================= -ynh_script_progression --message="Loading installation settings..." +#REMOVEME? ynh_script_progression --message="Loading installation settings..." -app=$YNH_APP_INSTANCE_NAME +#REMOVEME? app=$YNH_APP_INSTANCE_NAME -domain=$(ynh_app_setting_get --app=$app --key=domain) -path_url=$(ynh_app_setting_get --app=$app --key=path) -admin=$(ynh_app_setting_get --app=$app --key=admin) -final_path=$(ynh_app_setting_get --app=$app --key=final_path) -db_name=$(ynh_app_setting_get --app=$app --key=db_name) -db_user=$db_name -db_pwd=$(ynh_app_setting_get --app=$app --key=mysqlpwd) -password=$(ynh_app_setting_get --app=$app --key=password) +#REMOVEME? domain=$(ynh_app_setting_get --app=$app --key=domain) +#REMOVEME? path=$(ynh_app_setting_get --app=$app --key=path) +#REMOVEME? admin=$(ynh_app_setting_get --app=$app --key=admin) +#REMOVEME? #REMOVEME? install_dir=$(ynh_app_setting_get --app=$app --key=install_dir) +#REMOVEME? db_name=$(ynh_app_setting_get --app=$app --key=db_name) +#REMOVEME? db_user=$db_name +#REMOVEME? db_pwd=$(ynh_app_setting_get --app=$app --key=mysqlpwd) +#REMOVEME? password=$(ynh_app_setting_get --app=$app --key=password) #================================================= # CHECK VERSION @@ -35,16 +35,16 @@ upgrade_type=$(ynh_check_app_version_changed) #================================================= # BACKUP BEFORE UPGRADE THEN ACTIVE TRAP #================================================= -ynh_script_progression --message="Backing up the app before upgrading (may take a while)..." +#REMOVEME? ynh_script_progression --message="Backing up the app before upgrading (may take a while)..." # Backup the current version of the app -ynh_backup_before_upgrade -ynh_clean_setup () { +#REMOVEME? ynh_backup_before_upgrade +#REMOVEME? ynh_clean_setup () { # Restore it if the upgrade fails - ynh_restore_upgradebackup +#REMOVEME? ynh_restore_upgradebackup } # Exit if an error occurs during the execution of the script -ynh_abort_if_errors +#REMOVEME? ynh_abort_if_errors #================================================= # STANDARD UPGRADE STEPS @@ -54,8 +54,8 @@ ynh_abort_if_errors ynh_script_progression --message="Ensuring downward compatibility..." # Cleaning legacy permissions -if ynh_legacy_permissions_exists; then - ynh_legacy_permissions_delete_all +#REMOVEME? if ynh_legacy_permissions_exists; then +#REMOVEME? ynh_legacy_permissions_delete_all ynh_app_setting_delete --app=$app --key=is_public fi @@ -63,32 +63,32 @@ fi # If db_name doesn't exist, create it if [ -z "$db_name" ]; then db_name=$(ynh_sanitize_dbid --db_name=$app) - ynh_app_setting_set --app=$app --key=db_name --value=$db_name +#REMOVEME? ynh_app_setting_set --app=$app --key=db_name --value=$db_name fi -# If final_path doesn't exist, create it -if [ -z "$final_path" ]; then - final_path=/var/www/$app - ynh_app_setting_set --app=$app --key=final_path --value=$final_path +# If install_dir doesn't exist, create it +if [ -z "$install_dir" ]; then +#REMOVEME? install_dir=/var/www/$app +#REMOVEME? ynh_app_setting_set --app=$app --key=install_dir --value=$install_dir fi if [ -z $db_pwd ]; then - db_pwd=$(grep DBPASS $final_path/conf.php | cut -d"'" -f4) - ynh_app_setting_set --app=$app --key=mysqlpwd --value=$db_pwd + db_pwd=$(grep DBPASS $install_dir/conf.php | cut -d"'" -f4) +#REMOVEME? ynh_app_setting_set --app=$app --key=mysqlpwd --value=$db_pwd fi if [ -z $password ]; then - password=$(grep ADMIN_PASSWORD $final_path/conf.php | cut -d"'" -f4) - ynh_app_setting_set --app=$app --key=password --value=$password + password=$(grep ADMIN_PASSWORD $install_dir/conf.php | cut -d"'" -f4) +#REMOVEME? ynh_app_setting_set --app=$app --key=password --value=$password fi #================================================= # CREATE DEDICATED USER #================================================= -ynh_script_progression --message="Making sure dedicated system user exists..." +#REMOVEME? ynh_script_progression --message="Making sure dedicated system user exists..." # Create a dedicated user (if not existing) -ynh_system_user_create --username=$app --home_dir="$final_path" +#REMOVEME? ynh_system_user_create --username=$app --home_dir="$install_dir" #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE @@ -99,23 +99,23 @@ then ynh_script_progression --message="Upgrading source files..." # Download, check integrity, uncompress and patch the source from app.src - ynh_setup_source --dest_dir="$final_path" --keep="conf.php www/index.php" - ynh_add_config --template="../conf/index_source.php" --destination="$final_path/www/index.php" - ynh_secure_remove --file="$final_path/www/admin.php" + ynh_setup_source --dest_dir="$install_dir" --keep="conf.php www/index.php" + ynh_add_config --template="../conf/index_source.php" --destination="$install_dir/www/index.php" +#REMOVEME? ynh_secure_remove --file="$install_dir/www/admin.php" - ln -s $final_path/lib $final_path/www/lib + ln -s $install_dir/lib $install_dir/www/lib fi -chmod 750 "$final_path" -chmod -R o-rwx "$final_path" -chown -R $app:www-data "$final_path" +chmod 750 "$install_dir" +chmod -R o-rwx "$install_dir" +chown -R $app:www-data "$install_dir" #================================================= # UPGRADE DEPENDENCIES #================================================= -ynh_script_progression --message="Upgrading dependencies..." +#REMOVEME? ynh_script_progression --message="Upgrading dependencies..." -ynh_install_app_dependencies $pkg_dependencies +#REMOVEME? ynh_install_app_dependencies $pkg_dependencies #================================================= # PHP-FPM CONFIGURATION @@ -140,10 +140,10 @@ ynh_add_nginx_config #================================================= ynh_script_progression --message="Updating a configuration file..." -ynh_add_config --template="../conf/conf-dist.php" --destination="$final_path/conf.php" +ynh_add_config --template="../conf/conf-dist.php" --destination="$install_dir/conf.php" -chmod 400 "$final_path/conf.php" -chown $app:$app "$final_path/conf.php" +chmod 400 "$install_dir/conf.php" +chown $app:$app "$install_dir/conf.php" cp -R ../sources/hooks/conf_regen/98-postfix_emailpoubelle /usr/share/yunohost/hooks/conf_regen/ mv /etc/postfix/main.cf /etc/postfix/main.cf.emailpoubelle.bak @@ -160,9 +160,9 @@ chmod 644 /etc/cron.d/$app #================================================= # RELOAD NGINX #================================================= -ynh_script_progression --message="Reloading NGINX web server..." +#REMOVEME? ynh_script_progression --message="Reloading NGINX web server..." -ynh_systemd_action --service_name=nginx --action=reload +#REMOVEME? ynh_systemd_action --service_name=nginx --action=reload #================================================= # END OF SCRIPT From 17f65f0879cb1e7714031c58900b86baee2146e8 Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Thu, 6 Apr 2023 11:42:32 +0000 Subject: [PATCH 02/27] Auto-update README --- README.md | 4 ++-- README_fr.md | 18 +++++++++--------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index f8b4f98..04de041 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,8 @@ It shall NOT be edited by hand. # EmailPoubelle for YunoHost -[![Integration level](https://dash.yunohost.org/integration/emailpoubelle.svg)](https://dash.yunohost.org/appci/app/emailpoubelle) ![Working status](https://ci-apps.yunohost.org/ci/badges/emailpoubelle.status.svg) ![Maintenance status](https://ci-apps.yunohost.org/ci/badges/emailpoubelle.maintain.svg) +[![Integration level](https://dash.yunohost.org/integration/emailpoubelle.svg)](https://dash.yunohost.org/appci/app/emailpoubelle) ![Working status](https://ci-apps.yunohost.org/ci/badges/emailpoubelle.status.svg) ![Maintenance status](https://ci-apps.yunohost.org/ci/badges/emailpoubelle.maintain.svg) + [![Install EmailPoubelle with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=emailpoubelle) *[Lire ce readme en français.](./README_fr.md)* @@ -24,7 +25,6 @@ All thanks to David. **Shipped version:** 2022.06.08~ynh1 - **Demo:** https://poubelle.zici.fr ## Disclaimers / important information diff --git a/README_fr.md b/README_fr.md index 5375ae4..d8678c3 100644 --- a/README_fr.md +++ b/README_fr.md @@ -5,15 +5,16 @@ It shall NOT be edited by hand. # EmailPoubelle pour YunoHost -[![Niveau d'intégration](https://dash.yunohost.org/integration/emailpoubelle.svg)](https://dash.yunohost.org/appci/app/emailpoubelle) ![Statut du fonctionnement](https://ci-apps.yunohost.org/ci/badges/emailpoubelle.status.svg) ![Statut de maintenance](https://ci-apps.yunohost.org/ci/badges/emailpoubelle.maintain.svg) +[![Niveau d’intégration](https://dash.yunohost.org/integration/emailpoubelle.svg)](https://dash.yunohost.org/appci/app/emailpoubelle) ![Statut du fonctionnement](https://ci-apps.yunohost.org/ci/badges/emailpoubelle.status.svg) ![Statut de maintenance](https://ci-apps.yunohost.org/ci/badges/emailpoubelle.maintain.svg) + [![Installer EmailPoubelle avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=emailpoubelle) *[Read this readme in english.](./README.md)* -> *Ce package vous permet d'installer EmailPoubelle rapidement et simplement sur un serveur YunoHost. -Si vous n'avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour savoir comment l'installer et en profiter.* +> *Ce package vous permet d’installer EmailPoubelle rapidement et simplement sur un serveur YunoHost. +Si vous n’avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour savoir comment l’installer et en profiter.* -## Vue d'ensemble +## Vue d’ensemble A Yunohost version of [Email Poubelle](http://www.mercereau.info/sortie-de-la-version-1-0-demailpoubelle-php-email-jetable-auto-hebergeable/) by David Mercereau. @@ -22,8 +23,7 @@ EmailPoubelle (Trash email) is a script to create temporay email adresses that a All thanks to David. -**Version incluse :** 2022.06.08~ynh1 - +**Version incluse :** 2022.06.08~ynh1 **Démo :** https://poubelle.zici.fr ## Avertissements / informations importantes @@ -35,8 +35,8 @@ Of course, once uninstalled, everything get back to normal. ## Documentations et ressources -* Site officiel de l'app : -* Dépôt de code officiel de l'app : +* Site officiel de l’app : +* Dépôt de code officiel de l’app : * Documentation YunoHost pour cette app : * Signaler un bug : @@ -52,4 +52,4 @@ ou sudo yunohost app upgrade emailpoubelle -u https://github.com/YunoHost-Apps/emailpoubelle_ynh/tree/testing --debug ``` -**Plus d'infos sur le packaging d'applications :** +**Plus d’infos sur le packaging d’applications :** \ No newline at end of file From 2a7a9bcf809f924fbeb6d7c7f5336cabb3b11181 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Thu, 6 Apr 2023 13:48:27 +0200 Subject: [PATCH 03/27] v2 --- manifest.json | 59 ----------------------------- manifest.toml | 24 +++++------- scripts/_common.sh | 2 - scripts/backup | 19 ---------- scripts/install | 88 +------------------------------------------ scripts/remove | 49 ------------------------ scripts/restore | 49 +----------------------- scripts/upgrade | 94 +--------------------------------------------- tests.toml | 9 +++++ 9 files changed, 24 insertions(+), 369 deletions(-) delete mode 100644 manifest.json create mode 100644 tests.toml diff --git a/manifest.json b/manifest.json deleted file mode 100644 index 5e2b2c6..0000000 --- a/manifest.json +++ /dev/null @@ -1,59 +0,0 @@ -{ - "name": "EmailPoubelle", - "id": "emailpoubelle", - "packaging_format": 1, - "description": { - "en": "Create throwable email address redirected to your real one", - "fr": "Créez des adresses email jetables qui redirigent les mails vers votre adresse réelle" - }, - "version": "2022.06.08~ynh1", - "url": "https://framagit.org/kepon/emailPoubellePhp/", - "upstream": { - "license": "Beerware", - "website": "https://forge.zici.fr/project/view/6", - "demo": "https://poubelle.zici.fr", - "code": "https://framagit.org/kepon/emailPoubellePhp" - }, - "license": "Beerware", - "maintainer": { - "name": "Krakinou", - "email": "misterl56@hotmail.com" - }, - "requirements": { - "yunohost": ">= 4.3.0" - }, - "multi_instance": false, - "services": [ - "nginx", - "mysql", - "dovecot", - "postfix" - ], - "arguments": { - "install": [ - { - "name": "domain", - "type": "domain" - }, - { - "name": "path", - "type": "path", - "example": "/poubelle", - "default": "/poubelle" - }, - { - "name": "is_public", - "type": "boolean", - "default": false - }, - { - "name": "admin", - "type": "user" - }, - { - "name": "password", - "type": "password" - } - ] - } -} diff --git a/manifest.toml b/manifest.toml index d20a494..d694258 100644 --- a/manifest.toml +++ b/manifest.toml @@ -14,26 +14,22 @@ license = "Beerware" website = "https://forge.zici.fr/project/view/6" demo = "https://poubelle.zici.fr" code = "https://framagit.org/kepon/emailPoubellePhp" -cpe = "???" # FIXME: optional but recommended if relevant, this is meant to contain the Common Platform Enumeration, which is sort of a standard id for applications defined by the NIST. In particular, Yunohost may use this is in the future to easily track CVE (=security reports) related to apps. The CPE may be obtained by searching here: https://nvd.nist.gov/products/cpe/search. For example, for Nextcloud, the CPE is 'cpe:2.3:a:nextcloud:nextcloud' (no need to include the version number) -fund = "???" # FIXME: optional but recommended (or remove if irrelevant / not applicable). This is meant to be an URL where people can financially support this app, especially when its development is based on volunteers and/or financed by its community. YunoHost may later advertise it in the webadmin. [integration] -yunohost = ">= 4.3.0" -architectures = "all" # FIXME: can be replaced by a list of supported archs using the dpkg --print-architecture nomenclature (amd64/i386/armhf/arm64), for example: ["amd64", "i386"] +yunohost = ">= 11.1.17" +architectures = "all" multi_instance = false -ldap = "?" # FIXME: replace with true, false, or "not_relevant". Not to confuse with the "sso" key : the "ldap" key corresponds to wether or not a user *can* login on the app using its YunoHost credentials. -sso = "?" # FIXME: replace with true, false, or "not_relevant". Not to confuse with the "ldap" key : the "sso" key corresponds to wether or not a user is *automatically logged-in* on the app when logged-in on the YunoHost portal. -disk = "50M" # FIXME: replace with an **estimate** minimum disk requirement. e.g. 20M, 400M, 1G, ... -ram.build = "50M" # FIXME: replace with an **estimate** minimum ram requirement. e.g. 50M, 400M, 1G, ... -ram.runtime = "50M" # FIXME: replace with an **estimate** minimum ram requirement. e.g. 50M, 400M, 1G, ... +ldap = false +sso = false +disk = "50M" +ram.build = "50M" +ram.runtime = "50M" [install] [install.domain] - # this is a generic question - ask strings are automatically handled by Yunohost's core type = "domain" [install.path] - # this is a generic question - ask strings are automatically handled by Yunohost's core type = "path" default = "/poubelle" @@ -42,11 +38,9 @@ ram.runtime = "50M" # FIXME: replace with an **estimate** minimum ram requiremen default = false [install.admin] - # this is a generic question - ask strings are automatically handled by Yunohost's core type = "user" [install.password] - # this is a generic question - ask strings are automatically handled by Yunohost's core type = "password" [resources] @@ -54,7 +48,6 @@ ram.runtime = "50M" # FIXME: replace with an **estimate** minimum ram requiremen url = "https://framagit.org/kepon/emailPoubellePhp/-/archive/d25ae5b243f5dbd8c2b023b80b6406c110843586/emailPoubellePhp-d25ae5b243f5dbd8c2b023b80b6406c110843586.tar.gz" sha256 = "4b96d268ecf81684a91c31416b16f2b79a7409416dfd67cdd720d4d13b2ae1d8" - [resources.system_user] [resources.install_dir] @@ -62,5 +55,8 @@ ram.runtime = "50M" # FIXME: replace with an **estimate** minimum ram requiremen [resources.permissions] main.url = "/" + [resources.packaging_format] + packages = "mariadb-server, php7.4-geoip, php7.4-cli" + [resources.database] type = "mysql" diff --git a/scripts/_common.sh b/scripts/_common.sh index 861b18a..5129bd4 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -4,8 +4,6 @@ # COMMON VARIABLES #================================================= -# dependencies used by the app -#REMOVEME? pkg_dependencies="php$YNH_DEFAULT_PHP_VERSION-geoip php$YNH_DEFAULT_PHP_VERSION-cli" lang="fr_FR.UTF-8 en_US.UTF-8 it_IT.UTF-8" #================================================= diff --git a/scripts/backup b/scripts/backup index 2fffcca..bf24d21 100644 --- a/scripts/backup +++ b/scripts/backup @@ -10,25 +10,6 @@ source ../settings/scripts/_common.sh source /usr/share/yunohost/helpers -#================================================= -# MANAGE SCRIPT FAILURE -#================================================= - -# Exit if an error occurs during the execution of the script -#REMOVEME? ynh_abort_if_errors - -#================================================= -# LOAD SETTINGS -#================================================= -#REMOVEME? ynh_print_info --message="Loading installation settings..." - -#REMOVEME? app=$YNH_APP_INSTANCE_NAME - -#REMOVEME? #REMOVEME? install_dir=$(ynh_app_setting_get --app=$app --key=install_dir) -#REMOVEME? domain=$(ynh_app_setting_get --app=$app --key=domain) -#REMOVEME? db_name=$(ynh_app_setting_get --app=$app --key=db_name) -#REMOVEME? phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) - #================================================= # DECLARE DATA AND CONF FILES TO BACKUP #================================================= diff --git a/scripts/install b/scripts/install index 669e814..12ebe1e 100644 --- a/scripts/install +++ b/scripts/install @@ -9,54 +9,12 @@ source _common.sh source /usr/share/yunohost/helpers -#================================================= -# MANAGE SCRIPT FAILURE -#================================================= - -# Exit if an error occurs during the execution of the script -#REMOVEME? ynh_abort_if_errors - -#================================================= -# RETRIEVE ARGUMENTS FROM THE MANIFEST -#================================================= - -#REMOVEME? domain=$YNH_APP_ARG_DOMAIN -#REMOVEME? path=$YNH_APP_ARG_PATH -#REMOVEME? is_public=$YNH_APP_ARG_IS_PUBLIC -#REMOVEME? admin=$YNH_APP_ARG_ADMIN -#REMOVEME? password=$YNH_APP_ARG_PASSWORD - -#REMOVEME? app=$YNH_APP_INSTANCE_NAME - -#================================================= -# CHECK IF THE APP CAN BE INSTALLED WITH THESE ARGS -#================================================= -#REMOVEME? ynh_script_progression --message="Validating installation parameters..." --weight=1 - -#REMOVEME? install_dir=/var/www/$app -#REMOVEME? test ! -e "$install_dir" || ynh_die --message="This path already contains a folder" - -# Register (book) web path -#REMOVEME? ynh_webpath_register --app=$app --domain=$domain --path=$path - -#================================================= -# STORE SETTINGS FROM MANIFEST -#================================================= -#REMOVEME? ynh_script_progression --message="Storing installation settings..." --weight=1 - -#REMOVEME? ynh_app_setting_set --app=$app --key=domain --value=$domain -#REMOVEME? ynh_app_setting_set --app=$app --key=path --value=$path -#REMOVEME? ynh_app_setting_set --app=$app --key=admin --value=$admin -#REMOVEME? ynh_app_setting_set --app=$app --key=password --value=$password - #================================================= # STANDARD MODIFICATIONS #================================================= # INSTALL DEPENDENCIES #================================================= -#REMOVEME? ynh_script_progression --message="Installing dependencies..." --weight=15 - -#REMOVEME? ynh_install_app_dependencies $pkg_dependencies +ynh_script_progression --message="Installing dependencies..." --weight=15 #install locale (nginx will restart at the end of the install) for i in $lang ; do @@ -65,38 +23,18 @@ done locale-gen -#================================================= -# CREATE DEDICATED USER -#================================================= -#REMOVEME? ynh_script_progression --message="Configuring system user..." - -# Create a system user -#REMOVEME? ynh_system_user_create --username=$app --home_dir="$install_dir" - -#================================================= -# CREATE A MYSQL DATABASE -#================================================= -#REMOVEME? ynh_script_progression --message="Creating a MySQL database..." - -#REMOVEME? db_name=$(ynh_sanitize_dbid --db_name=$app) -#REMOVEME? db_user=$db_name -#REMOVEME? ynh_app_setting_set --app=$app --key=db_name --value=$db_name -#REMOVEME? ynh_mysql_setup_db --db_user=$db_user --db_name=$db_name - #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE #================================================= ynh_script_progression --message="Setting up source files..." --weight=5 -#REMOVEME? ynh_app_setting_set --app=$app --key=install_dir --value=$install_dir # Download, check integrity, uncompress and patch the source from app.src ynh_setup_source --dest_dir="$install_dir" ynh_add_config --template="../conf/index_source.php" --destination="$install_dir/www/index.php" -#REMOVEME? ynh_secure_remove --file="$install_dir/www/admin.php" +ynh_secure_remove --file="$install_dir/www/admin.php" ln -s $install_dir/lib $install_dir/www/lib -chmod 750 "$install_dir" chmod -R o-rwx "$install_dir" chown -R $app:www-data "$install_dir" @@ -149,28 +87,6 @@ ynh_add_config --template="../conf/emailpoubelle.cron" --destination="/etc/cron. chown root:root /etc/cron.d/$app chmod 644 /etc/cron.d/$app -#================================================= -# GENERIC FINALIZATION -#================================================= -# SETUP SSOWAT -#================================================= -#REMOVEME? ynh_script_progression --message="Configuring permissions..." - -# Make app public if necessary -#REMOVEME? if [ $is_public -eq 1 ] -then - # Everyone can access the app. - # The "main" permission is automatically created before the install script. -#REMOVEME? ynh_permission_update --permission="main" --add="visitors" -fi - -#================================================= -# RELOAD NGINX -#================================================= -#REMOVEME? ynh_script_progression --message="Reloading NGINX web server..." - -#REMOVEME? ynh_systemd_action --service_name=nginx --action=reload - #================================================= # END OF SCRIPT #================================================= diff --git a/scripts/remove b/scripts/remove index 3abeaf8..7b738d9 100644 --- a/scripts/remove +++ b/scripts/remove @@ -9,37 +9,6 @@ source _common.sh source /usr/share/yunohost/helpers -#================================================= -# LOAD SETTINGS -#================================================= -#REMOVEME? ynh_script_progression --message="Loading installation settings..." - -#REMOVEME? app=$YNH_APP_INSTANCE_NAME - -#REMOVEME? domain=$(ynh_app_setting_get --app=$app --key=domain) -#REMOVEME? db_name=$(ynh_app_setting_get --app=$app --key=db_name) -#REMOVEME? db_user=$db_name -#REMOVEME? #REMOVEME? install_dir=$(ynh_app_setting_get --app=$app --key=install_dir) - -#================================================= -# STANDARD REMOVE -#================================================= -# REMOVE THE MYSQL DATABASE -#================================================= -#REMOVEME? ynh_script_progression --message="Removing the MySQL database..." - -# Remove a database if it exists, along with the associated user -#REMOVEME? ynh_mysql_remove_db --db_user=$db_user --db_name=$db_name - -#================================================= -# REMOVE APP MAIN DIR -#================================================= -#REMOVEME? ynh_script_progression --message="Removing app main directory..." - -# Remove the app directory securely -#REMOVEME? ynh_secure_remove --file="$install_dir" - - #================================================= # REMOVE NGINX CONFIGURATION #================================================= @@ -56,14 +25,6 @@ ynh_script_progression --message="Removing PHP-FPM configuration..." # Remove the dedicated PHP-FPM config ynh_remove_fpm_config -#================================================= -# REMOVE DEPENDENCIES -#================================================= -#REMOVEME? ynh_script_progression --message="Removing dependencies..." - -# Remove metapackage and its dependencies -#REMOVEME? ynh_remove_app_dependencies - #================================================= # SPECIFIC REMOVE #================================================= @@ -81,16 +42,6 @@ ynh_secure_remove --file="/usr/share/yunohost/hooks/conf_regen/98-postfix_emailp yunohost tools regen-conf postfix ynh_systemd_action --service_name=postfix --action=reload -#================================================= -# GENERIC FINALIZATION -#================================================= -# REMOVE DEDICATED USER -#================================================= -#REMOVEME? ynh_script_progression --message="Removing the dedicated system user..." - -# Delete a system user -#REMOVEME? ynh_system_user_delete --username=$app - #================================================= # END OF SCRIPT #================================================= diff --git a/scripts/restore b/scripts/restore index 64e4295..249127d 100644 --- a/scripts/restore +++ b/scripts/restore @@ -10,45 +10,6 @@ source ../settings/scripts/_common.sh source /usr/share/yunohost/helpers -#================================================= -# MANAGE SCRIPT FAILURE -#================================================= - -# Exit if an error occurs during the execution of the script -#REMOVEME? ynh_abort_if_errors - -#================================================= -# LOAD SETTINGS -#================================================= -#REMOVEME? ynh_script_progression --message="Loading installation settings..." --weight=1 - -#REMOVEME? app=$YNH_APP_INSTANCE_NAME - -#REMOVEME? domain=$(ynh_app_setting_get --app=$app --key=domain) -#REMOVEME? path=$(ynh_app_setting_get --app=$app --key=path) -#REMOVEME? #REMOVEME? install_dir=$(ynh_app_setting_get --app=$app --key=install_dir) -#REMOVEME? db_name=$(ynh_app_setting_get --app=$app --key=db_name) -#REMOVEME? db_user=$db_name -#REMOVEME? phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) - -#================================================= -# CHECK IF THE APP CAN BE RESTORED -#================================================= -#REMOVEME? ynh_script_progression --message="Validating restoration parameters..." --weight=1 - -#REMOVEME? test ! -d $install_dir \ - || ynh_die --message="There is already a directory: $install_dir " - -#================================================= -# STANDARD RESTORATION STEPS -#================================================= -# RECREATE THE DEDICATED USER -#================================================= -#REMOVEME? ynh_script_progression --message="Recreating the dedicated system user..." - -# Create the dedicated user (if not existing) -#REMOVEME? ynh_system_user_create --username=$app --home_dir="$install_dir" - #================================================= # RESTORE THE APP MAIN DIR #================================================= @@ -56,7 +17,6 @@ ynh_script_progression --message="Restoring the app main directory..." --weight= ynh_restore_file --origin_path="$install_dir" -chmod 750 "$install_dir" chmod -R o-rwx "$install_dir" chown -R $app:www-data "$install_dir" @@ -65,10 +25,7 @@ chown -R $app:www-data "$install_dir" #================================================= # REINSTALL DEPENDENCIES #================================================= -#REMOVEME? ynh_script_progression --message="Reinstalling dependencies..." --weight=15 - -# Define and install dependencies -#REMOVEME? ynh_install_app_dependencies $pkg_dependencies +ynh_script_progression --message="Reinstalling dependencies..." --weight=15 #Check & regen local for i in $lang ; do @@ -93,10 +50,8 @@ ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf" #================================================= # RESTORE THE MYSQL DATABASE #================================================= -#REMOVEME? ynh_script_progression --message="Restoring the MySQL database..." --weight=1 +ynh_script_progression --message="Restoring the MySQL database..." --weight=1 -#REMOVEME? db_pwd=$(ynh_app_setting_get --app=$app --key=mysqlpwd) -#REMOVEME? ynh_mysql_setup_db --db_user=$db_user --db_name=$db_name --db_pwd=$db_pwd ynh_mysql_connect_as --user=$db_user --password=$db_pwd --database=$db_name < ./db.sql #================================================= diff --git a/scripts/upgrade b/scripts/upgrade index d0be34a..1aba0b5 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -9,87 +9,12 @@ source _common.sh source /usr/share/yunohost/helpers -#================================================= -# LOAD SETTINGS -#================================================= -#REMOVEME? ynh_script_progression --message="Loading installation settings..." - -#REMOVEME? app=$YNH_APP_INSTANCE_NAME - -#REMOVEME? domain=$(ynh_app_setting_get --app=$app --key=domain) -#REMOVEME? path=$(ynh_app_setting_get --app=$app --key=path) -#REMOVEME? admin=$(ynh_app_setting_get --app=$app --key=admin) -#REMOVEME? #REMOVEME? install_dir=$(ynh_app_setting_get --app=$app --key=install_dir) -#REMOVEME? db_name=$(ynh_app_setting_get --app=$app --key=db_name) -#REMOVEME? db_user=$db_name -#REMOVEME? db_pwd=$(ynh_app_setting_get --app=$app --key=mysqlpwd) -#REMOVEME? password=$(ynh_app_setting_get --app=$app --key=password) - #================================================= # CHECK VERSION #================================================= -ynh_script_progression --message="Checking version..." upgrade_type=$(ynh_check_app_version_changed) -#================================================= -# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP -#================================================= -#REMOVEME? ynh_script_progression --message="Backing up the app before upgrading (may take a while)..." - -# Backup the current version of the app -#REMOVEME? ynh_backup_before_upgrade -#REMOVEME? ynh_clean_setup () { - # Restore it if the upgrade fails -#REMOVEME? ynh_restore_upgradebackup -} -# Exit if an error occurs during the execution of the script -#REMOVEME? ynh_abort_if_errors - -#================================================= -# STANDARD UPGRADE STEPS -#================================================= -# ENSURE DOWNWARD COMPATIBILITY -#================================================= -ynh_script_progression --message="Ensuring downward compatibility..." - -# Cleaning legacy permissions -#REMOVEME? if ynh_legacy_permissions_exists; then -#REMOVEME? ynh_legacy_permissions_delete_all - - ynh_app_setting_delete --app=$app --key=is_public -fi - -# If db_name doesn't exist, create it -if [ -z "$db_name" ]; then - db_name=$(ynh_sanitize_dbid --db_name=$app) -#REMOVEME? ynh_app_setting_set --app=$app --key=db_name --value=$db_name -fi - -# If install_dir doesn't exist, create it -if [ -z "$install_dir" ]; then -#REMOVEME? install_dir=/var/www/$app -#REMOVEME? ynh_app_setting_set --app=$app --key=install_dir --value=$install_dir -fi - -if [ -z $db_pwd ]; then - db_pwd=$(grep DBPASS $install_dir/conf.php | cut -d"'" -f4) -#REMOVEME? ynh_app_setting_set --app=$app --key=mysqlpwd --value=$db_pwd -fi - -if [ -z $password ]; then - password=$(grep ADMIN_PASSWORD $install_dir/conf.php | cut -d"'" -f4) -#REMOVEME? ynh_app_setting_set --app=$app --key=password --value=$password -fi - -#================================================= -# CREATE DEDICATED USER -#================================================= -#REMOVEME? ynh_script_progression --message="Making sure dedicated system user exists..." - -# Create a dedicated user (if not existing) -#REMOVEME? ynh_system_user_create --username=$app --home_dir="$install_dir" - #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE #================================================= @@ -101,22 +26,14 @@ then # Download, check integrity, uncompress and patch the source from app.src ynh_setup_source --dest_dir="$install_dir" --keep="conf.php www/index.php" ynh_add_config --template="../conf/index_source.php" --destination="$install_dir/www/index.php" -#REMOVEME? ynh_secure_remove --file="$install_dir/www/admin.php" + ynh_secure_remove --file="$install_dir/www/admin.php" ln -s $install_dir/lib $install_dir/www/lib fi -chmod 750 "$install_dir" chmod -R o-rwx "$install_dir" chown -R $app:www-data "$install_dir" -#================================================= -# UPGRADE DEPENDENCIES -#================================================= -#REMOVEME? ynh_script_progression --message="Upgrading dependencies..." - -#REMOVEME? ynh_install_app_dependencies $pkg_dependencies - #================================================= # PHP-FPM CONFIGURATION #================================================= @@ -155,15 +72,6 @@ ynh_add_config --template="../conf/emailpoubelle.cron" --destination="/etc/cron. chown root:root /etc/cron.d/$app chmod 644 /etc/cron.d/$app -#================================================= -# GENERIC FINALIZATION -#================================================= -# RELOAD NGINX -#================================================= -#REMOVEME? ynh_script_progression --message="Reloading NGINX web server..." - -#REMOVEME? ynh_systemd_action --service_name=nginx --action=reload - #================================================= # END OF SCRIPT #================================================= diff --git a/tests.toml b/tests.toml new file mode 100644 index 0000000..e44f45d --- /dev/null +++ b/tests.toml @@ -0,0 +1,9 @@ +test_format = 1.0 + +[default] + + # ------------------------------- + # Commits to test upgrade from + # ------------------------------- + + test_upgrade_from.d83328c3e0d7dbbc317ded2924ac08ba3cc51d3e.name = "Upgrade from 2.0~ynh5" \ No newline at end of file From c6ad98412fe186757c1f249786ed590e02fca183 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Thu, 6 Apr 2023 13:52:18 +0200 Subject: [PATCH 04/27] v2 --- conf/emailpoubelle.cron | 2 +- conf/extra_php-fpm.conf | 4 + conf/nginx.conf | 2 +- conf/php-fpm.conf | 430 -------------------------------- doc/{DISCLAIMER.md => ADMIN.md} | 0 tests.toml | 2 +- 6 files changed, 7 insertions(+), 433 deletions(-) create mode 100644 conf/extra_php-fpm.conf delete mode 100644 conf/php-fpm.conf rename doc/{DISCLAIMER.md => ADMIN.md} (100%) diff --git a/conf/emailpoubelle.cron b/conf/emailpoubelle.cron index f6c4fd1..e84e545 100644 --- a/conf/emailpoubelle.cron +++ b/conf/emailpoubelle.cron @@ -1 +1 @@ -0 */2 * * * www-data cd $install_dir/www/; /usr/bin/php index.php > /dev/null 2>&1 \ No newline at end of file +0 */2 * * * www-data /usr/bin/php__PHPVERSION__ __INSTALL_DIR__/www/index.php > /dev/null 2>&1 \ No newline at end of file diff --git a/conf/extra_php-fpm.conf b/conf/extra_php-fpm.conf new file mode 100644 index 0000000..700c37c --- /dev/null +++ b/conf/extra_php-fpm.conf @@ -0,0 +1,4 @@ +; Additional php.ini defines, specific to this pool of workers. + +php_admin_value[upload_max_filesize] = 50M +php_admin_value[post_max_size] = 50M diff --git a/conf/nginx.conf b/conf/nginx.conf index a689f75..1f48d5c 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -2,7 +2,7 @@ location __PATH__/ { # Path to source - alias __INSTALL_DIR__/www/ ; + alias __INSTALL_DIR__/www/; index index.php; diff --git a/conf/php-fpm.conf b/conf/php-fpm.conf deleted file mode 100644 index c487766..0000000 --- a/conf/php-fpm.conf +++ /dev/null @@ -1,430 +0,0 @@ -; Start a new pool named 'www'. -; the variable $pool can be used in any directive and will be replaced by the -; pool name ('www' here) -[__NAMETOCHANGE__] - -; Per pool prefix -; It only applies on the following directives: -; - 'access.log' -; - 'slowlog' -; - 'listen' (unixsocket) -; - 'chroot' -; - 'chdir' -; - 'php_values' -; - 'php_admin_values' -; When not set, the global prefix (or /usr) applies instead. -; Note: This directive can also be relative to the global prefix. -; Default Value: none -;prefix = /path/to/pools/$pool - -; Unix user/group of processes -; Note: The user is mandatory. If the group is not set, the default user's group -; will be used. -user = __USER__ -group = __USER__ - -; The address on which to accept FastCGI requests. -; Valid syntaxes are: -; 'ip.add.re.ss:port' - to listen on a TCP socket to a specific IPv4 address on -; a specific port; -; '[ip:6:addr:ess]:port' - to listen on a TCP socket to a specific IPv6 address on -; a specific port; -; 'port' - to listen on a TCP socket to all addresses -; (IPv6 and IPv4-mapped) on a specific port; -; '/path/to/unix/socket' - to listen on a unix socket. -; Note: This value is mandatory. -listen = /var/run/php/php__PHPVERSION__-fpm-__NAMETOCHANGE__.sock - -; Set listen(2) backlog. -; Default Value: 511 (-1 on FreeBSD and OpenBSD) -;listen.backlog = 511 - -; Set permissions for unix socket, if one is used. In Linux, read/write -; permissions must be set in order to allow connections from a web server. Many -; BSD-derived systems allow connections regardless of permissions. -; Default Values: user and group are set as the running user -; mode is set to 0660 -listen.owner = www-data -listen.group = www-data -;listen.mode = 0660 -; When POSIX Access Control Lists are supported you can set them using -; these options, value is a comma separated list of user/group names. -; When set, listen.owner and listen.group are ignored -;listen.acl_users = -;listen.acl_groups = - -; List of addresses (IPv4/IPv6) of FastCGI clients which are allowed to connect. -; Equivalent to the FCGI_WEB_SERVER_ADDRS environment variable in the original -; PHP FCGI (5.2.2+). Makes sense only with a tcp listening socket. Each address -; must be separated by a comma. If this value is left blank, connections will be -; accepted from any ip address. -; Default Value: any -;listen.allowed_clients = 127.0.0.1 - -; Specify the nice(2) priority to apply to the pool processes (only if set) -; The value can vary from -19 (highest priority) to 20 (lower priority) -; Note: - It will only work if the FPM master process is launched as root -; - The pool processes will inherit the master process priority -; unless it specified otherwise -; Default Value: no set -; process.priority = -19 - -; Set the process dumpable flag (PR_SET_DUMPABLE prctl) even if the process user -; or group is differrent than the master process user. It allows to create process -; core dump and ptrace the process for the pool user. -; Default Value: no -; process.dumpable = yes - -; Choose how the process manager will control the number of child processes. -; Possible Values: -; static - a fixed number (pm.max_children) of child processes; -; dynamic - the number of child processes are set dynamically based on the -; following directives. With this process management, there will be -; always at least 1 children. -; pm.max_children - the maximum number of children that can -; be alive at the same time. -; pm.start_servers - the number of children created on startup. -; pm.min_spare_servers - the minimum number of children in 'idle' -; state (waiting to process). If the number -; of 'idle' processes is less than this -; number then some children will be created. -; pm.max_spare_servers - the maximum number of children in 'idle' -; state (waiting to process). If the number -; of 'idle' processes is greater than this -; number then some children will be killed. -; ondemand - no children are created at startup. Children will be forked when -; new requests will connect. The following parameter are used: -; pm.max_children - the maximum number of children that -; can be alive at the same time. -; pm.process_idle_timeout - The number of seconds after which -; an idle process will be killed. -; Note: This value is mandatory. -pm = dynamic - -; The number of child processes to be created when pm is set to 'static' and the -; maximum number of child processes when pm is set to 'dynamic' or 'ondemand'. -; This value sets the limit on the number of simultaneous requests that will be -; served. Equivalent to the ApacheMaxClients directive with mpm_prefork. -; Equivalent to the PHP_FCGI_CHILDREN environment variable in the original PHP -; CGI. The below defaults are based on a server without much resources. Don't -; forget to tweak pm.* to fit your needs. -; Note: Used when pm is set to 'static', 'dynamic' or 'ondemand' -; Note: This value is mandatory. -pm.max_children = 5 - -; The number of child processes created on startup. -; Note: Used only when pm is set to 'dynamic' -; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2 -pm.start_servers = 2 - -; The desired minimum number of idle server processes. -; Note: Used only when pm is set to 'dynamic' -; Note: Mandatory when pm is set to 'dynamic' -pm.min_spare_servers = 1 - -; The desired maximum number of idle server processes. -; Note: Used only when pm is set to 'dynamic' -; Note: Mandatory when pm is set to 'dynamic' -pm.max_spare_servers = 3 - -; The number of seconds after which an idle process will be killed. -; Note: Used only when pm is set to 'ondemand' -; Default Value: 10s -;pm.process_idle_timeout = 10s; - -; The number of requests each child process should execute before respawning. -; This can be useful to work around memory leaks in 3rd party libraries. For -; endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS. -; Default Value: 0 -;pm.max_requests = 500 - -; The URI to view the FPM status page. If this value is not set, no URI will be -; recognized as a status page. It shows the following informations: -; pool - the name of the pool; -; process manager - static, dynamic or ondemand; -; start time - the date and time FPM has started; -; start since - number of seconds since FPM has started; -; accepted conn - the number of request accepted by the pool; -; listen queue - the number of request in the queue of pending -; connections (see backlog in listen(2)); -; max listen queue - the maximum number of requests in the queue -; of pending connections since FPM has started; -; listen queue len - the size of the socket queue of pending connections; -; idle processes - the number of idle processes; -; active processes - the number of active processes; -; total processes - the number of idle + active processes; -; max active processes - the maximum number of active processes since FPM -; has started; -; max children reached - number of times, the process limit has been reached, -; when pm tries to start more children (works only for -; pm 'dynamic' and 'ondemand'); -; Value are updated in real time. -; Example output: -; pool: www -; process manager: static -; start time: 01/Jul/2011:17:53:49 +0200 -; start since: 62636 -; accepted conn: 190460 -; listen queue: 0 -; max listen queue: 1 -; listen queue len: 42 -; idle processes: 4 -; active processes: 11 -; total processes: 15 -; max active processes: 12 -; max children reached: 0 -; -; By default the status page output is formatted as text/plain. Passing either -; 'html', 'xml' or 'json' in the query string will return the corresponding -; output syntax. Example: -; http://www.foo.bar/status -; http://www.foo.bar/status?json -; http://www.foo.bar/status?html -; http://www.foo.bar/status?xml -; -; By default the status page only outputs short status. Passing 'full' in the -; query string will also return status for each pool process. -; Example: -; http://www.foo.bar/status?full -; http://www.foo.bar/status?json&full -; http://www.foo.bar/status?html&full -; http://www.foo.bar/status?xml&full -; The Full status returns for each process: -; pid - the PID of the process; -; state - the state of the process (Idle, Running, ...); -; start time - the date and time the process has started; -; start since - the number of seconds since the process has started; -; requests - the number of requests the process has served; -; request duration - the duration in µs of the requests; -; request method - the request method (GET, POST, ...); -; request URI - the request URI with the query string; -; content length - the content length of the request (only with POST); -; user - the user (PHP_AUTH_USER) (or '-' if not set); -; script - the main script called (or '-' if not set); -; last request cpu - the %cpu the last request consumed -; it's always 0 if the process is not in Idle state -; because CPU calculation is done when the request -; processing has terminated; -; last request memory - the max amount of memory the last request consumed -; it's always 0 if the process is not in Idle state -; because memory calculation is done when the request -; processing has terminated; -; If the process is in Idle state, then informations are related to the -; last request the process has served. Otherwise informations are related to -; the current request being served. -; Example output: -; ************************ -; pid: 31330 -; state: Running -; start time: 01/Jul/2011:17:53:49 +0200 -; start since: 63087 -; requests: 12808 -; request duration: 1250261 -; request method: GET -; request URI: /test_mem.php?N=10000 -; content length: 0 -; user: - -; script: /home/fat/web/docs/php/test_mem.php -; last request cpu: 0.00 -; last request memory: 0 -; -; Note: There is a real-time FPM status monitoring sample web page available -; It's available in: /usr/share/php/7.0/fpm/status.html -; -; Note: The value must start with a leading slash (/). The value can be -; anything, but it may not be a good idea to use the .php extension or it -; may conflict with a real PHP file. -; Default Value: not set -;pm.status_path = /status - -; The ping URI to call the monitoring page of FPM. If this value is not set, no -; URI will be recognized as a ping page. This could be used to test from outside -; that FPM is alive and responding, or to -; - create a graph of FPM availability (rrd or such); -; - remove a server from a group if it is not responding (load balancing); -; - trigger alerts for the operating team (24/7). -; Note: The value must start with a leading slash (/). The value can be -; anything, but it may not be a good idea to use the .php extension or it -; may conflict with a real PHP file. -; Default Value: not set -;ping.path = /ping - -; This directive may be used to customize the response of a ping request. The -; response is formatted as text/plain with a 200 response code. -; Default Value: pong -;ping.response = pong - -; The access log file -; Default: not set -;access.log = log/$pool.access.log - -; The access log format. -; The following syntax is allowed -; %%: the '%' character -; %C: %CPU used by the request -; it can accept the following format: -; - %{user}C for user CPU only -; - %{system}C for system CPU only -; - %{total}C for user + system CPU (default) -; %d: time taken to serve the request -; it can accept the following format: -; - %{seconds}d (default) -; - %{miliseconds}d -; - %{mili}d -; - %{microseconds}d -; - %{micro}d -; %e: an environment variable (same as $_ENV or $_SERVER) -; it must be associated with embraces to specify the name of the env -; variable. Some exemples: -; - server specifics like: %{REQUEST_METHOD}e or %{SERVER_PROTOCOL}e -; - HTTP headers like: %{HTTP_HOST}e or %{HTTP_USER_AGENT}e -; %f: script filename -; %l: content-length of the request (for POST request only) -; %m: request method -; %M: peak of memory allocated by PHP -; it can accept the following format: -; - %{bytes}M (default) -; - %{kilobytes}M -; - %{kilo}M -; - %{megabytes}M -; - %{mega}M -; %n: pool name -; %o: output header -; it must be associated with embraces to specify the name of the header: -; - %{Content-Type}o -; - %{X-Powered-By}o -; - %{Transfert-Encoding}o -; - .... -; %p: PID of the child that serviced the request -; %P: PID of the parent of the child that serviced the request -; %q: the query string -; %Q: the '?' character if query string exists -; %r: the request URI (without the query string, see %q and %Q) -; %R: remote IP address -; %s: status (response code) -; %t: server time the request was received -; it can accept a strftime(3) format: -; %d/%b/%Y:%H:%M:%S %z (default) -; The strftime(3) format must be encapsuled in a %{}t tag -; e.g. for a ISO8601 formatted timestring, use: %{%Y-%m-%dT%H:%M:%S%z}t -; %T: time the log has been written (the request has finished) -; it can accept a strftime(3) format: -; %d/%b/%Y:%H:%M:%S %z (default) -; The strftime(3) format must be encapsuled in a %{}t tag -; e.g. for a ISO8601 formatted timestring, use: %{%Y-%m-%dT%H:%M:%S%z}t -; %u: remote user -; -; Default: "%R - %u %t \"%m %r\" %s" -;access.format = "%R - %u %t \"%m %r%Q%q\" %s %f %{mili}d %{kilo}M %C%%" - -; The log file for slow requests -; Default Value: not set -; Note: slowlog is mandatory if request_slowlog_timeout is set -;slowlog = log/$pool.log.slow - -; The timeout for serving a single request after which a PHP backtrace will be -; dumped to the 'slowlog' file. A value of '0s' means 'off'. -; Available units: s(econds)(default), m(inutes), h(ours), or d(ays) -; Default Value: 0 -;request_slowlog_timeout = 0 - -; The timeout for serving a single request after which the worker process will -; be killed. This option should be used when the 'max_execution_time' ini option -; does not stop script execution for some reason. A value of '0' means 'off'. -; Available units: s(econds)(default), m(inutes), h(ours), or d(ays) -; Default Value: 0 -request_terminate_timeout = 1d - -; Set open file descriptor rlimit. -; Default Value: system defined value -;rlimit_files = 1024 - -; Set max core size rlimit. -; Possible Values: 'unlimited' or an integer greater or equal to 0 -; Default Value: system defined value -;rlimit_core = 0 - -; Chroot to this directory at the start. This value must be defined as an -; absolute path. When this value is not set, chroot is not used. -; Note: you can prefix with '$prefix' to chroot to the pool prefix or one -; of its subdirectories. If the pool prefix is not set, the global prefix -; will be used instead. -; Note: chrooting is a great security feature and should be used whenever -; possible. However, all PHP paths will be relative to the chroot -; (error_log, sessions.save_path, ...). -; Default Value: not set -;chroot = - -; Chdir to this directory at the start. -; Note: relative path can be used. -; Default Value: current directory or / when chroot -chdir = __INSTALL_DIR__/www - -; Redirect worker stdout and stderr into main error log. If not set, stdout and -; stderr will be redirected to /dev/null according to FastCGI specs. -; Note: on highloaded environement, this can cause some delay in the page -; process time (several ms). -; Default Value: no -;catch_workers_output = yes - -; Clear environment in FPM workers -; Prevents arbitrary environment variables from reaching FPM worker processes -; by clearing the environment in workers before env vars specified in this -; pool configuration are added. -; Setting to "no" will make all environment variables available to PHP code -; via getenv(), $_ENV and $_SERVER. -; Default Value: yes -;clear_env = no - -; Limits the extensions of the main script FPM will allow to parse. This can -; prevent configuration mistakes on the web server side. You should only limit -; FPM to .php extensions to prevent malicious users to use other extensions to -; execute php code. -; Note: set an empty value to allow all extensions. -; Default Value: .php -;security.limit_extensions = .php .php3 .php4 .php5 .php7 - -; Pass environment variables like LD_LIBRARY_PATH. All $VARIABLEs are taken from -; the current environment. -; Default Value: clean env -;env[HOSTNAME] = $HOSTNAME -;env[PATH] = /usr/local/bin:/usr/bin:/bin -;env[TMP] = /tmp -;env[TMPDIR] = /tmp -;env[TEMP] = /tmp - -; Additional php.ini defines, specific to this pool of workers. These settings -; overwrite the values previously defined in the php.ini. The directives are the -; same as the PHP SAPI: -; php_value/php_flag - you can set classic ini defines which can -; be overwritten from PHP call 'ini_set'. -; php_admin_value/php_admin_flag - these directives won't be overwritten by -; PHP call 'ini_set' -; For php_*flag, valid values are on, off, 1, 0, true, false, yes or no. - -; Defining 'extension' will load the corresponding shared extension from -; extension_dir. Defining 'disable_functions' or 'disable_classes' will not -; overwrite previously defined php.ini values, but will append the new value -; instead. - -; Note: path INI options can be relative and will be expanded with the prefix -; (pool, global or /usr) - -; Default Value: nothing is defined by default except the values in php.ini and -; specified at startup with the -d argument -;php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f www@my.domain.com -;php_flag[display_errors] = off -;php_admin_value[error_log] = /var/log/fpm-php.www.log -;php_admin_flag[log_errors] = on -;php_admin_value[memory_limit] = 32M - -; Common values to change to increase file upload limit -; php_admin_value[upload_max_filesize] = 50M -; php_admin_value[post_max_size] = 50M -; php_admin_flag[mail.add_x_header] = Off - -; Other common parameters -; php_admin_value[max_execution_time] = 600 -; php_admin_value[max_input_time] = 300 -; php_admin_value[memory_limit] = 256M -; php_admin_flag[short_open_tag] = On diff --git a/doc/DISCLAIMER.md b/doc/ADMIN.md similarity index 100% rename from doc/DISCLAIMER.md rename to doc/ADMIN.md diff --git a/tests.toml b/tests.toml index e44f45d..85a0f0b 100644 --- a/tests.toml +++ b/tests.toml @@ -6,4 +6,4 @@ test_format = 1.0 # Commits to test upgrade from # ------------------------------- - test_upgrade_from.d83328c3e0d7dbbc317ded2924ac08ba3cc51d3e.name = "Upgrade from 2.0~ynh5" \ No newline at end of file + test_upgrade_from.46ef0790628d7b71b07519d352725dbda4298454.name = "Upgrade from 2022.06.08~ynh1" \ No newline at end of file From 6a4761512d1031a682e45c94a2332b9863f496dc Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Thu, 6 Apr 2023 11:52:23 +0000 Subject: [PATCH 05/27] Auto-update README --- README.md | 7 ------- README_fr.md | 7 ------- 2 files changed, 14 deletions(-) diff --git a/README.md b/README.md index 04de041..9984019 100644 --- a/README.md +++ b/README.md @@ -26,13 +26,6 @@ All thanks to David. **Shipped version:** 2022.06.08~ynh1 **Demo:** https://poubelle.zici.fr -## Disclaimers / important information - -## WARNING - -Using this will cause to disable the Yunohost ldap aliases ! Once installed, you won't be able to use the aliasses settings that you can see when you modify your personnal settings in the SSOWAT pannel. -Of course, once uninstalled, everything get back to normal. - ## Documentation and resources * Official app website: diff --git a/README_fr.md b/README_fr.md index d8678c3..47bc2f1 100644 --- a/README_fr.md +++ b/README_fr.md @@ -26,13 +26,6 @@ All thanks to David. **Version incluse :** 2022.06.08~ynh1 **Démo :** https://poubelle.zici.fr -## Avertissements / informations importantes - -## WARNING - -Using this will cause to disable the Yunohost ldap aliases ! Once installed, you won't be able to use the aliasses settings that you can see when you modify your personnal settings in the SSOWAT pannel. -Of course, once uninstalled, everything get back to normal. - ## Documentations et ressources * Site officiel de l’app : From c241c41b2f447e82231dffacd9ffe3505a3229e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Thu, 6 Apr 2023 13:54:22 +0200 Subject: [PATCH 06/27] v2 --- conf/nginx.conf | 2 +- scripts/install | 2 +- scripts/upgrade | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/conf/nginx.conf b/conf/nginx.conf index 1f48d5c..4bf6109 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -7,7 +7,7 @@ location __PATH__/ { index index.php; # Common parameter to increase upload size limit in conjunction with dedicated php-fpm file - #client_max_body_size 50M; + client_max_body_size 50M; try_files $uri $uri/ index.php; location ~ [^/]\.php(/|$) { diff --git a/scripts/install b/scripts/install index 12ebe1e..826a18d 100644 --- a/scripts/install +++ b/scripts/install @@ -44,7 +44,7 @@ chown -R $app:www-data "$install_dir" ynh_script_progression --message="Configuring PHP-FPM..." # Create a dedicated PHP-FPM config -ynh_add_fpm_config +ynh_add_fpm_config --usage=low --footprint=low #================================================= # NGINX CONFIGURATION diff --git a/scripts/upgrade b/scripts/upgrade index 1aba0b5..3587262 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -40,7 +40,7 @@ chown -R $app:www-data "$install_dir" ynh_script_progression --message="Upgrading PHP-FPM configuration..." # Create a dedicated PHP-FPM config -ynh_add_fpm_config +ynh_add_fpm_config --usage=low --footprint=low #================================================= # NGINX CONFIGURATION From a1f4ed3b0c8881a26b5c649ca4f45dd529e79e7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Thu, 6 Apr 2023 13:57:26 +0200 Subject: [PATCH 07/27] Update manifest.toml --- manifest.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/manifest.toml b/manifest.toml index d694258..ae36795 100644 --- a/manifest.toml +++ b/manifest.toml @@ -45,8 +45,8 @@ ram.runtime = "50M" [resources] [resources.sources.main] - url = "https://framagit.org/kepon/emailPoubellePhp/-/archive/d25ae5b243f5dbd8c2b023b80b6406c110843586/emailPoubellePhp-d25ae5b243f5dbd8c2b023b80b6406c110843586.tar.gz" - sha256 = "4b96d268ecf81684a91c31416b16f2b79a7409416dfd67cdd720d4d13b2ae1d8" + url = "https://framagit.org/kepon/emailPoubellePhp/-/archive/51a92bf46f4ea9d7ed71e3362db5d2b9ca3def5e/emailPoubellePhp-51a92bf46f4ea9d7ed71e3362db5d2b9ca3def5e.tar.gz" + sha256 = "ba9f0d3e27a6253cf2c4bbc91e8bb1f4adf0a287b253a640fc5506623fc50411" [resources.system_user] From 7104a637fe4c70fd8db54748da69c02563495071 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Thu, 6 Apr 2023 13:58:41 +0200 Subject: [PATCH 08/27] Update manifest.toml --- manifest.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/manifest.toml b/manifest.toml index ae36795..abb07d4 100644 --- a/manifest.toml +++ b/manifest.toml @@ -55,8 +55,8 @@ ram.runtime = "50M" [resources.permissions] main.url = "/" - [resources.packaging_format] - packages = "mariadb-server, php7.4-geoip, php7.4-cli" + [resources.apt] + packages = "mariadb-server, php8.0-geoip, php8.0-cli" [resources.database] type = "mysql" From 145f4a59afc39c04156898fd8d6c4baeb8f40b61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Thu, 6 Apr 2023 14:02:53 +0200 Subject: [PATCH 09/27] Update manifest.toml --- manifest.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.toml b/manifest.toml index abb07d4..8d78c6d 100644 --- a/manifest.toml +++ b/manifest.toml @@ -56,7 +56,7 @@ ram.runtime = "50M" main.url = "/" [resources.apt] - packages = "mariadb-server, php8.0-geoip, php8.0-cli" + packages = "mariadb-server, php7.4-geoip, php7.4-cli" [resources.database] type = "mysql" From 5a33feb58ac3952152a685ac7830088588c76a66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Thu, 6 Apr 2023 14:03:18 +0200 Subject: [PATCH 10/27] fix --- scripts/restore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/restore b/scripts/restore index 249127d..c718e9c 100644 --- a/scripts/restore +++ b/scripts/restore @@ -43,7 +43,7 @@ ynh_restore_file --origin_path="/etc/php/$phpversion/fpm/pool.d/$app.conf" #================================================= # RESTORE THE NGINX CONFIGURATION #================================================= -ynh_script_progression --message="Restoring the NGINX web server configuration..." --time --weight=1 +ynh_script_progression --message="Restoring the NGINX web server configuration..." --weight=1 ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf" From 9430b30396943d8bebd0d7099304b8d30e1ce492 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Thu, 6 Apr 2023 14:14:48 +0200 Subject: [PATCH 11/27] Create change_url --- scripts/change_url | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 scripts/change_url diff --git a/scripts/change_url b/scripts/change_url new file mode 100644 index 0000000..e69de29 From 7b55d40d3d53e04615d8416d16da9f1a2c2a4003 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Thu, 6 Apr 2023 14:36:04 +0200 Subject: [PATCH 12/27] fix --- scripts/install | 7 +++++++ scripts/upgrade | 1 + sources/hooks/conf_regen/98-postfix_emailpoubelle | 4 ++-- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/scripts/install b/scripts/install index 826a18d..5e09a50 100644 --- a/scripts/install +++ b/scripts/install @@ -9,6 +9,13 @@ source _common.sh source /usr/share/yunohost/helpers +#================================================= +# RETRIEVE ARGUMENTS FROM THE MANIFEST +#================================================= + +password=$YNH_APP_ARG_PASSWORD +ynh_app_setting_set --app=$app --key=password --value=$password + #================================================= # STANDARD MODIFICATIONS #================================================= diff --git a/scripts/upgrade b/scripts/upgrade index 3587262..fd0ec39 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -57,6 +57,7 @@ ynh_add_nginx_config #================================================= ynh_script_progression --message="Updating a configuration file..." +password=$(ynh_app_setting_get --app=$app --key=password) ynh_add_config --template="../conf/conf-dist.php" --destination="$install_dir/conf.php" chmod 400 "$install_dir/conf.php" diff --git a/sources/hooks/conf_regen/98-postfix_emailpoubelle b/sources/hooks/conf_regen/98-postfix_emailpoubelle index 7ea9506..d63208d 100644 --- a/sources/hooks/conf_regen/98-postfix_emailpoubelle +++ b/sources/hooks/conf_regen/98-postfix_emailpoubelle @@ -1,7 +1,7 @@ #!/bin/bash source /usr/share/yunohost/helpers -final_path=$(ynh_app_setting_get emailpoubelle final_path) +install_dir=$(ynh_app_setting_get --app=$app --key=install_dir) set -e @@ -14,7 +14,7 @@ do_pre_regen() { # FIXME : check this file actually exists to not crash when only running this # hook alone - sudo sed -e "s@^virtual_alias_maps\s*=\s*\(.*\)@virtual_alias_maps = hash:$final_path/var/virtual,\1@"\ + sudo sed -e "s@^virtual_alias_maps\s*=\s*\(.*\)@virtual_alias_maps = hash:$install_dir/var/virtual,\1@"\ -i $postfix_main_cf } From 8a1d300610c234c1f8999e91d440f35e6ba8c9ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Thu, 6 Apr 2023 14:45:12 +0200 Subject: [PATCH 13/27] cleaning --- check_process | 24 ------------------------ scripts/change_url | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 24 deletions(-) delete mode 100644 check_process diff --git a/check_process b/check_process deleted file mode 100644 index 4152b6e..0000000 --- a/check_process +++ /dev/null @@ -1,24 +0,0 @@ -;; Test complet - ; Manifest - domain="domain.tld" - path="/poubelle" - is_public=1 - admin="john" - password="1Strong-Password" - ; Checks - pkg_linter=1 - setup_sub_dir=1 - setup_root=1 - setup_nourl=0 - setup_private=1 - setup_public=1 - upgrade=1 - # 2.0~ynh5 - upgrade=1 from_commit=d83328c3e0d7dbbc317ded2924ac08ba3cc51d3e - backup_restore=1 - multi_instance=0 - port_already_use=0 - change_url=0 -;;; Options -Email= -Notification=none diff --git a/scripts/change_url b/scripts/change_url index e69de29..09f776b 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -0,0 +1,32 @@ +#!/bin/bash + +#================================================= +# GENERIC STARTING +#================================================= +# IMPORT GENERIC HELPERS +#================================================= + +source _common.sh +source /usr/share/yunohost/helpers + +#================================================= +# MODIFY URL IN NGINX CONF +#================================================= +ynh_script_progression --message="Updating NGINX web server configuration..." --weight=1 + +ynh_change_url_nginx_config + +#================================================= +# SPECIFIC MODIFICATIONS +#================================================= + +ynh_add_config --template="../conf/conf-dist.php" --destination="$install_dir/conf.php" + +chmod 400 "$install_dir/conf.php" +chown $app:$app "$install_dir/conf.php" + +#================================================= +# END OF SCRIPT +#================================================= + +ynh_script_progression --message="Change of URL completed for $app" --last From 3126149d0204924de901cab6254cee5292b68536 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Thu, 6 Apr 2023 14:47:55 +0200 Subject: [PATCH 14/27] Update 98-postfix_emailpoubelle --- sources/hooks/conf_regen/98-postfix_emailpoubelle | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/sources/hooks/conf_regen/98-postfix_emailpoubelle b/sources/hooks/conf_regen/98-postfix_emailpoubelle index d63208d..8688ed5 100644 --- a/sources/hooks/conf_regen/98-postfix_emailpoubelle +++ b/sources/hooks/conf_regen/98-postfix_emailpoubelle @@ -16,13 +16,10 @@ do_pre_regen() { sudo sed -e "s@^virtual_alias_maps\s*=\s*\(.*\)@virtual_alias_maps = hash:$install_dir/var/virtual,\1@"\ -i $postfix_main_cf - } do_post_regen() { - - regen_conf_files=$1 - + regen_conf_files=$1 } FORCE=${2:-0} From eabc89182a0d6b62f418a50bc8104af419b18a3f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Thu, 6 Apr 2023 15:09:24 +0200 Subject: [PATCH 15/27] Update tests.toml --- tests.toml | 2 -- 1 file changed, 2 deletions(-) diff --git a/tests.toml b/tests.toml index 85a0f0b..96b1075 100644 --- a/tests.toml +++ b/tests.toml @@ -5,5 +5,3 @@ test_format = 1.0 # ------------------------------- # Commits to test upgrade from # ------------------------------- - - test_upgrade_from.46ef0790628d7b71b07519d352725dbda4298454.name = "Upgrade from 2022.06.08~ynh1" \ No newline at end of file From b486cb7fd3c55767c666730b7f426a6dd1103ebd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Wed, 17 May 2023 08:39:05 +0200 Subject: [PATCH 16/27] Update manifest.toml --- manifest.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/manifest.toml b/manifest.toml index 8d78c6d..edd7a87 100644 --- a/manifest.toml +++ b/manifest.toml @@ -5,7 +5,7 @@ name = "EmailPoubelle" description.en = "Create throwable email address redirected to your real one" description.fr = "Créez des adresses email jetables qui redirigent les mails vers votre adresse réelle" -version = "2022.06.08~ynh1" +version = "2023.05.17~ynh1" maintainers = ["Krakinou"] @@ -16,7 +16,7 @@ demo = "https://poubelle.zici.fr" code = "https://framagit.org/kepon/emailPoubellePhp" [integration] -yunohost = ">= 11.1.17" +yunohost = ">= 11.1.19" architectures = "all" multi_instance = false ldap = false From a4f6d40229a964b15e00684bdfdf7169337f4523 Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Wed, 17 May 2023 06:39:10 +0000 Subject: [PATCH 17/27] Auto-update README --- README.md | 2 +- README_fr.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 9984019..92866e8 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,7 @@ EmailPoubelle (Trash email) is a script to create temporay email adresses that a All thanks to David. -**Shipped version:** 2022.06.08~ynh1 +**Shipped version:** 2023.05.17~ynh1 **Demo:** https://poubelle.zici.fr ## Documentation and resources diff --git a/README_fr.md b/README_fr.md index 47bc2f1..49d3fff 100644 --- a/README_fr.md +++ b/README_fr.md @@ -23,7 +23,7 @@ EmailPoubelle (Trash email) is a script to create temporay email adresses that a All thanks to David. -**Version incluse :** 2022.06.08~ynh1 +**Version incluse :** 2023.05.17~ynh1 **Démo :** https://poubelle.zici.fr ## Documentations et ressources From 376926e15377eed7efe51821e728e11321ce300d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Wed, 17 May 2023 08:39:31 +0200 Subject: [PATCH 18/27] Update manifest.toml --- manifest.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.toml b/manifest.toml index edd7a87..16e1bd8 100644 --- a/manifest.toml +++ b/manifest.toml @@ -56,7 +56,7 @@ ram.runtime = "50M" main.url = "/" [resources.apt] - packages = "mariadb-server, php7.4-geoip, php7.4-cli" + packages = "mariadb-server, php8.0-geoip, php8.0-cli" [resources.database] type = "mysql" From 7ad4ef6d87e64849789e57eef951f2534b548dea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Wed, 17 May 2023 08:46:11 +0200 Subject: [PATCH 19/27] Update manifest.toml --- manifest.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.toml b/manifest.toml index 16e1bd8..edd7a87 100644 --- a/manifest.toml +++ b/manifest.toml @@ -56,7 +56,7 @@ ram.runtime = "50M" main.url = "/" [resources.apt] - packages = "mariadb-server, php8.0-geoip, php8.0-cli" + packages = "mariadb-server, php7.4-geoip, php7.4-cli" [resources.database] type = "mysql" From 628d5a066864d452320b166de14bb78e3c4822db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Wed, 17 May 2023 09:11:33 +0200 Subject: [PATCH 20/27] Update tests.toml --- tests.toml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests.toml b/tests.toml index 96b1075..85a0f0b 100644 --- a/tests.toml +++ b/tests.toml @@ -5,3 +5,5 @@ test_format = 1.0 # ------------------------------- # Commits to test upgrade from # ------------------------------- + + test_upgrade_from.46ef0790628d7b71b07519d352725dbda4298454.name = "Upgrade from 2022.06.08~ynh1" \ No newline at end of file From 82acf670ff1eb5c86fc1415d5eda9d5a58387c0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Wed, 17 May 2023 09:12:31 +0200 Subject: [PATCH 21/27] Update manifest.toml --- manifest.toml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/manifest.toml b/manifest.toml index edd7a87..620c031 100644 --- a/manifest.toml +++ b/manifest.toml @@ -11,7 +11,6 @@ maintainers = ["Krakinou"] [upstream] license = "Beerware" -website = "https://forge.zici.fr/project/view/6" demo = "https://poubelle.zici.fr" code = "https://framagit.org/kepon/emailPoubellePhp" @@ -22,7 +21,7 @@ multi_instance = false ldap = false sso = false disk = "50M" -ram.build = "50M" +ram.build = "150M" ram.runtime = "50M" [install] From 03b9a5d41f08dbc10691e25c4e91aa1aefc345ac Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Wed, 17 May 2023 07:12:36 +0000 Subject: [PATCH 22/27] Auto-update README --- README.md | 1 - README_fr.md | 1 - 2 files changed, 2 deletions(-) diff --git a/README.md b/README.md index 92866e8..2ca24da 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,6 @@ All thanks to David. **Demo:** https://poubelle.zici.fr ## Documentation and resources -* Official app website: * Upstream app code repository: * YunoHost documentation for this app: * Report a bug: diff --git a/README_fr.md b/README_fr.md index 49d3fff..36e8c66 100644 --- a/README_fr.md +++ b/README_fr.md @@ -28,7 +28,6 @@ All thanks to David. **Démo :** https://poubelle.zici.fr ## Documentations et ressources -* Site officiel de l’app : * Dépôt de code officiel de l’app : * Documentation YunoHost pour cette app : * Signaler un bug : From 562bf9c5ae7b2e6a19607b394d067a1929bc9056 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Wed, 17 May 2023 09:14:33 +0200 Subject: [PATCH 23/27] fix --- doc/ADMIN.md | 4 ---- doc/DESCRIPTION.md | 6 +----- doc/PRE_INSTALL.md | 4 ++++ 3 files changed, 5 insertions(+), 9 deletions(-) delete mode 100644 doc/ADMIN.md create mode 100644 doc/PRE_INSTALL.md diff --git a/doc/ADMIN.md b/doc/ADMIN.md deleted file mode 100644 index 5a9d937..0000000 --- a/doc/ADMIN.md +++ /dev/null @@ -1,4 +0,0 @@ -## WARNING - -Using this will cause to disable the Yunohost ldap aliases ! Once installed, you won't be able to use the aliasses settings that you can see when you modify your personnal settings in the SSOWAT pannel. -Of course, once uninstalled, everything get back to normal. diff --git a/doc/DESCRIPTION.md b/doc/DESCRIPTION.md index 55f018b..4dbc601 100644 --- a/doc/DESCRIPTION.md +++ b/doc/DESCRIPTION.md @@ -1,5 +1 @@ -A Yunohost version of [Email Poubelle](http://www.mercereau.info/sortie-de-la-version-1-0-demailpoubelle-php-email-jetable-auto-hebergeable/) by David Mercereau. - -EmailPoubelle (Trash email) is a script to create temporay email adresses that aims to your real email address - -All thanks to David. +EmailPoubelle (Trash email) is a script to create temporay email adresses that aims to your real email address. diff --git a/doc/PRE_INSTALL.md b/doc/PRE_INSTALL.md new file mode 100644 index 0000000..3b980e8 --- /dev/null +++ b/doc/PRE_INSTALL.md @@ -0,0 +1,4 @@ +## WARNING + +Using this will cause to disable the YunoHost LDAP aliases! Once installed, you won't be able to use the aliasses settings that you can see when you modify your personnal settings in the SSOWAT pannel. +Of course, once uninstalled, everything get back to normal. From ec2515a3400b888e63ad7aa76a27ecb9f28818a2 Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Wed, 17 May 2023 07:14:45 +0000 Subject: [PATCH 24/27] Auto-update README --- README.md | 6 +----- README_fr.md | 6 +----- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 2ca24da..c1de673 100644 --- a/README.md +++ b/README.md @@ -16,11 +16,7 @@ If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/in ## Overview -A Yunohost version of [Email Poubelle](http://www.mercereau.info/sortie-de-la-version-1-0-demailpoubelle-php-email-jetable-auto-hebergeable/) by David Mercereau. - -EmailPoubelle (Trash email) is a script to create temporay email adresses that aims to your real email address - -All thanks to David. +EmailPoubelle (Trash email) is a script to create temporay email adresses that aims to your real email address. **Shipped version:** 2023.05.17~ynh1 diff --git a/README_fr.md b/README_fr.md index 36e8c66..bc5fa6b 100644 --- a/README_fr.md +++ b/README_fr.md @@ -16,11 +16,7 @@ Si vous n’avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) po ## Vue d’ensemble -A Yunohost version of [Email Poubelle](http://www.mercereau.info/sortie-de-la-version-1-0-demailpoubelle-php-email-jetable-auto-hebergeable/) by David Mercereau. - -EmailPoubelle (Trash email) is a script to create temporay email adresses that aims to your real email address - -All thanks to David. +EmailPoubelle (Trash email) is a script to create temporay email adresses that aims to your real email address. **Version incluse :** 2023.05.17~ynh1 From 1c84869f575d1305ca3ed113f7c3b6bf8f664590 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Wed, 17 May 2023 09:16:33 +0200 Subject: [PATCH 25/27] fix --- doc/DESCRIPTION_fr.md | 1 + manifest.toml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 doc/DESCRIPTION_fr.md diff --git a/doc/DESCRIPTION_fr.md b/doc/DESCRIPTION_fr.md new file mode 100644 index 0000000..b824c8b --- /dev/null +++ b/doc/DESCRIPTION_fr.md @@ -0,0 +1 @@ +EmailPoubelle est un script pour créer des adresses e-mail temporaires qui visent votre véritable adresse e-mail. \ No newline at end of file diff --git a/manifest.toml b/manifest.toml index 620c031..75aa591 100644 --- a/manifest.toml +++ b/manifest.toml @@ -55,7 +55,7 @@ ram.runtime = "50M" main.url = "/" [resources.apt] - packages = "mariadb-server, php7.4-geoip, php7.4-cli" + packages = "mariadb-server, php7.4-geoip, php7.4-cli, php7.4-mysql" [resources.database] type = "mysql" From 6e56e69693a698ae0297423127eac235b94e7378 Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Wed, 17 May 2023 07:16:43 +0000 Subject: [PATCH 26/27] Auto-update README --- README_fr.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README_fr.md b/README_fr.md index bc5fa6b..260c586 100644 --- a/README_fr.md +++ b/README_fr.md @@ -16,8 +16,7 @@ Si vous n’avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) po ## Vue d’ensemble -EmailPoubelle (Trash email) is a script to create temporay email adresses that aims to your real email address. - +EmailPoubelle est un script pour créer des adresses e-mail temporaires qui visent votre véritable adresse e-mail. **Version incluse :** 2023.05.17~ynh1 From a5e15d964673b3987b8961551942aa44965a4fe9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Wed, 17 May 2023 09:18:14 +0200 Subject: [PATCH 27/27] Create PRE_INSTALL_fr.md --- doc/PRE_INSTALL_fr.md | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 doc/PRE_INSTALL_fr.md diff --git a/doc/PRE_INSTALL_fr.md b/doc/PRE_INSTALL_fr.md new file mode 100644 index 0000000..b243014 --- /dev/null +++ b/doc/PRE_INSTALL_fr.md @@ -0,0 +1,4 @@ +## AVERTISSEMENT + +L'utiliser entraînera la désactivation des alias LDAP YunoHost ! Une fois installé, vous ne pourrez plus utiliser les paramètres d'alias que vous pouvez voir lorsque vous modifiez vos paramètres personnels dans le panneau SSOWAT. +Bien sûr, une fois désinstallé, tout revient à la normale. \ No newline at end of file