From 1ac5905b2e789e9000f15336c25b4a6981d40b71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Fri, 26 Nov 2021 21:46:33 +0100 Subject: [PATCH 01/53] Update config.inc.php (#122) --- conf/config.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conf/config.inc.php b/conf/config.inc.php index 7ec6bc2..897e42c 100644 --- a/conf/config.inc.php +++ b/conf/config.inc.php @@ -41,7 +41,7 @@ $config['db_dsnw'] = 'mysql://__DB_NAME__:__DB_PWD__@localhost/__DB_NAME__'; // %d - domain (http hostname $_SERVER['HTTP_HOST'] without the first part) // %s - domain name after the '@' from e-mail address provided at login screen // For example %n = mail.domain.tld, %t = domain.tld -$config['default_host'] = '%t'; +$config['default_host'] = 'localhost'; // SMTP server host (for sending mails). // Enter hostname with prefix ssl:// to use Implicit TLS, or use From e05890a11144b9f68c090a5521908bd71d259032 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 26 Nov 2021 21:47:23 +0100 Subject: [PATCH 02/53] Update manifest.json --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.json b/manifest.json index fbaa5bd..ea1daed 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Open Source Webmail software", "fr": "Webmail Open Source" }, - "version": "1.5.0~ynh1", + "version": "1.5.0~ynh2", "url": "https://roundcube.net/", "upstream": { "license": "GPL-3.0-only", From 2699c4f7cf510aaa692835a8e28ca3be4cad826d Mon Sep 17 00:00:00 2001 From: Yunohost-Bot <> Date: Fri, 26 Nov 2021 20:47:30 +0000 Subject: [PATCH 03/53] 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 196b339..6c42e06 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ In addition to Roundcube core features, the following are made available with th * Support for PGP encryption with Enigma plugin by default. -**Shipped version:** 1.5.0~ynh1 +**Shipped version:** 1.5.0~ynh2 **Demo:** https://demo.yunohost.org/webmail/ diff --git a/README_fr.md b/README_fr.md index 158267a..2718c39 100644 --- a/README_fr.md +++ b/README_fr.md @@ -24,7 +24,7 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. -**Version incluse :** 1.5.0~ynh1 +**Version incluse :** 1.5.0~ynh2 **Démo :** https://demo.yunohost.org/webmail/ From 9cf1ba71dcfa84014ad56f4d025019f944519aaf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Sun, 28 Nov 2021 19:40:37 +0100 Subject: [PATCH 04/53] 1.5.1 (#124) * 1.5.1 --- README.md | 2 +- README_fr.md | 2 +- conf/app.src | 4 ++-- conf/config.inc.php | 2 -- conf/nginx.conf | 5 ----- manifest.json | 2 +- 6 files changed, 5 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 6c42e06..b498917 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ In addition to Roundcube core features, the following are made available with th * Support for PGP encryption with Enigma plugin by default. -**Shipped version:** 1.5.0~ynh2 +**Shipped version:** 1.5.1~ynh1 **Demo:** https://demo.yunohost.org/webmail/ diff --git a/README_fr.md b/README_fr.md index 2718c39..e205090 100644 --- a/README_fr.md +++ b/README_fr.md @@ -24,7 +24,7 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. -**Version incluse :** 1.5.0~ynh2 +**Version incluse :** 1.5.1~ynh1 **Démo :** https://demo.yunohost.org/webmail/ diff --git a/conf/app.src b/conf/app.src index 5274aea..d098dc7 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://github.com/roundcube/roundcubemail/releases/download/1.5.0/roundcubemail-1.5.0.tar.gz -SOURCE_SUM=f204b412f930ef6af9832d9afa95640803b7b94c3028450b0f94f56cdc4bbe1d +SOURCE_URL=https://github.com/roundcube/roundcubemail/releases/download/1.5.1/roundcubemail-1.5.1.tar.gz +SOURCE_SUM=ad2e4b061035567a6d19ddbda5275b667e5bd1042b236e6d410a305c34569931 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true diff --git a/conf/config.inc.php b/conf/config.inc.php index 897e42c..930cdeb 100644 --- a/conf/config.inc.php +++ b/conf/config.inc.php @@ -94,8 +94,6 @@ $config['product_name'] = 'YunoHost Webmail'; // YOUR KEY MUST BE DIFFERENT THAN THE SAMPLE VALUE FOR SECURITY REASONS $config['des_key'] = '__DESKEY__'; -// skin name: folder from skins/ -$config['skin'] = 'elastic'; // ---------------------------------- // USER INTERFACE diff --git a/conf/nginx.conf b/conf/nginx.conf index 7247307..7f4196e 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -4,11 +4,6 @@ location __PATH__/ { # Path to source alias __FINALPATH__/ ; - # Force usage of https - if ($scheme = http) { - rewrite ^ https://$server_name$request_uri? permanent; - } - index index.php; client_max_body_size 10G; try_files $uri $uri/ /index.php?q=$uri&$args; diff --git a/manifest.json b/manifest.json index ea1daed..dc680ba 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Open Source Webmail software", "fr": "Webmail Open Source" }, - "version": "1.5.0~ynh2", + "version": "1.5.1~ynh1", "url": "https://roundcube.net/", "upstream": { "license": "GPL-3.0-only", From 744d655ee79f372c2a72a2e98af49b955816a630 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Sat, 11 Dec 2021 10:53:11 +0100 Subject: [PATCH 05/53] Add config panel (#128) --- config_panel.toml | 25 +++++++++++++ scripts/config | 95 +++++++++++++++++++++++++++++++++++++++++++++++ scripts/install | 2 +- scripts/restore | 10 +++-- scripts/upgrade | 17 ++++++++- 5 files changed, 144 insertions(+), 5 deletions(-) create mode 100644 config_panel.toml create mode 100644 scripts/config diff --git a/config_panel.toml b/config_panel.toml new file mode 100644 index 0000000..61d6b6f --- /dev/null +++ b/config_panel.toml @@ -0,0 +1,25 @@ +version = "1.0" + +[main] +name = "Roundcube configuration" + + [main.php_fpm_config] + name = "PHP-FPM configuration" + + [main.php_fpm_config.fpm_footprint] + ask = "Memory footprint of the service?" + choices = ["low", "medium", "high", "specific"] + default = "low" + help = "low <= 20Mb per pool. medium between 20Mb and 40Mb per pool. high > 40Mb per pool.
Use specific to set a value with the following option." + + [main.php_fpm_config.free_footprint] + ask = "Memory footprint of the service?" + type = "number" + default = "0" + help = "Free field to specify exactly the footprint in Mb if you don't want to use one of the three previous values." + + [main.php_fpm_config.fpm_usage] + ask = "Expected usage of the service?" + choices = ["low", "medium", "high"] + default = "low" + help = "low: Personal usage, behind the sso. No RAM footprint when not used, but the impact on the processor can be high if many users are using the service.
medium: Low usage, few people or/and publicly accessible. Low RAM footprint, medium processor footprint when used.
high: High usage, frequently visited website. High RAM footprint, but lower on processor usage and quickly responding." diff --git a/scripts/config b/scripts/config new file mode 100644 index 0000000..3440bd2 --- /dev/null +++ b/scripts/config @@ -0,0 +1,95 @@ +#!/bin/bash + +#================================================= +# GENERIC STARTING +#================================================= +# IMPORT GENERIC HELPERS +#================================================= + +source _common.sh +source /usr/share/yunohost/helpers + +ynh_abort_if_errors + +#================================================= +# RETRIEVE ARGUMENTS +#================================================= + +phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) +current_fpm_footprint=$(ynh_app_setting_get --app=$app --key=fpm_footprint) + +#================================================= +# SPECIFIC GETTERS FOR TOML SHORT KEY +#================================================= + +get__fpm_footprint() { + # Free footprint value for php-fpm + # Check if current_fpm_footprint is an integer + if [ "$current_fpm_footprint" -eq "$current_fpm_footprint" ] 2> /dev/null + then + echo "specific" + else + echo "$current_fpm_footprint" + fi +} + +get__free_footprint() { + # Free footprint value for php-fpm + # Check if current_fpm_footprint is an integer + if [ "$current_fpm_footprint" -eq "$current_fpm_footprint" ] 2> /dev/null + then + # If current_fpm_footprint is an integer, that's a numeric value for the footprint + echo "$current_fpm_footprint" + else + echo "0" + fi +} + +#================================================= +# SPECIFIC SETTERS FOR TOML SHORT KEYS +#================================================= + +set__fpm_footprint() { + if [ "$fpm_footprint" != "specific" ] + then + ynh_app_setting_set --app=$app --key=fpm_footprint --value="$fpm_footprint" + fi +} + +set__free_footprint() { + if [ "$fpm_footprint" = "specific" ] + then + ynh_app_setting_set --app=$app --key=fpm_footprint --value="$free_footprint" + fi +} + +#================================================= +# GENERIC FINALIZATION +#================================================= + +ynh_app_config_validate() { + _ynh_app_config_validate + + if [ "${changed[fpm_usage]}" == "true" ] || [ "${changed[fpm_footprint]}" == "true" ] || [ "${changed[free_footprint]}" == "true" ]; then + # If fpm_footprint is set to 'specific', use $free_footprint value. + if [ "$fpm_footprint" = "specific" ] + then + fpm_footprint=$free_footprint + fi + + if [ "$fpm_footprint" == "0" ] + then + ynh_print_err --message="When selecting 'specific', you have to set a footprint value into the field below." + + exit 0 + fi + fi +} + +ynh_app_config_apply() { + _ynh_app_config_apply + + ynh_add_fpm_config --phpversion=$phpversion --usage=$fpm_usage --footprint=$fpm_footprint +} + +ynh_app_config_run $1 diff --git a/scripts/install b/scripts/install index 1499432..5120e14 100644 --- a/scripts/install +++ b/scripts/install @@ -102,7 +102,7 @@ ynh_add_nginx_config ynh_script_progression --message="Configuring PHP-FPM..." --weight=2 # Create a dedicated PHP-FPM config -ynh_add_fpm_config +ynh_add_fpm_config --usage=low --footprint=low phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) #================================================= diff --git a/scripts/restore b/scripts/restore index ca233ef..8022c1b 100644 --- a/scripts/restore +++ b/scripts/restore @@ -30,13 +30,15 @@ db_name=$(ynh_app_setting_get --app=$app --key=db_name) db_user=$db_name phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) +fpm_footprint=$(ynh_app_setting_get --app=$app --key=fpm_footprint) +fpm_usage=$(ynh_app_setting_get --app=$app --key=fpm_usage) + #================================================= # CHECK IF THE APP CAN BE RESTORED #================================================= ynh_script_progression --message="Validating restoration parameters..." --weight=3 -test ! -d $final_path \ - || ynh_die --message="There is already a directory: $final_path " +test ! -d $final_path || ynh_die --message="There is already a directory: $final_path " #================================================= # STANDARD RESTORATION STEPS @@ -71,7 +73,9 @@ chown -R $app:www-data "$final_path" ynh_script_progression --message="Restoring the PHP-FPM configuration..." --weight=1 ynh_restore_file --origin_path="/etc/php/$phpversion/fpm/pool.d/$app.conf" -ynh_add_fpm_config + +# Recreate a dedicated php-fpm config +ynh_add_fpm_config --usage=$fpm_usage --footprint=$fpm_footprint --phpversion=$phpversion #================================================= # REINSTALL DEPENDENCIES diff --git a/scripts/upgrade b/scripts/upgrade index 00365b3..d96f415 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -26,6 +26,9 @@ phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) language=$(ynh_app_setting_get --app=$app --key=language) db_pwd=$(ynh_app_setting_get --app=$app --key=mysqlpwd) +fpm_footprint=$(ynh_app_setting_get --app=$app --key=fpm_footprint) +fpm_usage=$(ynh_app_setting_get --app=$app --key=fpm_usage) + #================================================= # CHECK VERSION #================================================= @@ -80,6 +83,18 @@ fi ynh_app_setting_set --app=$app --key=language --value=$language fi +# If fpm_footprint doesn't exist, create it +if [ -z "$fpm_footprint" ]; then + fpm_footprint=low + ynh_app_setting_set --app=$app --key=fpm_footprint --value=$fpm_footprint +fi + +# If fpm_usage doesn't exist, create it +if [ -z "$fpm_usage" ]; then + fpm_usage=low + ynh_app_setting_set --app=$app --key=fpm_usage --value=$fpm_usage +fi + # Cleaning legacy permissions if ynh_legacy_permissions_exists; then ynh_legacy_permissions_delete_all @@ -137,7 +152,7 @@ ynh_install_app_dependencies $pkg_dependencies ynh_script_progression --message="Upgrading PHP-FPM configuration..." --weight=5 # Create a dedicated PHP-FPM config -ynh_add_fpm_config +ynh_add_fpm_config --phpversion=$phpversion --usage=$fpm_usage --footprint=$fpm_footprint #================================================= # SPECIFIC UPGRADE From 3a36b094b4b9682401711a6f78dd0d5132eb8df0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Sat, 11 Dec 2021 10:54:43 +0100 Subject: [PATCH 06/53] Plugin upgrade (#127) * Update plugins --- README.md | 2 +- README_fr.md | 2 +- manifest.json | 2 +- scripts/_common.sh | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index b498917..4b0f2ab 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ In addition to Roundcube core features, the following are made available with th * Support for PGP encryption with Enigma plugin by default. -**Shipped version:** 1.5.1~ynh1 +**Shipped version:** 1.5.1~ynh2 **Demo:** https://demo.yunohost.org/webmail/ diff --git a/README_fr.md b/README_fr.md index e205090..37c3c10 100644 --- a/README_fr.md +++ b/README_fr.md @@ -24,7 +24,7 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. -**Version incluse :** 1.5.1~ynh1 +**Version incluse :** 1.5.1~ynh2 **Démo :** https://demo.yunohost.org/webmail/ diff --git a/manifest.json b/manifest.json index dc680ba..38ad5cd 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Open Source Webmail software", "fr": "Webmail Open Source" }, - "version": "1.5.1~ynh1", + "version": "1.5.1~ynh2", "url": "https://roundcube.net/", "upstream": { "license": "GPL-3.0-only", diff --git a/scripts/_common.sh b/scripts/_common.sh index aefb5de..7712b9e 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -13,9 +13,9 @@ pkg_dependencies="php-pear php${YNH_PHP_VERSION}-ldap php${YNH_PHP_VERSION}-mysq YNH_COMPOSER_VERSION=2.1.1 # Plugins version -contextmenu_version=3.2.1 +contextmenu_version=3.3 automatic_addressbook_version=v0.4.3 -carddav_version=3.0.3 +carddav_version=4.3.0 #================================================= # EXPERIMENTAL HELPERS From 52f971ec24f91d6f6c2402ddd7e585046ae3040e Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 26 Dec 2021 18:54:27 +0100 Subject: [PATCH 07/53] Update config.inc.php --- conf/config.inc.php | 1 + 1 file changed, 1 insertion(+) diff --git a/conf/config.inc.php b/conf/config.inc.php index 930cdeb..722521b 100644 --- a/conf/config.inc.php +++ b/conf/config.inc.php @@ -140,6 +140,7 @@ $config['plugins'] = array( 'new_user_dialog', 'new_user_identity', 'enigma', + // installed plugins ); // ---------------------------------- From 0092d3184a5543eb4ab891fe6f13efca4e48df52 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 26 Dec 2021 19:01:54 +0100 Subject: [PATCH 08/53] Update manifest.json --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.json b/manifest.json index 38ad5cd..4471147 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Open Source Webmail software", "fr": "Webmail Open Source" }, - "version": "1.5.1~ynh2", + "version": "1.5.1~ynh3", "url": "https://roundcube.net/", "upstream": { "license": "GPL-3.0-only", From 9bf5533cf149368deb11b17eb4585b84e20dd296 Mon Sep 17 00:00:00 2001 From: Yunohost-Bot <> Date: Sun, 26 Dec 2021 18:02:01 +0000 Subject: [PATCH 09/53] 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 4b0f2ab..6196c2a 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ In addition to Roundcube core features, the following are made available with th * Support for PGP encryption with Enigma plugin by default. -**Shipped version:** 1.5.1~ynh2 +**Shipped version:** 1.5.1~ynh3 **Demo:** https://demo.yunohost.org/webmail/ diff --git a/README_fr.md b/README_fr.md index 37c3c10..a8ec4a7 100644 --- a/README_fr.md +++ b/README_fr.md @@ -24,7 +24,7 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. -**Version incluse :** 1.5.1~ynh2 +**Version incluse :** 1.5.1~ynh3 **Démo :** https://demo.yunohost.org/webmail/ From ad241fc886c5376784a41d15835f41401258ed93 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 26 Dec 2021 19:31:58 +0100 Subject: [PATCH 10/53] Update remove --- scripts/remove | 26 ++++++++------------------ 1 file changed, 8 insertions(+), 18 deletions(-) diff --git a/scripts/remove b/scripts/remove index 3f9ed8b..2c7f294 100644 --- a/scripts/remove +++ b/scripts/remove @@ -20,16 +20,6 @@ domain=$(ynh_app_setting_get --app=$app --key=domain) db_name=$(ynh_app_setting_get --app=$app --key=db_name) final_path=$(ynh_app_setting_get --app=$app --key=final_path) -#================================================= -# STANDARD REMOVE -#================================================= -# REMOVE DEPENDENCIES -#================================================= -ynh_script_progression --message="Removing dependencies..." --weight=8 - -# Remove metapackage and its dependencies -ynh_remove_app_dependencies - #================================================= # REMOVE THE MYSQL DATABASE #================================================= @@ -38,14 +28,6 @@ ynh_script_progression --message="Removing the MySQL database..." --weight=2 # Remove a database if it exists, along with the associated user ynh_mysql_remove_db --db_user=$db_name --db_name=$db_name -#================================================= -# REMOVE DEPENDENCIES -#================================================= -ynh_script_progression --message="Removing dependencies..." --weight=1 - -# Remove metapackage and its dependencies -ynh_remove_app_dependencies - #================================================= # REMOVE APP MAIN DIR #================================================= @@ -70,6 +52,14 @@ ynh_script_progression --message="Removing PHP-FPM configuration..." --weight=3 # Remove the dedicated PHP-FPM config ynh_remove_fpm_config +#================================================= +# REMOVE DEPENDENCIES +#================================================= +ynh_script_progression --message="Removing dependencies..." --weight=1 + +# Remove metapackage and its dependencies +ynh_remove_app_dependencies + #================================================= # GENERIC FINALIZATION #================================================= From 1c6bd22fbc1e49b96c2a181b4500b486f8b90449 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 26 Dec 2021 19:35:42 +0100 Subject: [PATCH 11/53] Update check_process --- check_process | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/check_process b/check_process index 399421a..318ab66 100644 --- a/check_process +++ b/check_process @@ -12,7 +12,7 @@ setup_private=0 setup_public=0 upgrade=1 - upgrade=1 from_commit=67cb9813b18254b5f478d9a2974862d0a3af40e5 + upgrade=1 from_commit=f470adac1152482928c90a9c657b968f0907cf8a backup_restore=1 multi_instance=1 change_url=1 @@ -20,5 +20,5 @@ Email= Notification=none ;;; Upgrade options - ; commit=67cb9813b18254b5f478d9a2974862d0a3af40e5 - name=Merge pull request #108 + ; commit=f470adac1152482928c90a9c657b968f0907cf8a + name=Merge pull request #119 From 30db92700c6ffdf6320375037249f12b5bc229b1 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 26 Dec 2021 19:54:41 +0100 Subject: [PATCH 12/53] Update upgrade --- scripts/upgrade | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/upgrade b/scripts/upgrade index d96f415..1877b73 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -179,6 +179,8 @@ then if [ -f "$final_path/composer.json" ] then ynh_exec_warn_less ynh_composer_exec --commands="update" + # Update plugin-installer for Composer version 2.0 + ynh_exec_warn_less ynh_composer_exec --commands="require roundcube/plugin-installer:>=0.2.0" else # Install composer.json cp "$final_path/composer.json-dist" "$final_path/composer.json" From 9259269bf952037d5c62c0cd338f0fa3e2219b23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Fri, 31 Dec 2021 09:17:09 +0100 Subject: [PATCH 13/53] 1.5.2 (#131) * 1.5.2 --- .github/workflows/updater.sh | 2 +- README.md | 2 +- README_fr.md | 2 +- conf/app.src | 4 ++-- manifest.json | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/updater.sh b/.github/workflows/updater.sh index f720017..2560e8e 100755 --- a/.github/workflows/updater.sh +++ b/.github/workflows/updater.sh @@ -66,7 +66,7 @@ echo "Handling asset at $asset_url" # Here we base the source file name upon a unique keyword in the assets url (admin vs. update) # Leave $src empty to ignore the asset case $asset_url in - *"roundcubemail-"*".tar.gz"*) + *"roundcubemail-"*".tar.gz") src="app" ;; esac diff --git a/README.md b/README.md index 6196c2a..f05374e 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ In addition to Roundcube core features, the following are made available with th * Support for PGP encryption with Enigma plugin by default. -**Shipped version:** 1.5.1~ynh3 +**Shipped version:** 1.5.2~ynh1 **Demo:** https://demo.yunohost.org/webmail/ diff --git a/README_fr.md b/README_fr.md index a8ec4a7..9cfc748 100644 --- a/README_fr.md +++ b/README_fr.md @@ -24,7 +24,7 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. -**Version incluse :** 1.5.1~ynh3 +**Version incluse :** 1.5.2~ynh1 **Démo :** https://demo.yunohost.org/webmail/ diff --git a/conf/app.src b/conf/app.src index d098dc7..0f1b6cc 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://github.com/roundcube/roundcubemail/releases/download/1.5.1/roundcubemail-1.5.1.tar.gz -SOURCE_SUM=ad2e4b061035567a6d19ddbda5275b667e5bd1042b236e6d410a305c34569931 +SOURCE_URL=https://github.com/roundcube/roundcubemail/releases/download/1.5.2/roundcubemail-1.5.2.tar.gz +SOURCE_SUM=e8ddba93e308903a5603535eb98b9392a34078fec0355f658f0e7facc424c683 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index 4471147..3fccce9 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Open Source Webmail software", "fr": "Webmail Open Source" }, - "version": "1.5.1~ynh3", + "version": "1.5.2~ynh1", "url": "https://roundcube.net/", "upstream": { "license": "GPL-3.0-only", From 45088a01bc3bdcbc831b4cd1374ee7057c3a8177 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Sun, 9 Jan 2022 22:17:00 +0100 Subject: [PATCH 14/53] Update config.inc.php (#134) --- conf/config.inc.php | 1 + 1 file changed, 1 insertion(+) diff --git a/conf/config.inc.php b/conf/config.inc.php index 722521b..b32544c 100644 --- a/conf/config.inc.php +++ b/conf/config.inc.php @@ -139,6 +139,7 @@ $config['plugins'] = array( 'markasjunk', 'new_user_dialog', 'new_user_identity', + 'newmail_notifier', 'enigma', // installed plugins ); From cf19c0128aa166ca89e6b376781b15d556ad605f Mon Sep 17 00:00:00 2001 From: Xavier Brochard Date: Wed, 23 Mar 2022 18:07:29 +0100 Subject: [PATCH 15/53] Fix plugins urls (#137) * fix plugins urls sblaisot/automatic_addressbook is abandonned and forked at projectmyst/automatic_addressbook * fix plugins urls as in previous commit * fix html5 plugin url * fix html5 plugin url --- doc/DESCRIPTION.md | 4 ++-- doc/DESCRIPTION_fr.md | 6 +++--- doc/DISCLAIMER.md | 2 +- doc/DISCLAIMER_fr.md | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/doc/DESCRIPTION.md b/doc/DESCRIPTION.md index 35ccd0b..1ecb1bf 100644 --- a/doc/DESCRIPTION.md +++ b/doc/DESCRIPTION.md @@ -5,6 +5,6 @@ Roundcube is a browser-based multilingual IMAP client with an application-like u In addition to Roundcube core features, the following are made available with this package: * Synchronize your email aliases as identities in Roundcube - * Install the [contextmenu](https://plugins.roundcube.net/packages/johndoh/contextmenu) and [automatic addressbook](https://plugins.roundcube.net/packages/sblaisot/automatic_addressbook) plugins by default - * Allow to install the [CardDAV](https://plugins.roundcube.net/packages/roundcube/carddav) (address book) synchronization plugin at the installation - note that if you have installed Nextcloud or Baïkal, it will automatically add the corresponding and existing address book. + * Install the [contextmenu](https://packagist.org/packages/johndoh/contextmenu) and [automatic addressbook](https://packagist.org/packages/projectmyst/automatic_addressbook) plugins by default + * Allow to install the [CardDAV](https://packagist.org/packages/roundcube/carddav) (address book) synchronization plugin at the installation - note that if you have installed Nextcloud or Baïkal, it will automatically add the corresponding and existing address book. * Support for PGP encryption with Enigma plugin by default. diff --git a/doc/DESCRIPTION_fr.md b/doc/DESCRIPTION_fr.md index 3e2f030..be0b7b4 100644 --- a/doc/DESCRIPTION_fr.md +++ b/doc/DESCRIPTION_fr.md @@ -5,7 +5,7 @@ Roundcube est un client IMAP multilingue basé sur un navigateur avec une interf En plus des fonctionnalités principales de Roundcube, les éléments suivants sont disponibles avec ce paquet : * Synchronisez vos alias de messagerie en tant qu'identités dans Roundcube. - * Installation des plugins [contextmenu](https://plugins.roundcube.net/packages/johndoh/contextmenu) - et [automatic addressbook](https://plugins.roundcube.net/packages/sblaisot/automatic_addressbook) par default. - * Permettre d'installer [CardDAV](https://plugins.roundcube.net/packages/roundcube/carddav) (carnet d'adresses) de synchronisation à l'installation - notez que si vous avez installé Nextcloud ou Baïkal, il ajoutera automatiquement le carnet d'adresses correspondant. + * Installation des plugins [contextmenu](https://packagist.org/packages/johndoh/contextmenu) + et [automatic addressbook](https://packagist.org/packages/projectmyst/automatic_addressbook) par default. + * Permettre d'installer [CardDAV](https://packagist.org/packages/roundcube/carddav) (carnet d'adresses) de synchronisation à l'installation - notez que si vous avez installé Nextcloud ou Baïkal, il ajoutera automatiquement le carnet d'adresses correspondant. * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. diff --git a/doc/DISCLAIMER.md b/doc/DISCLAIMER.md index f7987e0..935843a 100644 --- a/doc/DISCLAIMER.md +++ b/doc/DISCLAIMER.md @@ -12,7 +12,7 @@ You can also install other plugins - which will not be removed with upgrades. To ##### From the Plugin Repository -Let's say for example that we want to install the [html5_notifier](https://plugins.roundcube.net/packages/kitist/html5_notifier) plugin. +Let's say for example that we want to install the [html5_notifier](https://packagist.org/packages/kitist/html5_notifier) plugin. 1. Connect to your server as root using SSH: ``` diff --git a/doc/DISCLAIMER_fr.md b/doc/DISCLAIMER_fr.md index 60d456f..8c5d183 100644 --- a/doc/DISCLAIMER_fr.md +++ b/doc/DISCLAIMER_fr.md @@ -12,7 +12,7 @@ Vous pouvez également installer d'autres plugins (qui ne seront pas supprimés ##### Depuis le dépôt de plugins -Si, par exemple, vous voulez installer le plugin [html5_notifier](https://plugins.roundcube.net/packages/kitist/html5_notifier). +Si, par exemple, vous voulez installer le plugin [html5_notifier](https://packagist.org/packages/kitist/html5_notifier). 1. Connectez-vous en SSH à votre serveur en tant que root : ``` From ce82a448c7cec2be574b398c64505959895cf2c3 Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Wed, 23 Mar 2022 17:07:33 +0000 Subject: [PATCH 16/53] Auto-update README --- README.md | 6 +++--- README_fr.md | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index f05374e..39ee8f7 100644 --- a/README.md +++ b/README.md @@ -22,8 +22,8 @@ Roundcube is a browser-based multilingual IMAP client with an application-like u In addition to Roundcube core features, the following are made available with this package: * Synchronize your email aliases as identities in Roundcube - * Install the [contextmenu](https://plugins.roundcube.net/packages/johndoh/contextmenu) and [automatic addressbook](https://plugins.roundcube.net/packages/sblaisot/automatic_addressbook) plugins by default - * Allow to install the [CardDAV](https://plugins.roundcube.net/packages/roundcube/carddav) (address book) synchronization plugin at the installation - note that if you have installed Nextcloud or Baïkal, it will automatically add the corresponding and existing address book. + * Install the [contextmenu](https://packagist.org/packages/johndoh/contextmenu) and [automatic addressbook](https://packagist.org/packages/projectmyst/automatic_addressbook) plugins by default + * Allow to install the [CardDAV](https://packagist.org/packages/roundcube/carddav) (address book) synchronization plugin at the installation - note that if you have installed Nextcloud or Baïkal, it will automatically add the corresponding and existing address book. * Support for PGP encryption with Enigma plugin by default. @@ -51,7 +51,7 @@ You can also install other plugins - which will not be removed with upgrades. To ##### From the Plugin Repository -Let's say for example that we want to install the [html5_notifier](https://plugins.roundcube.net/packages/kitist/html5_notifier) plugin. +Let's say for example that we want to install the [html5_notifier](https://packagist.org/packages/kitist/html5_notifier) plugin. 1. Connect to your server as root using SSH: ``` diff --git a/README_fr.md b/README_fr.md index 9cfc748..6f8c2fc 100644 --- a/README_fr.md +++ b/README_fr.md @@ -18,9 +18,9 @@ Roundcube est un client IMAP multilingue basé sur un navigateur avec une interf En plus des fonctionnalités principales de Roundcube, les éléments suivants sont disponibles avec ce paquet : * Synchronisez vos alias de messagerie en tant qu'identités dans Roundcube. - * Installation des plugins [contextmenu](https://plugins.roundcube.net/packages/johndoh/contextmenu) - et [automatic addressbook](https://plugins.roundcube.net/packages/sblaisot/automatic_addressbook) par default. - * Permettre d'installer [CardDAV](https://plugins.roundcube.net/packages/roundcube/carddav) (carnet d'adresses) de synchronisation à l'installation - notez que si vous avez installé Nextcloud ou Baïkal, il ajoutera automatiquement le carnet d'adresses correspondant. + * Installation des plugins [contextmenu](https://packagist.org/packages/johndoh/contextmenu) + et [automatic addressbook](https://packagist.org/packages/projectmyst/automatic_addressbook) par default. + * Permettre d'installer [CardDAV](https://packagist.org/packages/roundcube/carddav) (carnet d'adresses) de synchronisation à l'installation - notez que si vous avez installé Nextcloud ou Baïkal, il ajoutera automatiquement le carnet d'adresses correspondant. * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. @@ -48,7 +48,7 @@ Vous pouvez également installer d'autres plugins (qui ne seront pas supprimés ##### Depuis le dépôt de plugins -Si, par exemple, vous voulez installer le plugin [html5_notifier](https://plugins.roundcube.net/packages/kitist/html5_notifier). +Si, par exemple, vous voulez installer le plugin [html5_notifier](https://packagist.org/packages/kitist/html5_notifier). 1. Connectez-vous en SSH à votre serveur en tant que root : ``` From ad1dae4798d3037b2ea66f9259e00cda79fb6038 Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Sun, 26 Jun 2022 21:25:09 +0000 Subject: [PATCH 17/53] Auto-update README --- README.md | 19 ++++++++++--------- README_fr.md | 25 +++++++++++++++---------- 2 files changed, 25 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index 39ee8f7..4e22b9c 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ It shall NOT be edited by hand. # Roundcube for YunoHost -[![Integration level](https://dash.yunohost.org/integration/roundcube.svg)](https://dash.yunohost.org/appci/app/roundcube) ![](https://ci-apps.yunohost.org/ci/badges/roundcube.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/roundcube.maintain.svg) +[![Integration level](https://dash.yunohost.org/integration/roundcube.svg)](https://dash.yunohost.org/appci/app/roundcube) ![Working status](https://ci-apps.yunohost.org/ci/badges/roundcube.status.svg) ![Maintenance status](https://ci-apps.yunohost.org/ci/badges/roundcube.maintain.svg) [![Install Roundcube with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=roundcube) *[Lire ce readme en français.](./README_fr.md)* @@ -33,7 +33,7 @@ In addition to Roundcube core features, the following are made available with th ## Screenshots -![](./doc/screenshots/screenshot.png) +![Screenshot of Roundcube](./doc/screenshots/screenshot.png) ## Disclaimers / important information @@ -84,21 +84,22 @@ You can also download the plugin and put it under the `plugins/` directory. In t ## Documentation and resources -* Official app website: https://roundcube.net/ -* Official admin documentation: https://github.com/roundcube/roundcubemail/wiki -* Upstream app code repository: https://github.com/roundcube/roundcubemail -* YunoHost documentation for this app: https://yunohost.org/app_roundcube -* Report a bug: https://github.com/YunoHost-Apps/roundcube_ynh/issues +* Official app website: +* Official admin documentation: +* Upstream app code repository: +* YunoHost documentation for this app: +* Report a bug: ## Developer info Please send your pull request to the [testing branch](https://github.com/YunoHost-Apps/roundcube_ynh/tree/testing). To try the testing branch, please proceed like that. -``` + +``` bash sudo yunohost app install https://github.com/YunoHost-Apps/roundcube_ynh/tree/testing --debug or sudo yunohost app upgrade roundcube -u https://github.com/YunoHost-Apps/roundcube_ynh/tree/testing --debug ``` -**More info regarding app packaging:** https://yunohost.org/packaging_apps \ No newline at end of file +**More info regarding app packaging:** diff --git a/README_fr.md b/README_fr.md index 6f8c2fc..7ad39cc 100644 --- a/README_fr.md +++ b/README_fr.md @@ -1,10 +1,14 @@ + + # Roundcube pour YunoHost -[![Niveau d'intégration](https://dash.yunohost.org/integration/roundcube.svg)](https://dash.yunohost.org/appci/app/roundcube) ![](https://ci-apps.yunohost.org/ci/badges/roundcube.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/roundcube.maintain.svg) +[![Niveau d'intégration](https://dash.yunohost.org/integration/roundcube.svg)](https://dash.yunohost.org/appci/app/roundcube) ![Statut du fonctionnement](https://ci-apps.yunohost.org/ci/badges/roundcube.status.svg) ![Statut de maintenance](https://ci-apps.yunohost.org/ci/badges/roundcube.maintain.svg) [![Installer Roundcube avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=roundcube) *[Read this readme in english.](./README.md)* -*[Lire ce readme en français.](./README_fr.md)* > *Ce package vous permet d'installer Roundcube 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.* @@ -30,7 +34,7 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s ## Captures d'écran -![](./doc/screenshots/screenshot.png) +![Capture d'écran de Roundcube](./doc/screenshots/screenshot.png) ## Avertissements / informations importantes @@ -81,21 +85,22 @@ Vous pouvez également télécharger le plugin et le placer dans le répertoire ## Documentations et ressources -* Site officiel de l'app : https://roundcube.net/ -* Documentation officielle de l'admin : https://github.com/roundcube/roundcubemail/wiki -* Dépôt de code officiel de l'app : https://github.com/roundcube/roundcubemail -* Documentation YunoHost pour cette app : https://yunohost.org/app_roundcube -* Signaler un bug : https://github.com/YunoHost-Apps/roundcube_ynh/issues +* Site officiel de l'app : +* Documentation officielle de l'admin : +* Dépôt de code officiel de l'app : +* Documentation YunoHost pour cette app : +* Signaler un bug : ## Informations pour les développeurs Merci de faire vos pull request sur la [branche testing](https://github.com/YunoHost-Apps/roundcube_ynh/tree/testing). Pour essayer la branche testing, procédez comme suit. -``` + +``` bash sudo yunohost app install https://github.com/YunoHost-Apps/roundcube_ynh/tree/testing --debug ou sudo yunohost app upgrade roundcube -u https://github.com/YunoHost-Apps/roundcube_ynh/tree/testing --debug ``` -**Plus d'infos sur le packaging d'applications :** https://yunohost.org/packaging_apps \ No newline at end of file +**Plus d'infos sur le packaging d'applications :** From 3dc41f0323a5a6c2d36e5284541a152c098ea2e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Mon, 27 Jun 2022 09:23:23 +0200 Subject: [PATCH 18/53] 1.5.3 (#142) * 1.5.3 * Auto-update README Co-authored-by: yunohost-bot --- README.md | 2 +- README_fr.md | 2 +- conf/app.src | 4 ++-- manifest.json | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 4e22b9c..9fac1cd 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ In addition to Roundcube core features, the following are made available with th * Support for PGP encryption with Enigma plugin by default. -**Shipped version:** 1.5.2~ynh1 +**Shipped version:** 1.5.3~ynh1 **Demo:** https://demo.yunohost.org/webmail/ diff --git a/README_fr.md b/README_fr.md index 7ad39cc..10e27d1 100644 --- a/README_fr.md +++ b/README_fr.md @@ -28,7 +28,7 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. -**Version incluse :** 1.5.2~ynh1 +**Version incluse :** 1.5.3~ynh1 **Démo :** https://demo.yunohost.org/webmail/ diff --git a/conf/app.src b/conf/app.src index 0f1b6cc..ef45d37 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://github.com/roundcube/roundcubemail/releases/download/1.5.2/roundcubemail-1.5.2.tar.gz -SOURCE_SUM=e8ddba93e308903a5603535eb98b9392a34078fec0355f658f0e7facc424c683 +SOURCE_URL=https://github.com/roundcube/roundcubemail/releases/download/1.5.3/roundcubemail-1.5.3.tar.gz +SOURCE_SUM=22fdfa0f868fc478dfbb1dfa9bcd5fc91be981182334ca6079ad1ae03ac4c96e SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index 3fccce9..5ff2549 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Open Source Webmail software", "fr": "Webmail Open Source" }, - "version": "1.5.2~ynh1", + "version": "1.5.3~ynh1", "url": "https://roundcube.net/", "upstream": { "license": "GPL-3.0-only", From 7236907cadefb28d5fa98ef7ed0cd437840fd8f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Mon, 27 Jun 2022 10:34:33 +0200 Subject: [PATCH 19/53] user --- scripts/install | 4 ++-- scripts/remove | 3 ++- scripts/restore | 4 ++-- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/scripts/install b/scripts/install index 5120e14..ebb8c65 100644 --- a/scripts/install +++ b/scripts/install @@ -58,7 +58,7 @@ ynh_script_progression --message="Creating a MySQL database..." --weight=2 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_name --db_name=$db_name +ynh_mysql_setup_db --db_user=$db_user --db_name=$db_name #================================================= # INSTALL DEPENDENCIES @@ -123,7 +123,7 @@ ynh_install_composer #================================================= ynh_script_progression --message="Initializing database..." --weight=3 -ynh_mysql_connect_as --user="$db_name" --password="$db_pwd" --database="$db_name" \ +ynh_mysql_connect_as --user="$db_user" --password="$db_pwd" --database="$db_name" \ < "$final_path/SQL/mysql.initial.sql" #================================================= diff --git a/scripts/remove b/scripts/remove index 2c7f294..dd5bd70 100644 --- a/scripts/remove +++ b/scripts/remove @@ -18,6 +18,7 @@ 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) #================================================= @@ -26,7 +27,7 @@ final_path=$(ynh_app_setting_get --app=$app --key=final_path) ynh_script_progression --message="Removing the MySQL database..." --weight=2 # Remove a database if it exists, along with the associated user -ynh_mysql_remove_db --db_user=$db_name --db_name=$db_name +ynh_mysql_remove_db --db_user=$db_user --db_name=$db_name #================================================= # REMOVE APP MAIN DIR diff --git a/scripts/restore b/scripts/restore index 8022c1b..25c084d 100644 --- a/scripts/restore +++ b/scripts/restore @@ -93,8 +93,8 @@ ynh_install_app_dependencies $pkg_dependencies ynh_script_progression --message="Restoring the MySQL database..." --weight=5 db_pwd=$(ynh_app_setting_get --app=$app --key=mysqlpwd) -ynh_mysql_setup_db --db_user=$db_name --db_name=$db_name --db_pwd=$db_pwd -ynh_mysql_connect_as --user=$db_name --password=$db_pwd --database=$db_name < ./db.sql +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 #================================================= # GENERIC FINALIZATION From 72ce0b2ac90eb120c579caf0249c4818ffe8e535 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Mon, 27 Jun 2022 10:42:34 +0200 Subject: [PATCH 20/53] Update _common.sh --- scripts/_common.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/_common.sh b/scripts/_common.sh index 7712b9e..94af0be 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -13,9 +13,9 @@ pkg_dependencies="php-pear php${YNH_PHP_VERSION}-ldap php${YNH_PHP_VERSION}-mysq YNH_COMPOSER_VERSION=2.1.1 # Plugins version -contextmenu_version=3.3 +contextmenu_version=3.3.1 automatic_addressbook_version=v0.4.3 -carddav_version=4.3.0 +carddav_version=4.4.1 #================================================= # EXPERIMENTAL HELPERS From 97b9dd909df4423cd0866aa0cc518c2db588864d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Mon, 27 Jun 2022 10:43:00 +0200 Subject: [PATCH 21/53] Update _common.sh --- scripts/_common.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/_common.sh b/scripts/_common.sh index 94af0be..ad483bc 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -10,7 +10,7 @@ YNH_PHP_VERSION="7.3" pkg_dependencies="php-pear php${YNH_PHP_VERSION}-ldap php${YNH_PHP_VERSION}-mysql php${YNH_PHP_VERSION}-cli php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-json php${YNH_PHP_VERSION}-zip php${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-mbstring php${YNH_PHP_VERSION}-dom php${YNH_PHP_VERSION}-curl" # Composer version -YNH_COMPOSER_VERSION=2.1.1 +YNH_COMPOSER_VERSION=2.3.7 # Plugins version contextmenu_version=3.3.1 From 35f397168d793df69f0fe03c81a2e835c257caff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Fri, 5 Aug 2022 17:15:52 +0200 Subject: [PATCH 22/53] version 16 (#146) * Fix * Auto-update README * Update config.inc.php * Update config.inc.php * Update install * Update install * Update install * Update install * Update upgrade * PHP8.0 * Update app.src * Update restore Co-authored-by: Yunohost-Bot <> --- README.md | 2 +- README_fr.md | 2 +- conf/app.src | 4 ++-- conf/config.inc.php | 10 +++------- manifest.json | 4 ++-- scripts/_common.sh | 2 +- scripts/install | 2 +- scripts/restore | 24 +++++++++++++----------- scripts/upgrade | 2 +- 9 files changed, 25 insertions(+), 27 deletions(-) diff --git a/README.md b/README.md index 9fac1cd..e1328d9 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ In addition to Roundcube core features, the following are made available with th * Support for PGP encryption with Enigma plugin by default. -**Shipped version:** 1.5.3~ynh1 +**Shipped version:** 1.6.0~ynh1 **Demo:** https://demo.yunohost.org/webmail/ diff --git a/README_fr.md b/README_fr.md index 10e27d1..6366152 100644 --- a/README_fr.md +++ b/README_fr.md @@ -28,7 +28,7 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. -**Version incluse :** 1.5.3~ynh1 +**Version incluse :** 1.6.0~ynh1 **Démo :** https://demo.yunohost.org/webmail/ diff --git a/conf/app.src b/conf/app.src index ef45d37..3f7ef4e 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://github.com/roundcube/roundcubemail/releases/download/1.5.3/roundcubemail-1.5.3.tar.gz -SOURCE_SUM=22fdfa0f868fc478dfbb1dfa9bcd5fc91be981182334ca6079ad1ae03ac4c96e +SOURCE_URL=https://github.com/roundcube/roundcubemail/releases/download/1.6.0/roundcubemail-1.6.0-complete.tar.gz +SOURCE_SUM=2409ccdfe2e465f086cb9fc18c88dfe0aaf6ccc23924564975061209921694ba SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true diff --git a/conf/config.inc.php b/conf/config.inc.php index b32544c..791ceab 100644 --- a/conf/config.inc.php +++ b/conf/config.inc.php @@ -41,7 +41,7 @@ $config['db_dsnw'] = 'mysql://__DB_NAME__:__DB_PWD__@localhost/__DB_NAME__'; // %d - domain (http hostname $_SERVER['HTTP_HOST'] without the first part) // %s - domain name after the '@' from e-mail address provided at login screen // For example %n = mail.domain.tld, %t = domain.tld -$config['default_host'] = 'localhost'; +$config['imap_host'] = 'localhost:143'; // SMTP server host (for sending mails). // Enter hostname with prefix ssl:// to use Implicit TLS, or use @@ -55,10 +55,7 @@ $config['default_host'] = 'localhost'; // For example %n = mail.domain.tld, %t = domain.tld // To specify different SMTP servers for different IMAP hosts provide an array // of IMAP host (no prefix or port) and SMTP server e.g. ['imap.example.com' => 'smtp.example.net'] -$config['smtp_server'] = 'tls://' . $main_domain; - -// SMTP port. Use 25 for cleartext, 465 for Implicit TLS, or 587 for STARTTLS (default) -$config['smtp_port'] = 587; +$config['smtp_host'] = 'tls://' . $main_domain; // SMTP username (if required) if you use %u as the username Roundcube // will use the current username for login @@ -113,8 +110,7 @@ $config['enable_spellcheck'] = false; // Enable YunoHost users search in the address book. $config['ldap_public']['yunohost'] = array( 'name' => 'YunoHost Users', - 'hosts' => array('localhost'), - 'port' => 389, + 'hosts' => array('localhost:389'), 'user_specific' => false, 'base_dn' => 'ou=users,dc=yunohost,dc=org', 'scope' => 'list', diff --git a/manifest.json b/manifest.json index 5ff2549..7fdc88c 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Open Source Webmail software", "fr": "Webmail Open Source" }, - "version": "1.5.3~ynh1", + "version": "1.6.0~ynh1", "url": "https://roundcube.net/", "upstream": { "license": "GPL-3.0-only", @@ -26,7 +26,7 @@ "multi_instance": true, "services": [ "nginx", - "php7.3-fpm", + "php8.0-fpm", "mysql" ], "arguments": { diff --git a/scripts/_common.sh b/scripts/_common.sh index ad483bc..970cf36 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -4,7 +4,7 @@ # COMMON VARIABLES #================================================= -YNH_PHP_VERSION="7.3" +YNH_PHP_VERSION="8.0" # Package dependencies pkg_dependencies="php-pear php${YNH_PHP_VERSION}-ldap php${YNH_PHP_VERSION}-mysql php${YNH_PHP_VERSION}-cli php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-json php${YNH_PHP_VERSION}-zip php${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-mbstring php${YNH_PHP_VERSION}-dom php${YNH_PHP_VERSION}-curl" diff --git a/scripts/install b/scripts/install index ebb8c65..8580532 100644 --- a/scripts/install +++ b/scripts/install @@ -203,7 +203,7 @@ ynh_replace_string --match_string="^\s*// installed plugins" --replace_string="& # Update javascript dependencies (cd "$final_path" -/usr/bin/php$phpversion -q ./bin/install-jsdeps.sh) +/usr/bin/php$phpversion -q ./bin/update.sh -v ?) # Store the config file checksum into the app settings ynh_store_file_checksum --file="$final_path/config/config.inc.php" diff --git a/scripts/restore b/scripts/restore index 25c084d..1e028d3 100644 --- a/scripts/restore +++ b/scripts/restore @@ -38,16 +38,11 @@ fpm_usage=$(ynh_app_setting_get --app=$app --key=fpm_usage) #================================================= ynh_script_progression --message="Validating restoration parameters..." --weight=3 -test ! -d $final_path || ynh_die --message="There is already a directory: $final_path " +test ! -d $final_path \ + || ynh_die --message="There is already a directory: $final_path " #================================================= # STANDARD RESTORATION STEPS -#================================================= -# RESTORE THE NGINX CONFIGURATION -#================================================= - -ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf" - #================================================= # RECREATE THE DEDICATED USER #================================================= @@ -67,6 +62,14 @@ chmod 750 "$final_path" chmod -R o-rwx "$final_path" chown -R $app:www-data "$final_path" +#================================================= +# REINSTALL DEPENDENCIES +#================================================= +ynh_script_progression --message="Reinstalling dependencies..." --weight=1 + +# Define and install dependencies +ynh_install_app_dependencies $pkg_dependencies + #================================================= # RESTORE THE PHP-FPM CONFIGURATION #================================================= @@ -78,12 +81,11 @@ ynh_restore_file --origin_path="/etc/php/$phpversion/fpm/pool.d/$app.conf" ynh_add_fpm_config --usage=$fpm_usage --footprint=$fpm_footprint --phpversion=$phpversion #================================================= -# REINSTALL DEPENDENCIES +# RESTORE THE NGINX CONFIGURATION #================================================= -ynh_script_progression --message="Reinstalling dependencies..." --weight=1 +ynh_script_progression --message="Restoring the NGINX web server configuration..." --weight=1 -# Define and install dependencies -ynh_install_app_dependencies $pkg_dependencies +ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf" #================================================= # SPECIFIC RESTORATION diff --git a/scripts/upgrade b/scripts/upgrade index 1877b73..cbf0e91 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -255,7 +255,7 @@ then # Update JavaScript dependencies (cd "$final_path" - /usr/bin/php$phpversion -q ./bin/install-jsdeps.sh) + /usr/bin/php$phpversion -q ./bin/update.sh -v ?) # Store the config file checksum into the app settings ynh_store_file_checksum --file="$final_path/config/config.inc.php" From 272198d161c53b2511aaa3fe38ed5ba3d0b2f6c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Sun, 14 Aug 2022 19:58:24 +0200 Subject: [PATCH 23/53] bullseye (#149) * bullseye * Auto-update README * Update app.src * set max filesize * Fix Co-authored-by: yunohost-bot --- README.md | 1 + README_fr.md | 3 ++- conf/app.src | 4 ++-- conf/nginx.conf | 2 +- conf/php-fpm.conf | 4 ++-- manifest.json | 2 +- scripts/_common.sh | 4 ++-- scripts/backup | 2 +- scripts/upgrade | 4 ++++ 9 files changed, 16 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index e1328d9..ed44da3 100644 --- a/README.md +++ b/README.md @@ -29,6 +29,7 @@ In addition to Roundcube core features, the following are made available with th **Shipped version:** 1.6.0~ynh1 + **Demo:** https://demo.yunohost.org/webmail/ ## Screenshots diff --git a/README_fr.md b/README_fr.md index 6366152..40c4ee1 100644 --- a/README_fr.md +++ b/README_fr.md @@ -28,7 +28,8 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. -**Version incluse :** 1.6.0~ynh1 +**Version incluse :** 1.6.0~ynh1 + **Démo :** https://demo.yunohost.org/webmail/ diff --git a/conf/app.src b/conf/app.src index 3f7ef4e..aefdce3 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://github.com/roundcube/roundcubemail/releases/download/1.6.0/roundcubemail-1.6.0-complete.tar.gz -SOURCE_SUM=2409ccdfe2e465f086cb9fc18c88dfe0aaf6ccc23924564975061209921694ba +SOURCE_URL=https://github.com/roundcube/roundcubemail/releases/download/1.6.0/roundcubemail-1.6.0.tar.gz +SOURCE_SUM=1224eaf628888e503c49d0e8a69aa4997e566c3605738d0303d9c7a09722f363 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true diff --git a/conf/nginx.conf b/conf/nginx.conf index 7f4196e..f7c3927 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -5,7 +5,7 @@ location __PATH__/ { alias __FINALPATH__/ ; index index.php; - client_max_body_size 10G; + client_max_body_size 50M; try_files $uri $uri/ /index.php?q=$uri&$args; # pass PHP scripts to FastCGI server diff --git a/conf/php-fpm.conf b/conf/php-fpm.conf index 61b251f..e8885d3 100644 --- a/conf/php-fpm.conf +++ b/conf/php-fpm.conf @@ -419,8 +419,8 @@ chdir = __FINALPATH__ ;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_value[upload_max_filesize] = 50M +php_admin_value[post_max_size] = 50M ; php_admin_flag[mail.add_x_header] = Off ; Other common parameters diff --git a/manifest.json b/manifest.json index 7fdc88c..16a25cd 100644 --- a/manifest.json +++ b/manifest.json @@ -21,7 +21,7 @@ "email": "" }, "requirements": { - "yunohost": ">= 4.3.2" + "yunohost": ">= 11.0.9" }, "multi_instance": true, "services": [ diff --git a/scripts/_common.sh b/scripts/_common.sh index 970cf36..d9237d1 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -7,10 +7,10 @@ YNH_PHP_VERSION="8.0" # Package dependencies -pkg_dependencies="php-pear php${YNH_PHP_VERSION}-ldap php${YNH_PHP_VERSION}-mysql php${YNH_PHP_VERSION}-cli php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-json php${YNH_PHP_VERSION}-zip php${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-mbstring php${YNH_PHP_VERSION}-dom php${YNH_PHP_VERSION}-curl" +pkg_dependencies="php-pear php${YNH_PHP_VERSION}-ldap php${YNH_PHP_VERSION}-mysql php${YNH_PHP_VERSION}-cli php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-zip php${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-mbstring php${YNH_PHP_VERSION}-dom php${YNH_PHP_VERSION}-curl" # Composer version -YNH_COMPOSER_VERSION=2.3.7 +YNH_COMPOSER_VERSION=2.3.10 # Plugins version contextmenu_version=3.3.1 diff --git a/scripts/backup b/scripts/backup index 3167c87..6f4f9c1 100644 --- a/scripts/backup +++ b/scripts/backup @@ -26,7 +26,7 @@ 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_PHP_VERSION +phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) #================================================= # DECLARE DATA AND CONF FILES TO BACKUP diff --git a/scripts/upgrade b/scripts/upgrade index cbf0e91..0acf609 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -172,6 +172,10 @@ then #================================================= ynh_script_progression --message="Updating dependencies with Composer..." --weight=30 + # Install composer.json + cp "$final_path/composer.json-dist" "$final_path/composer.json" + + # Upgrade composer itself ynh_install_composer From 01894bf05238bbade88118fb637eb76af302e8e2 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 15 Aug 2022 08:41:00 +0200 Subject: [PATCH 24/53] Update manifest.json --- manifest.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/manifest.json b/manifest.json index 16a25cd..939ece9 100644 --- a/manifest.json +++ b/manifest.json @@ -13,7 +13,8 @@ "website": "https://roundcube.net/", "demo": "https://demo.yunohost.org/webmail/", "admindoc": "https://github.com/roundcube/roundcubemail/wiki", - "code": "https://github.com/roundcube/roundcubemail" + "code": "https://github.com/roundcube/roundcubemail", + "cpe": "cpe:2.3:a:roundcube:webmail" }, "license": "GPL-3.0-only", "maintainer": { From 6b58e58582643215e17c7658257d92926d05fefa Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 15 Aug 2022 09:30:27 +0200 Subject: [PATCH 25/53] Update upgrade --- scripts/upgrade | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/scripts/upgrade b/scripts/upgrade index 0acf609..d6ad4ba 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -131,14 +131,6 @@ chmod 750 "$final_path" chmod -R o-rwx "$final_path" chown -R $app:www-data "$final_path" -#================================================= -# NGINX CONFIGURATION -#================================================= -ynh_script_progression --message="Upgrading NGINX web server configuration..." --weight=1 - -# Create a dedicated NGINX config -ynh_add_nginx_config - #================================================= # UPGRADE DEPENDENCIES #================================================= @@ -154,6 +146,14 @@ ynh_script_progression --message="Upgrading PHP-FPM configuration..." --weight=5 # Create a dedicated PHP-FPM config ynh_add_fpm_config --phpversion=$phpversion --usage=$fpm_usage --footprint=$fpm_footprint +#================================================= +# NGINX CONFIGURATION +#================================================= +ynh_script_progression --message="Upgrading NGINX web server configuration..." --weight=1 + +# Create a dedicated NGINX config +ynh_add_nginx_config + #================================================= # SPECIFIC UPGRADE #================================================= From d5b9b37864717bace08ca7a41bb5fbaf5b7de037 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 15 Aug 2022 12:03:03 +0200 Subject: [PATCH 26/53] PHP7.4 --- manifest.json | 2 +- scripts/_common.sh | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/manifest.json b/manifest.json index 939ece9..59effea 100644 --- a/manifest.json +++ b/manifest.json @@ -27,7 +27,7 @@ "multi_instance": true, "services": [ "nginx", - "php8.0-fpm", + "php7.4-fpm", "mysql" ], "arguments": { diff --git a/scripts/_common.sh b/scripts/_common.sh index d9237d1..8ee2bc2 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -4,10 +4,10 @@ # COMMON VARIABLES #================================================= -YNH_PHP_VERSION="8.0" +YNH_PHP_VERSION="7.4" # Package dependencies -pkg_dependencies="php-pear php${YNH_PHP_VERSION}-ldap php${YNH_PHP_VERSION}-mysql php${YNH_PHP_VERSION}-cli php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-zip php${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-mbstring php${YNH_PHP_VERSION}-dom php${YNH_PHP_VERSION}-curl" +pkg_dependencies="php-pear php${YNH_PHP_VERSION}-ldap php${YNH_PHP_VERSION}-mysql php${YNH_PHP_VERSION}-json php${YNH_PHP_VERSION}-cli php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-zip php${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-mbstring php${YNH_PHP_VERSION}-dom php${YNH_PHP_VERSION}-curl" # Composer version YNH_COMPOSER_VERSION=2.3.10 From 9785bd642a1cf67694557f00aec341b76946eb1f Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 15 Aug 2022 13:13:47 +0200 Subject: [PATCH 27/53] Update upgrade --- scripts/upgrade | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/upgrade b/scripts/upgrade index d6ad4ba..3ecbb67 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -173,7 +173,7 @@ then ynh_script_progression --message="Updating dependencies with Composer..." --weight=30 # Install composer.json - cp "$final_path/composer.json-dist" "$final_path/composer.json" + #cp "$final_path/composer.json-dist" "$final_path/composer.json" # Upgrade composer itself From 552d72f8259c0084baa0a0fa35711b48783f822b Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 15 Aug 2022 13:35:02 +0200 Subject: [PATCH 28/53] Update _common.sh --- scripts/_common.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/_common.sh b/scripts/_common.sh index 8ee2bc2..1433a9d 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -10,7 +10,7 @@ YNH_PHP_VERSION="7.4" pkg_dependencies="php-pear php${YNH_PHP_VERSION}-ldap php${YNH_PHP_VERSION}-mysql php${YNH_PHP_VERSION}-json php${YNH_PHP_VERSION}-cli php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-zip php${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-mbstring php${YNH_PHP_VERSION}-dom php${YNH_PHP_VERSION}-curl" # Composer version -YNH_COMPOSER_VERSION=2.3.10 +YNH_COMPOSER_VERSION=2.3.7 # Plugins version contextmenu_version=3.3.1 From 8a026e6fc41e537f8d9499747d81b14d03e85bfc Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Mon, 15 Aug 2022 14:27:39 +0200 Subject: [PATCH 29/53] Update upgrade --- scripts/upgrade | 4 ---- 1 file changed, 4 deletions(-) diff --git a/scripts/upgrade b/scripts/upgrade index 3ecbb67..488fb83 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -172,10 +172,6 @@ then #================================================= ynh_script_progression --message="Updating dependencies with Composer..." --weight=30 - # Install composer.json - #cp "$final_path/composer.json-dist" "$final_path/composer.json" - - # Upgrade composer itself ynh_install_composer From 60b081c5d3765a7098b75d6740b686bcb1779ae1 Mon Sep 17 00:00:00 2001 From: SuNounix <91945628+SuNounix@users.noreply.github.com> Date: Fri, 26 Aug 2022 07:59:16 +0200 Subject: [PATCH 30/53] Install JS dependencies (#154) * INSTALL JS DEPENDENCIES * Update install --- scripts/install | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/install b/scripts/install index 8580532..c9d76fe 100644 --- a/scripts/install +++ b/scripts/install @@ -203,7 +203,7 @@ ynh_replace_string --match_string="^\s*// installed plugins" --replace_string="& # Update javascript dependencies (cd "$final_path" -/usr/bin/php$phpversion -q ./bin/update.sh -v ?) +/usr/bin/php$phpversion -q ./bin/install-jsdeps.sh -v ?) # Store the config file checksum into the app settings ynh_store_file_checksum --file="$final_path/config/config.inc.php" From 63429a0fc4866d503a16d0bdc3291af129a2d22c Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 26 Aug 2022 08:02:25 +0200 Subject: [PATCH 31/53] Update manifest.json --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.json b/manifest.json index 59effea..3a79c1e 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Open Source Webmail software", "fr": "Webmail Open Source" }, - "version": "1.6.0~ynh1", + "version": "1.6.0~ynh2", "url": "https://roundcube.net/", "upstream": { "license": "GPL-3.0-only", From 8a7a1cc14f602e8bd6310f269061cac177fb23ce Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Fri, 26 Aug 2022 06:02:29 +0000 Subject: [PATCH 32/53] 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 ed44da3..1822926 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ In addition to Roundcube core features, the following are made available with th * Support for PGP encryption with Enigma plugin by default. -**Shipped version:** 1.6.0~ynh1 +**Shipped version:** 1.6.0~ynh2 **Demo:** https://demo.yunohost.org/webmail/ diff --git a/README_fr.md b/README_fr.md index 40c4ee1..2aa1a22 100644 --- a/README_fr.md +++ b/README_fr.md @@ -28,7 +28,7 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. -**Version incluse :** 1.6.0~ynh1 +**Version incluse :** 1.6.0~ynh2 **Démo :** https://demo.yunohost.org/webmail/ From 7208b741efee465a72d43ac9c471ef65139ea59a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Thu, 29 Sep 2022 23:08:15 +0200 Subject: [PATCH 33/53] Upgrade config panel (#158) * fix pgp home path in a muti-install context * Update manifest.json * config panel * fix * Update install * Update upgrade --- conf/enigma.config.inc.php | 2 +- config_panel.toml | 17 +++++++++++------ manifest.json | 2 +- scripts/config | 10 +++++----- scripts/install | 11 +++++++++-- scripts/upgrade | 7 +++++++ 6 files changed, 34 insertions(+), 15 deletions(-) diff --git a/conf/enigma.config.inc.php b/conf/enigma.config.inc.php index 8990189..4d13f64 100644 --- a/conf/enigma.config.inc.php +++ b/conf/enigma.config.inc.php @@ -14,7 +14,7 @@ $config['enigma_debug'] = false; // REQUIRED! Keys directory for all users. // Must be writeable by PHP process, and not in the web server document root -$config['enigma_pgp_homedir'] = '__FINALPATH__/plugins/enigma/home'; +$config['enigma_pgp_homedir'] = '/var/www/__APP__/plugins/enigma/home'; // Location of gpg binary. By default it will be auto-detected. // This is also a way to force gpg2 use if there are both 1.x and 2.x on the system. diff --git a/config_panel.toml b/config_panel.toml index 61d6b6f..e18cff6 100644 --- a/config_panel.toml +++ b/config_panel.toml @@ -7,19 +7,24 @@ name = "Roundcube configuration" name = "PHP-FPM configuration" [main.php_fpm_config.fpm_footprint] - ask = "Memory footprint of the service?" - choices = ["low", "medium", "high", "specific"] + ask = "Memory footprint" + type = "select" + choices.low = "Low, <= 20Mb per pool" + choices.medium = "Medium, between 20Mb and 40Mb per pool" + choices.high = "High, > 40Mb per pool" + choices.specific = "Use specific value" default = "low" - help = "low <= 20Mb per pool. medium between 20Mb and 40Mb per pool. high > 40Mb per pool.
Use specific to set a value with the following option." - [main.php_fpm_config.free_footprint] + [main.php_fpm_config.fpm_free_footprint] + visible = "fpm_footprint == 'specific'" ask = "Memory footprint of the service?" type = "number" default = "0" help = "Free field to specify exactly the footprint in Mb if you don't want to use one of the three previous values." [main.php_fpm_config.fpm_usage] - ask = "Expected usage of the service?" + ask = "Expected usage" + type = "select" choices = ["low", "medium", "high"] default = "low" - help = "low: Personal usage, behind the sso. No RAM footprint when not used, but the impact on the processor can be high if many users are using the service.
medium: Low usage, few people or/and publicly accessible. Low RAM footprint, medium processor footprint when used.
high: High usage, frequently visited website. High RAM footprint, but lower on processor usage and quickly responding." + help = "low: Personal usage, behind the SSO. No RAM footprint when not used, but the impact on the processor can be high if many users are using the service.
medium: Low usage, few people or/and publicly accessible. Low RAM footprint, medium processor footprint when used.
high: High usage, frequently visited website. High RAM footprint, but lower on processor usage and quickly responding." diff --git a/manifest.json b/manifest.json index 3a79c1e..dd43a77 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Open Source Webmail software", "fr": "Webmail Open Source" }, - "version": "1.6.0~ynh2", + "version": "1.6.0~ynh3", "url": "https://roundcube.net/", "upstream": { "license": "GPL-3.0-only", diff --git a/scripts/config b/scripts/config index 3440bd2..91c2de7 100644 --- a/scripts/config +++ b/scripts/config @@ -56,10 +56,10 @@ set__fpm_footprint() { fi } -set__free_footprint() { +set__fpm_free_footprint() { if [ "$fpm_footprint" = "specific" ] then - ynh_app_setting_set --app=$app --key=fpm_footprint --value="$free_footprint" + ynh_app_setting_set --app=$app --key=fpm_footprint --value="$fpm_free_footprint" fi } @@ -70,11 +70,11 @@ set__free_footprint() { ynh_app_config_validate() { _ynh_app_config_validate - if [ "${changed[fpm_usage]}" == "true" ] || [ "${changed[fpm_footprint]}" == "true" ] || [ "${changed[free_footprint]}" == "true" ]; then - # If fpm_footprint is set to 'specific', use $free_footprint value. + if [ "${changed[fpm_usage]}" == "true" ] || [ "${changed[fpm_footprint]}" == "true" ] || [ "${changed[fpm_free_footprint]}" == "true" ]; then + # If fpm_footprint is set to 'specific', use $fpm_free_footprint value. if [ "$fpm_footprint" = "specific" ] then - fpm_footprint=$free_footprint + fpm_footprint=$fpm_free_footprint fi if [ "$fpm_footprint" == "0" ] diff --git a/scripts/install b/scripts/install index c9d76fe..0ac4022 100644 --- a/scripts/install +++ b/scripts/install @@ -27,6 +27,10 @@ language=$YNH_APP_ARG_LANGUAGE app=$YNH_APP_INSTANCE_NAME +fpm_footprint="low" +fpm_free_footprint=0 +fpm_usage="low" + #================================================= # CHECK IF THE APP CAN BE INSTALLED WITH THESE ARGS #================================================= @@ -47,6 +51,9 @@ 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=with_carddav --value=$with_carddav ynh_app_setting_set --app=$app --key=language --value=$language +ynh_app_setting_set --app=$app --key=fpm_footprint --value=$fpm_footprint +ynh_app_setting_set --app=$app --key=fpm_free_footprint --value=$fpm_free_footprint +ynh_app_setting_set --app=$app --key=fpm_usage --value=$fpm_usage #================================================= # STANDARD MODIFICATIONS @@ -101,8 +108,8 @@ ynh_add_nginx_config #================================================= ynh_script_progression --message="Configuring PHP-FPM..." --weight=2 -# Create a dedicated PHP-FPM config -ynh_add_fpm_config --usage=low --footprint=low +# Create a dedicated php-fpm config +ynh_add_fpm_config --usage=$fpm_usage --footprint=$fpm_footprint phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) #================================================= diff --git a/scripts/upgrade b/scripts/upgrade index 488fb83..85e1acc 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -27,6 +27,7 @@ language=$(ynh_app_setting_get --app=$app --key=language) db_pwd=$(ynh_app_setting_get --app=$app --key=mysqlpwd) fpm_footprint=$(ynh_app_setting_get --app=$app --key=fpm_footprint) +fpm_free_footprint=$(ynh_app_setting_get --app=$app --key=fpm_free_footprint) fpm_usage=$(ynh_app_setting_get --app=$app --key=fpm_usage) #================================================= @@ -89,6 +90,12 @@ if [ -z "$fpm_footprint" ]; then ynh_app_setting_set --app=$app --key=fpm_footprint --value=$fpm_footprint fi +# If fpm_free_footprint doesn't exist, create it +if [ -z "$fpm_free_footprint" ]; then + fpm_free_footprint=0 + ynh_app_setting_set --app=$app --key=fpm_free_footprint --value=$fpm_free_footprint +fi + # If fpm_usage doesn't exist, create it if [ -z "$fpm_usage" ]; then fpm_usage=low From d62bf6129bc3c0792faf5fa4a7e8f68edb5c241c Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Thu, 29 Sep 2022 23:21:20 +0200 Subject: [PATCH 35/53] Update _common.sh --- scripts/_common.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/_common.sh b/scripts/_common.sh index 1433a9d..00f49a7 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -15,7 +15,7 @@ YNH_COMPOSER_VERSION=2.3.7 # Plugins version contextmenu_version=3.3.1 automatic_addressbook_version=v0.4.3 -carddav_version=4.4.1 +carddav_version=4.4.3 #================================================= # EXPERIMENTAL HELPERS From 2630f89dae9f00c60bb5847644edb7594e2cd9da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Sun, 2 Oct 2022 09:10:36 +0200 Subject: [PATCH 36/53] Update php-fpm.conf (#151) --- conf/extra_php-fpm.conf | 4 + conf/php-fpm.conf | 433 ---------------------------------------- 2 files changed, 4 insertions(+), 433 deletions(-) create mode 100644 conf/extra_php-fpm.conf delete mode 100644 conf/php-fpm.conf diff --git a/conf/extra_php-fpm.conf b/conf/extra_php-fpm.conf new file mode 100644 index 0000000..14c8d27 --- /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 \ No newline at end of file diff --git a/conf/php-fpm.conf b/conf/php-fpm.conf deleted file mode 100644 index e8885d3..0000000 --- a/conf/php-fpm.conf +++ /dev/null @@ -1,433 +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 = __FINALPATH__ - -; 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 - -php_admin_value[upload_max_filesize] = 30M -php_admin_value[post_max_size] = 30M From ce3d5dcd9a8c32037ae086f06769d0b3d072a181 Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Sun, 2 Oct 2022 07:10:40 +0000 Subject: [PATCH 37/53] 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 1822926..e5d5f14 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ In addition to Roundcube core features, the following are made available with th * Support for PGP encryption with Enigma plugin by default. -**Shipped version:** 1.6.0~ynh2 +**Shipped version:** 1.6.0~ynh3 **Demo:** https://demo.yunohost.org/webmail/ diff --git a/README_fr.md b/README_fr.md index 2aa1a22..14c351d 100644 --- a/README_fr.md +++ b/README_fr.md @@ -28,7 +28,7 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. -**Version incluse :** 1.6.0~ynh2 +**Version incluse :** 1.6.0~ynh3 **Démo :** https://demo.yunohost.org/webmail/ From 350160b2a14c515d36fba14ff94bb2e640c5553c Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Wed, 19 Oct 2022 18:25:42 +0000 Subject: [PATCH 38/53] Auto-update README --- README.md | 1 - README_fr.md | 3 +-- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/README.md b/README.md index e5d5f14..1807081 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,6 @@ In addition to Roundcube core features, the following are made available with th **Shipped version:** 1.6.0~ynh3 - **Demo:** https://demo.yunohost.org/webmail/ ## Screenshots diff --git a/README_fr.md b/README_fr.md index 14c351d..8029dd9 100644 --- a/README_fr.md +++ b/README_fr.md @@ -28,8 +28,7 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. -**Version incluse :** 1.6.0~ynh3 - +**Version incluse :** 1.6.0~ynh3 **Démo :** https://demo.yunohost.org/webmail/ From e008feb51b100086a4aef07b2cd08f37d4b0eedb Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Wed, 3 May 2023 07:14:04 +0000 Subject: [PATCH 39/53] Auto-update README --- README.md | 4 ++-- README_fr.md | 24 ++++++++++++------------ 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index e5d5f14..4181526 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,8 @@ It shall NOT be edited by hand. # Roundcube for YunoHost -[![Integration level](https://dash.yunohost.org/integration/roundcube.svg)](https://dash.yunohost.org/appci/app/roundcube) ![Working status](https://ci-apps.yunohost.org/ci/badges/roundcube.status.svg) ![Maintenance status](https://ci-apps.yunohost.org/ci/badges/roundcube.maintain.svg) +[![Integration level](https://dash.yunohost.org/integration/roundcube.svg)](https://dash.yunohost.org/appci/app/roundcube) ![Working status](https://ci-apps.yunohost.org/ci/badges/roundcube.status.svg) ![Maintenance status](https://ci-apps.yunohost.org/ci/badges/roundcube.maintain.svg) + [![Install Roundcube with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=roundcube) *[Lire ce readme en français.](./README_fr.md)* @@ -29,7 +30,6 @@ In addition to Roundcube core features, the following are made available with th **Shipped version:** 1.6.0~ynh3 - **Demo:** https://demo.yunohost.org/webmail/ ## Screenshots diff --git a/README_fr.md b/README_fr.md index 14c351d..00485d1 100644 --- a/README_fr.md +++ b/README_fr.md @@ -5,15 +5,16 @@ It shall NOT be edited by hand. # Roundcube pour YunoHost -[![Niveau d'intégration](https://dash.yunohost.org/integration/roundcube.svg)](https://dash.yunohost.org/appci/app/roundcube) ![Statut du fonctionnement](https://ci-apps.yunohost.org/ci/badges/roundcube.status.svg) ![Statut de maintenance](https://ci-apps.yunohost.org/ci/badges/roundcube.maintain.svg) +[![Niveau d’intégration](https://dash.yunohost.org/integration/roundcube.svg)](https://dash.yunohost.org/appci/app/roundcube) ![Statut du fonctionnement](https://ci-apps.yunohost.org/ci/badges/roundcube.status.svg) ![Statut de maintenance](https://ci-apps.yunohost.org/ci/badges/roundcube.maintain.svg) + [![Installer Roundcube avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=roundcube) *[Read this readme in english.](./README.md)* -> *Ce package vous permet d'installer Roundcube 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 Roundcube 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 Roundcube est un client IMAP multilingue basé sur un navigateur avec une interface utilisateur semblable à une application. @@ -28,14 +29,13 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. -**Version incluse :** 1.6.0~ynh3 - +**Version incluse :** 1.6.0~ynh3 **Démo :** https://demo.yunohost.org/webmail/ -## Captures d'écran +## Captures d’écran -![Capture d'écran de Roundcube](./doc/screenshots/screenshot.png) +![Capture d’écran de Roundcube](./doc/screenshots/screenshot.png) ## Avertissements / informations importantes @@ -86,9 +86,9 @@ Vous pouvez également télécharger le plugin et le placer dans le répertoire ## Documentations et ressources -* Site officiel de l'app : -* Documentation officielle de l'admin : -* Dépôt de code officiel de l'app : +* Site officiel de l’app : +* Documentation officielle de l’admin : +* Dépôt de code officiel de l’app : * Documentation YunoHost pour cette app : * Signaler un bug : @@ -104,4 +104,4 @@ ou sudo yunohost app upgrade roundcube -u https://github.com/YunoHost-Apps/roundcube_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 9580a3dc74d25ad9bb921ac067a03c460bd01a6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Wed, 3 May 2023 16:29:37 +0200 Subject: [PATCH 40/53] Update _common.sh (#166) * Update _common.sh * Update install * Update upgrade --- scripts/_common.sh | 2 +- scripts/install | 2 +- scripts/upgrade | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/_common.sh b/scripts/_common.sh index 00f49a7..ef28e68 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -15,7 +15,7 @@ YNH_COMPOSER_VERSION=2.3.7 # Plugins version contextmenu_version=3.3.1 automatic_addressbook_version=v0.4.3 -carddav_version=4.4.3 +carddav_version=5.0.1 #================================================= # EXPERIMENTAL HELPERS diff --git a/scripts/install b/scripts/install index 0ac4022..d38c9ef 100644 --- a/scripts/install +++ b/scripts/install @@ -168,7 +168,7 @@ chown -R $app:www-data "$final_path/plugins/enigma/home" # Install CardDAV plugin if [ $with_carddav -eq 1 ] then - ynh_composer_exec --commands="require roundcube/carddav $carddav_version" + ynh_composer_exec --commands="require roundcube/carddav $carddav_version --with-all-dependencies" carddav_tmp_config="../conf/carddav.config.inc.php" carddav_server=0 diff --git a/scripts/upgrade b/scripts/upgrade index 85e1acc..d05db8c 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -220,7 +220,7 @@ then # Update or install CardDAV plugin if [ $with_carddav -eq 1 ] then - ynh_composer_exec --commands="require roundcube/carddav $carddav_version" + ynh_composer_exec --commands="require roundcube/carddav $carddav_version --with-all-dependencies" carddav_tmp_config="../conf/carddav.config.inc.php" carddav_server=0 From 189551c07e5b3a31d93bb0cf9057c8b7017175ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Mon, 22 May 2023 11:07:36 +0200 Subject: [PATCH 41/53] fix --- conf/extra_php-fpm.conf | 4 + conf/php-fpm.conf | 433 ---------------------------------------- 2 files changed, 4 insertions(+), 433 deletions(-) create mode 100644 conf/extra_php-fpm.conf delete mode 100644 conf/php-fpm.conf diff --git a/conf/extra_php-fpm.conf b/conf/extra_php-fpm.conf new file mode 100644 index 0000000..14c8d27 --- /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 \ No newline at end of file diff --git a/conf/php-fpm.conf b/conf/php-fpm.conf deleted file mode 100644 index e8885d3..0000000 --- a/conf/php-fpm.conf +++ /dev/null @@ -1,433 +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 = __FINALPATH__ - -; 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 - -php_admin_value[upload_max_filesize] = 30M -php_admin_value[post_max_size] = 30M From cf7f141fc4734f129a2f257fc05cc32eebc6a643 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Mon, 22 May 2023 12:00:12 +0200 Subject: [PATCH 42/53] Update manifest.json --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.json b/manifest.json index dd43a77..7b93bf6 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Open Source Webmail software", "fr": "Webmail Open Source" }, - "version": "1.6.0~ynh3", + "version": "1.6.0~ynh4", "url": "https://roundcube.net/", "upstream": { "license": "GPL-3.0-only", From ecce91e2f56a570b90bfffec4bc6204efd4c1336 Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Mon, 22 May 2023 10:00:17 +0000 Subject: [PATCH 43/53] 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 4181526..971eed2 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ In addition to Roundcube core features, the following are made available with th * Support for PGP encryption with Enigma plugin by default. -**Shipped version:** 1.6.0~ynh3 +**Shipped version:** 1.6.0~ynh4 **Demo:** https://demo.yunohost.org/webmail/ diff --git a/README_fr.md b/README_fr.md index 00485d1..b39d286 100644 --- a/README_fr.md +++ b/README_fr.md @@ -29,7 +29,7 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. -**Version incluse :** 1.6.0~ynh3 +**Version incluse :** 1.6.0~ynh4 **Démo :** https://demo.yunohost.org/webmail/ From 680c10126c2baf90ade4e9408dfc8b7b0a176d6d Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 2 Jul 2023 08:50:58 +0200 Subject: [PATCH 44/53] fix --- conf/app.src | 4 ++-- manifest.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/conf/app.src b/conf/app.src index aefdce3..07eea55 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://github.com/roundcube/roundcubemail/releases/download/1.6.0/roundcubemail-1.6.0.tar.gz -SOURCE_SUM=1224eaf628888e503c49d0e8a69aa4997e566c3605738d0303d9c7a09722f363 +SOURCE_URL=https://github.com/roundcube/roundcubemail/releases/download/1.6.2/roundcubemail-1.6.2.tar.gz +SOURCE_SUM=5c0b0d798c3074c7bb141ae3f79d2ae1136b9e047b014351b69522656162388b SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index 7b93bf6..061c4aa 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Open Source Webmail software", "fr": "Webmail Open Source" }, - "version": "1.6.0~ynh4", + "version": "1.6.2~ynh1", "url": "https://roundcube.net/", "upstream": { "license": "GPL-3.0-only", From c01fd516b8e3df5670e867f33ac29863e2c4736f Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Sun, 2 Jul 2023 06:51:02 +0000 Subject: [PATCH 45/53] 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 971eed2..7f191d7 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ In addition to Roundcube core features, the following are made available with th * Support for PGP encryption with Enigma plugin by default. -**Shipped version:** 1.6.0~ynh4 +**Shipped version:** 1.6.2~ynh1 **Demo:** https://demo.yunohost.org/webmail/ diff --git a/README_fr.md b/README_fr.md index b39d286..b020346 100644 --- a/README_fr.md +++ b/README_fr.md @@ -29,7 +29,7 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. -**Version incluse :** 1.6.0~ynh4 +**Version incluse :** 1.6.2~ynh1 **Démo :** https://demo.yunohost.org/webmail/ From ca87474f7c305132aab980085afcc11a0bd20d83 Mon Sep 17 00:00:00 2001 From: eric_G <46165813+ericgaspar@users.noreply.github.com> Date: Mon, 16 Oct 2023 16:33:17 +0200 Subject: [PATCH 46/53] 1.6.3 (#179) * 1.6.3 * Auto-update README * 1.6.4 * Auto-update README --------- Co-authored-by: yunohost-bot --- README.md | 3 +-- README_fr.md | 3 +-- conf/app.src | 4 ++-- manifest.json | 2 +- 4 files changed, 5 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 7f191d7..b20eee8 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ In addition to Roundcube core features, the following are made available with th * Support for PGP encryption with Enigma plugin by default. -**Shipped version:** 1.6.2~ynh1 +**Shipped version:** 1.6.4~ynh1 **Demo:** https://demo.yunohost.org/webmail/ @@ -88,7 +88,6 @@ You can also download the plugin and put it under the `plugins/` directory. In t * Official app website: * Official admin documentation: * Upstream app code repository: -* YunoHost documentation for this app: * Report a bug: ## Developer info diff --git a/README_fr.md b/README_fr.md index b020346..c7b7a80 100644 --- a/README_fr.md +++ b/README_fr.md @@ -29,7 +29,7 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. -**Version incluse :** 1.6.2~ynh1 +**Version incluse :** 1.6.4~ynh1 **Démo :** https://demo.yunohost.org/webmail/ @@ -89,7 +89,6 @@ Vous pouvez également télécharger le plugin et le placer dans le répertoire * Site officiel de l’app : * Documentation officielle de l’admin : * Dépôt de code officiel de l’app : -* Documentation YunoHost pour cette app : * Signaler un bug : ## Informations pour les développeurs diff --git a/conf/app.src b/conf/app.src index 07eea55..b7cb0a4 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://github.com/roundcube/roundcubemail/releases/download/1.6.2/roundcubemail-1.6.2.tar.gz -SOURCE_SUM=5c0b0d798c3074c7bb141ae3f79d2ae1136b9e047b014351b69522656162388b +SOURCE_URL=https://github.com/roundcube/roundcubemail/releases/download/1.6.4/roundcubemail-1.6.4.tar.gz +SOURCE_SUM=f116dc5e874ca10e73d04efcb4a5ca90e3ca2a2923c0f0fa5b0f478192677656 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index 061c4aa..40f2689 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Open Source Webmail software", "fr": "Webmail Open Source" }, - "version": "1.6.2~ynh1", + "version": "1.6.4~ynh1", "url": "https://roundcube.net/", "upstream": { "license": "GPL-3.0-only", From cc651fc04842693a10525f57d9ce7148d1ef82e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?E=CC=81ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Thu, 9 Nov 2023 10:39:49 +0100 Subject: [PATCH 47/53] 1.6.5 --- conf/app.src | 4 ++-- manifest.json | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/conf/app.src b/conf/app.src index b7cb0a4..7b90fbd 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://github.com/roundcube/roundcubemail/releases/download/1.6.4/roundcubemail-1.6.4.tar.gz -SOURCE_SUM=f116dc5e874ca10e73d04efcb4a5ca90e3ca2a2923c0f0fa5b0f478192677656 +SOURCE_URL=https://github.com/roundcube/roundcubemail/releases/download/1.6.5/roundcubemail-1.6.5.tar.gz +SOURCE_SUM=6c830faa0674d917c426d9b694793743c51f8bf649cd6e7fc605957bcccd1730 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index 40f2689..07c73bb 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Open Source Webmail software", "fr": "Webmail Open Source" }, - "version": "1.6.4~ynh1", + "version": "1.6.5~ynh1", "url": "https://roundcube.net/", "upstream": { "license": "GPL-3.0-only", @@ -22,7 +22,7 @@ "email": "" }, "requirements": { - "yunohost": ">= 11.0.9" + "yunohost": ">= 11.2" }, "multi_instance": true, "services": [ From e3eef47675f74e259d9b2b2136d0c4cb45d9b083 Mon Sep 17 00:00:00 2001 From: yunohost-bot Date: Thu, 9 Nov 2023 09:39:53 +0000 Subject: [PATCH 48/53] Auto-update README --- README.md | 3 ++- README_fr.md | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index b20eee8..aa783d5 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ In addition to Roundcube core features, the following are made available with th * Support for PGP encryption with Enigma plugin by default. -**Shipped version:** 1.6.4~ynh1 +**Shipped version:** 1.6.5~ynh1 **Demo:** https://demo.yunohost.org/webmail/ @@ -88,6 +88,7 @@ You can also download the plugin and put it under the `plugins/` directory. In t * Official app website: * Official admin documentation: * Upstream app code repository: +* YunoHost Store: * Report a bug: ## Developer info diff --git a/README_fr.md b/README_fr.md index c7b7a80..77686fc 100644 --- a/README_fr.md +++ b/README_fr.md @@ -29,7 +29,7 @@ En plus des fonctionnalités principales de Roundcube, les éléments suivants s * Prise en charge du chiffrement PGP avec le plugin Enigma installé par default. -**Version incluse :** 1.6.4~ynh1 +**Version incluse :** 1.6.5~ynh1 **Démo :** https://demo.yunohost.org/webmail/ @@ -89,6 +89,7 @@ Vous pouvez également télécharger le plugin et le placer dans le répertoire * Site officiel de l’app : * Documentation officielle de l’admin : * Dépôt de code officiel de l’app : +* YunoHost Store: * Signaler un bug : ## Informations pour les développeurs From 921f49b027d01a57d5207f19f1295696b1985252 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin <4533074+alexAubin@users.noreply.github.com> Date: Sun, 12 Nov 2023 18:18:34 +0100 Subject: [PATCH 49/53] upgrade: fix call to bin/update.sh, add -y option, make it consistent with the other call --- scripts/upgrade | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/upgrade b/scripts/upgrade index d05db8c..9456974 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -262,7 +262,7 @@ then # Update JavaScript dependencies (cd "$final_path" - /usr/bin/php$phpversion -q ./bin/update.sh -v ?) + ./bin/update.sh --version="?" -y) # Store the config file checksum into the app settings ynh_store_file_checksum --file="$final_path/config/config.inc.php" From 26601c07c29303c2936dca5af9966b87016624b7 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin <4533074+alexAubin@users.noreply.github.com> Date: Sun, 12 Nov 2023 19:50:33 +0100 Subject: [PATCH 50/53] upgrade: maybe using a subshell aint a good idea, let's try with pushd/popd... --- scripts/upgrade | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/scripts/upgrade b/scripts/upgrade index 9456974..809b100 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -261,8 +261,8 @@ then ynh_replace_string --match_string="^\s*// installed plugins" --replace_string="&\n $installed_plugins" --target_file="$final_path/config/config.inc.php" # Update JavaScript dependencies - (cd "$final_path" - ./bin/update.sh --version="?" -y) + pushd "$final_path" + ./bin/update.sh --version="?" -y # Store the config file checksum into the app settings ynh_store_file_checksum --file="$final_path/config/config.inc.php" @@ -275,8 +275,8 @@ then #================================================= ynh_script_progression --message="Updating $app core..." --weight=4 - ( cd "$final_path" - ynh_exec_warn ./bin/update.sh --version=$oldversion -y) + ynh_exec_warn ./bin/update.sh --version=$oldversion -y + popd fi #================================================= From 493e67ba9749704fc2ecea65e3d0db579a44007c Mon Sep 17 00:00:00 2001 From: Alexandre Aubin <4533074+alexAubin@users.noreply.github.com> Date: Mon, 13 Nov 2023 12:42:07 +0100 Subject: [PATCH 51/53] Update upgrade : let's try to force the update.sh call to be non-interactive... --- scripts/upgrade | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/upgrade b/scripts/upgrade index 809b100..90d30a4 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -262,7 +262,7 @@ then # Update JavaScript dependencies pushd "$final_path" - ./bin/update.sh --version="?" -y + ./bin/update.sh --version="?" -y < "" # Store the config file checksum into the app settings ynh_store_file_checksum --file="$final_path/config/config.inc.php" From 85109ff840713b7d283358d1c2cb8291581a62e2 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin <4533074+alexAubin@users.noreply.github.com> Date: Mon, 13 Nov 2023 20:48:37 +0100 Subject: [PATCH 52/53] Update upgrade: zblerg --- scripts/upgrade | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/upgrade b/scripts/upgrade index 90d30a4..b90479c 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -262,7 +262,7 @@ then # Update JavaScript dependencies pushd "$final_path" - ./bin/update.sh --version="?" -y < "" + ./bin/update.sh --version="?" -y <<< "" # Store the config file checksum into the app settings ynh_store_file_checksum --file="$final_path/config/config.inc.php" From 1768b0bad075d2d451f4ceffc38601942482ddc2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?F=C3=A9lix=20Pi=C3=A9dallu?= Date: Fri, 26 Jan 2024 23:10:47 +0100 Subject: [PATCH 53/53] Use suggestion of COMPOSER_ALLOW_SUPERUSER=1 from @nicofrand --- scripts/upgrade | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/scripts/upgrade b/scripts/upgrade index b90479c..bbf726c 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -78,11 +78,11 @@ if [ -z "$with_carddav" ]; then ynh_app_setting_set --app=$app --key=with_carddav --value=$with_carddav fi - # If language doesn't exist, create it - if [ -z "$language" ]; then + # If language doesn't exist, create it + if [ -z "$language" ]; then language="en_GB" ynh_app_setting_set --app=$app --key=language --value=$language -fi +fi # If fpm_footprint doesn't exist, create it if [ -z "$fpm_footprint" ]; then @@ -262,7 +262,7 @@ then # Update JavaScript dependencies pushd "$final_path" - ./bin/update.sh --version="?" -y <<< "" + COMPOSER_ALLOW_SUPERUSER=1 ./bin/update.sh --version="?" -y <<< "" # Store the config file checksum into the app settings ynh_store_file_checksum --file="$final_path/config/config.inc.php" @@ -275,7 +275,7 @@ then #================================================= ynh_script_progression --message="Updating $app core..." --weight=4 - ynh_exec_warn ./bin/update.sh --version=$oldversion -y + COMPOSER_ALLOW_SUPERUSER=1 ynh_exec_warn ./bin/update.sh --version=$oldversion -y popd fi