From 8290b52748f2c395a22997d16c88df67dad659ac Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Mon, 7 Mar 2022 12:40:30 +0100 Subject: update to 1.6-beta raise dependency on PHP 7.3 add patch to keep use default_host and smtp_server from https://github.com/roundcube/roundcubemail/pull/8467 --- composer.json | 18 ++++-- plugins/acl/composer.json | 2 +- plugins/additional_message_headers/composer.json | 2 +- plugins/archive/composer.json | 2 +- plugins/attachment_reminder/composer.json | 2 +- plugins/autologon/composer.json | 2 +- plugins/autologout/composer.json | 17 +++++ plugins/database_attachments/composer.json | 2 +- plugins/debug_logger/composer.json | 2 +- plugins/emoticons/composer.json | 2 +- plugins/enigma/composer.json | 2 +- plugins/example_addressbook/composer.json | 2 +- plugins/filesystem_attachments/composer.json | 2 +- plugins/help/composer.json | 2 +- plugins/hide_blockquote/composer.json | 2 +- plugins/http_authentication/composer.json | 2 +- plugins/identicon/composer.json | 2 +- plugins/identity_select/composer.json | 2 +- plugins/jqueryui/composer.json | 2 +- plugins/krb_authentication/composer.json | 2 +- plugins/managesieve/composer.json | 2 +- plugins/markasjunk/composer.json | 2 +- plugins/new_user_dialog/composer.json | 2 +- plugins/new_user_identity/composer.json | 2 +- plugins/newmail_notifier/composer.json | 2 +- plugins/password/composer.json | 2 +- plugins/reconnect/composer.json | 2 +- plugins/redundant_attachments/composer.json | 2 +- plugins/show_additional_headers/composer.json | 2 +- plugins/squirrelmail_usercopy/composer.json | 2 +- plugins/subscriptions_option/composer.json | 2 +- plugins/userinfo/composer.json | 2 +- plugins/vcard_attachments/composer.json | 2 +- plugins/virtuser_file/composer.json | 2 +- plugins/virtuser_query/composer.json | 2 +- plugins/zipdownload/composer.json | 2 +- roundcubemail-1.5-confpath.patch | 81 ------------------------ roundcubemail-1.6-confpath.patch | 81 ++++++++++++++++++++++++ roundcubemail-1.6-legacy.patch | 22 +++++++ roundcubemail.spec | 41 +++++++----- 40 files changed, 191 insertions(+), 137 deletions(-) create mode 100644 plugins/autologout/composer.json delete mode 100644 roundcubemail-1.5-confpath.patch create mode 100644 roundcubemail-1.6-confpath.patch create mode 100644 roundcubemail-1.6-legacy.patch diff --git a/composer.json b/composer.json index f9a28eb..89a57a0 100644 --- a/composer.json +++ b/composer.json @@ -9,24 +9,30 @@ } ], "require": { - "php": ">=5.5.0", + "php": ">=7.3.0", "pear/pear-core-minimal": "~1.10.1", "pear/auth_sasl": "~1.1.0", "pear/mail_mime": "~1.10.0", "pear/net_smtp": "~1.10.0", "pear/crypt_gpg": "~1.6.3", "pear/net_sieve": "~1.4.5", - "roundcube/plugin-installer": "~0.3.0", + "roundcube/plugin-installer": "~0.3.1", "roundcube/rtf-html-php": "~2.1", "masterminds/html5": "~2.7.0", - "endroid/qr-code": "~1.6.5", - "guzzlehttp/guzzle": "^6.5.5", - "kolab/net_ldap3": "~1.1.1" + "bacon/bacon-qr-code": "^2.0.0", + "guzzlehttp/guzzle": "^7.3.0", + "kolab/net_ldap3": "~1.1.1", + "symfony/deprecation-contracts": "2.2" }, "require-dev": { - "phpunit/phpunit": "^4.8.36 || ^5.7.21 || ^6 || ^7" + "phpunit/phpunit": "^9" }, "suggest": { "bjeavons/zxcvbn-php": "^1.0 required for Zxcvbn password strength driver" + }, + "config": { + "allow-plugins": { + "roundcube/plugin-installer": true + } } } diff --git a/plugins/acl/composer.json b/plugins/acl/composer.json index 1583435..888641d 100644 --- a/plugins/acl/composer.json +++ b/plugins/acl/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/additional_message_headers/composer.json b/plugins/additional_message_headers/composer.json index 4f0f15c..08f422d 100644 --- a/plugins/additional_message_headers/composer.json +++ b/plugins/additional_message_headers/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/archive/composer.json b/plugins/archive/composer.json index 4cb752a..9ef4cb1 100644 --- a/plugins/archive/composer.json +++ b/plugins/archive/composer.json @@ -23,7 +23,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/attachment_reminder/composer.json b/plugins/attachment_reminder/composer.json index f512411..0a0e884 100644 --- a/plugins/attachment_reminder/composer.json +++ b/plugins/attachment_reminder/composer.json @@ -23,7 +23,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/autologon/composer.json b/plugins/autologon/composer.json index 2b058ce..5797fb9 100644 --- a/plugins/autologon/composer.json +++ b/plugins/autologon/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/autologout/composer.json b/plugins/autologout/composer.json new file mode 100644 index 0000000..98ab1d9 --- /dev/null +++ b/plugins/autologout/composer.json @@ -0,0 +1,17 @@ +{ + "name": "roundcube/autologout", + "type": "roundcube-plugin", + "description": "Plugin to auto log out users with a POST request sent from an external site.", + "license": "GPLv3+", + "version": "1.0", + "authors": [ + { + "name": "Cover Tower LLC", + "email": "contact@covertower.com" + } + ], + "require": { + "php": ">=7.3.0", + "roundcube/plugin-installer": ">=0.1.3" + } +} diff --git a/plugins/database_attachments/composer.json b/plugins/database_attachments/composer.json index 841e844..16b3311 100644 --- a/plugins/database_attachments/composer.json +++ b/plugins/database_attachments/composer.json @@ -23,7 +23,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3", "roundcube/filesystem_attachments": ">=1.0.0" } diff --git a/plugins/debug_logger/composer.json b/plugins/debug_logger/composer.json index 9c48689..bdd516c 100644 --- a/plugins/debug_logger/composer.json +++ b/plugins/debug_logger/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/emoticons/composer.json b/plugins/emoticons/composer.json index 2f95f60..3b9faa9 100644 --- a/plugins/emoticons/composer.json +++ b/plugins/emoticons/composer.json @@ -23,7 +23,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/enigma/composer.json b/plugins/enigma/composer.json index b19ad9b..f86c03d 100644 --- a/plugins/enigma/composer.json +++ b/plugins/enigma/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": "~0.1.6", "pear/crypt_gpg": "~1.6.3" } diff --git a/plugins/example_addressbook/composer.json b/plugins/example_addressbook/composer.json index 289e25c..3a20e16 100644 --- a/plugins/example_addressbook/composer.json +++ b/plugins/example_addressbook/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/filesystem_attachments/composer.json b/plugins/filesystem_attachments/composer.json index 6dbf360..4bb4466 100644 --- a/plugins/filesystem_attachments/composer.json +++ b/plugins/filesystem_attachments/composer.json @@ -23,7 +23,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/help/composer.json b/plugins/help/composer.json index 3038d42..121b1d0 100644 --- a/plugins/help/composer.json +++ b/plugins/help/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/hide_blockquote/composer.json b/plugins/hide_blockquote/composer.json index 91fb413..9d44b95 100644 --- a/plugins/hide_blockquote/composer.json +++ b/plugins/hide_blockquote/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/http_authentication/composer.json b/plugins/http_authentication/composer.json index 2ff5e3b..e996b15 100644 --- a/plugins/http_authentication/composer.json +++ b/plugins/http_authentication/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/identicon/composer.json b/plugins/identicon/composer.json index 3f3909b..cb1017f 100644 --- a/plugins/identicon/composer.json +++ b/plugins/identicon/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "php-gd": "*", "roundcube/plugin-installer": ">=0.1.3" } diff --git a/plugins/identity_select/composer.json b/plugins/identity_select/composer.json index 53e8b01..07eb570 100644 --- a/plugins/identity_select/composer.json +++ b/plugins/identity_select/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/jqueryui/composer.json b/plugins/jqueryui/composer.json index c5cfbd9..0b7e515 100644 --- a/plugins/jqueryui/composer.json +++ b/plugins/jqueryui/composer.json @@ -23,7 +23,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/krb_authentication/composer.json b/plugins/krb_authentication/composer.json index 973a9e8..9c4c304 100644 --- a/plugins/krb_authentication/composer.json +++ b/plugins/krb_authentication/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/managesieve/composer.json b/plugins/managesieve/composer.json index 72a597c..534cbc5 100644 --- a/plugins/managesieve/composer.json +++ b/plugins/managesieve/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3", "pear/net_sieve": "~1.4.4" } diff --git a/plugins/markasjunk/composer.json b/plugins/markasjunk/composer.json index 2b2a5bb..dc68f61 100644 --- a/plugins/markasjunk/composer.json +++ b/plugins/markasjunk/composer.json @@ -23,7 +23,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/new_user_dialog/composer.json b/plugins/new_user_dialog/composer.json index 8195d0c..2b9cd50 100644 --- a/plugins/new_user_dialog/composer.json +++ b/plugins/new_user_dialog/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/new_user_identity/composer.json b/plugins/new_user_identity/composer.json index 15aed34..4f0ba5c 100644 --- a/plugins/new_user_identity/composer.json +++ b/plugins/new_user_identity/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/newmail_notifier/composer.json b/plugins/newmail_notifier/composer.json index a5ffa7e..d98a8d6 100644 --- a/plugins/newmail_notifier/composer.json +++ b/plugins/newmail_notifier/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/password/composer.json b/plugins/password/composer.json index 87ff8af..fba1cc2 100644 --- a/plugins/password/composer.json +++ b/plugins/password/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/reconnect/composer.json b/plugins/reconnect/composer.json index 2b7649b..23faaa6 100644 --- a/plugins/reconnect/composer.json +++ b/plugins/reconnect/composer.json @@ -17,7 +17,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/redundant_attachments/composer.json b/plugins/redundant_attachments/composer.json index 710076e..b893918 100644 --- a/plugins/redundant_attachments/composer.json +++ b/plugins/redundant_attachments/composer.json @@ -23,7 +23,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3", "roundcube/filesystem_attachments": ">=1.0.0" } diff --git a/plugins/show_additional_headers/composer.json b/plugins/show_additional_headers/composer.json index 45daeb9..7ca83ca 100644 --- a/plugins/show_additional_headers/composer.json +++ b/plugins/show_additional_headers/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/squirrelmail_usercopy/composer.json b/plugins/squirrelmail_usercopy/composer.json index a9342f1..0272b22 100644 --- a/plugins/squirrelmail_usercopy/composer.json +++ b/plugins/squirrelmail_usercopy/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/subscriptions_option/composer.json b/plugins/subscriptions_option/composer.json index 47d024e..a0fbcab 100644 --- a/plugins/subscriptions_option/composer.json +++ b/plugins/subscriptions_option/composer.json @@ -23,7 +23,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/userinfo/composer.json b/plugins/userinfo/composer.json index 8672cea..e41c015 100644 --- a/plugins/userinfo/composer.json +++ b/plugins/userinfo/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/vcard_attachments/composer.json b/plugins/vcard_attachments/composer.json index 11fd431..cd593e9 100644 --- a/plugins/vcard_attachments/composer.json +++ b/plugins/vcard_attachments/composer.json @@ -23,7 +23,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/virtuser_file/composer.json b/plugins/virtuser_file/composer.json index 8b1b240..83c2f07 100644 --- a/plugins/virtuser_file/composer.json +++ b/plugins/virtuser_file/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/virtuser_query/composer.json b/plugins/virtuser_query/composer.json index 4a2f1d3..cc9367b 100644 --- a/plugins/virtuser_query/composer.json +++ b/plugins/virtuser_query/composer.json @@ -18,7 +18,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3" } } diff --git a/plugins/zipdownload/composer.json b/plugins/zipdownload/composer.json index bd56cfb..f5b5ab5 100644 --- a/plugins/zipdownload/composer.json +++ b/plugins/zipdownload/composer.json @@ -23,7 +23,7 @@ } ], "require": { - "php": ">=5.4.0", + "php": ">=7.3.0", "roundcube/plugin-installer": ">=0.1.3", "ext-zip": "*" } diff --git a/roundcubemail-1.5-confpath.patch b/roundcubemail-1.5-confpath.patch deleted file mode 100644 index 3ed0639..0000000 --- a/roundcubemail-1.5-confpath.patch +++ /dev/null @@ -1,81 +0,0 @@ -diff -up ./config/defaults.inc.php.rpm ./config/defaults.inc.php ---- ./config/defaults.inc.php.rpm 2021-02-25 20:37:25.000000000 +0100 -+++ ./config/defaults.inc.php 2021-04-22 10:52:01.854393745 +0200 -@@ -517,11 +517,11 @@ $config['user_aliases'] = false; - // use this folder to store log files - // must be writeable for the user who runs PHP process (Apache user if mod_php is being used) - // This is used by the 'file' log driver. --$config['log_dir'] = RCUBE_INSTALL_PATH . 'logs/'; -+$config['log_dir'] = '/var/log/roundcubemail/'; - - // Location of temporary saved files such as attachments and cache files - // must be writeable for the user who runs PHP process (Apache user if mod_php is being used) --$config['temp_dir'] = RCUBE_INSTALL_PATH . 'temp/'; -+$config['temp_dir'] = '/var/lib/roundcubemail/temp/'; - - // expire files in temp_dir after 48 hours - // possible units: s, m, h, d, w -@@ -751,7 +751,7 @@ $config['mime_magic'] = null; - // This is used to derive mime-types from the filename extension or vice versa. - // Such a file is usually part of the apache webserver. If you don't find a file named mime.types on your system, - // download it from http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types --$config['mime_types'] = null; -+$config['mime_types'] = '/etc/mime.types'; - - // path to imagemagick identify binary (if not set we'll use Imagick or GD extensions) - $config['im_identify_path'] = null; -@@ -1417,3 +1417,7 @@ $config['message_show_email'] = false; - // 0 - Reply-All always - // 1 - Reply-List if mailing list is detected - $config['reply_all_mode'] = 0; -+ -+// Keys directory for all users. -+// Must be writeable by PHP process, and not in the web server document root -+$config['enigma_pgp_homedir'] = '/var/lib/roundcubemail/enigma'; -diff -up ./plugins/enigma/config.inc.php.dist.rpm ./plugins/enigma/config.inc.php.dist ---- ./plugins/enigma/config.inc.php.dist.rpm 2021-02-25 20:37:25.000000000 +0100 -+++ ./plugins/enigma/config.inc.php.dist 2021-04-22 10:49:25.686954741 +0200 -@@ -12,10 +12,6 @@ $config['enigma_smime_driver'] = 'phpssl - // Enables logging of enigma operations (including Crypt_GPG debug info) - $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'] = null; -- - // 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. - $config['enigma_pgp_binary'] = ''; -diff -up ./program/include/iniset.php.rpm ./program/include/iniset.php ---- ./program/include/iniset.php.rpm 2021-02-25 20:37:26.000000000 +0100 -+++ ./program/include/iniset.php 2021-04-22 10:53:09.427158482 +0200 -@@ -28,7 +28,7 @@ if (!defined('INSTALL_PATH')) { - } - - if (!defined('RCMAIL_CONFIG_DIR')) { -- define('RCMAIL_CONFIG_DIR', getenv('ROUNDCUBE_CONFIG_DIR') ?: (INSTALL_PATH . 'config')); -+ define('RCMAIL_CONFIG_DIR', '/etc/roundcubemail'); - } - - if (!defined('RCUBE_LOCALIZATION_DIR')) { -@@ -36,7 +36,7 @@ if (!defined('RCUBE_LOCALIZATION_DIR')) - } - - define('RCUBE_INSTALL_PATH', INSTALL_PATH); --define('RCUBE_CONFIG_DIR', RCMAIL_CONFIG_DIR.'/'); -+define('RCUBE_CONFIG_DIR', '/etc/roundcubemail/'); - - // Show basic error message on fatal PHP error - register_shutdown_function('rcmail_fatal_error'); -diff -up ./program/lib/Roundcube/bootstrap.php.rpm ./program/lib/Roundcube/bootstrap.php ---- ./program/lib/Roundcube/bootstrap.php.rpm 2021-02-25 20:37:26.000000000 +0100 -+++ ./program/lib/Roundcube/bootstrap.php 2021-04-22 10:49:25.686954741 +0200 -@@ -71,7 +71,7 @@ if (!defined('RCUBE_INSTALL_PATH')) { - } - - if (!defined('RCUBE_CONFIG_DIR')) { -- define('RCUBE_CONFIG_DIR', RCUBE_INSTALL_PATH . 'config/'); -+ define('RCUBE_CONFIG_DIR', '/etc/roundcubemail/'); - } - - if (!defined('RCUBE_PLUGINS_DIR')) { diff --git a/roundcubemail-1.6-confpath.patch b/roundcubemail-1.6-confpath.patch new file mode 100644 index 0000000..0b372ee --- /dev/null +++ b/roundcubemail-1.6-confpath.patch @@ -0,0 +1,81 @@ +diff -up ./config/defaults.inc.php.rpm ./config/defaults.inc.php +--- ./config/defaults.inc.php.rpm 2022-03-06 21:32:08.000000000 +0100 ++++ ./config/defaults.inc.php 2022-03-07 11:48:41.252956405 +0100 +@@ -525,11 +525,11 @@ $config['user_aliases'] = false; + // use this folder to store log files + // must be writeable for the user who runs PHP process (Apache user if mod_php is being used) + // This is used by the 'file' log driver. +-$config['log_dir'] = RCUBE_INSTALL_PATH . 'logs/'; ++$config['log_dir'] = '/var/log/roundcubemail/'; + + // Location of temporary saved files such as attachments and cache files + // must be writeable for the user who runs PHP process (Apache user if mod_php is being used) +-$config['temp_dir'] = RCUBE_INSTALL_PATH . 'temp/'; ++$config['temp_dir'] = '/var/lib/roundcubemail/temp/'; + + // expire files in temp_dir after 48 hours + // possible units: s, m, h, d, w +@@ -763,7 +763,7 @@ $config['mime_magic'] = null; + // This is used to derive mime-types from the filename extension or vice versa. + // Such a file is usually part of the apache webserver. If you don't find a file named mime.types on your system, + // download it from http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types +-$config['mime_types'] = null; ++$config['mime_types'] = '/etc/mime.types'; + + // path to imagemagick identify binary (if not set we'll use Imagick or GD extensions) + $config['im_identify_path'] = null; +@@ -1452,3 +1452,7 @@ $config['message_show_email'] = false; + // 0 - Reply-All always + // 1 - Reply-List if mailing list is detected + $config['reply_all_mode'] = 0; ++ ++// Keys directory for all users. ++// Must be writeable by PHP process, and not in the web server document root ++$config['enigma_pgp_homedir'] = '/var/lib/roundcubemail/enigma'; +diff -up ./plugins/enigma/config.inc.php.dist.rpm ./plugins/enigma/config.inc.php.dist +--- ./plugins/enigma/config.inc.php.dist.rpm 2022-03-06 21:32:08.000000000 +0100 ++++ ./plugins/enigma/config.inc.php.dist 2022-03-07 11:48:41.252956405 +0100 +@@ -12,10 +12,6 @@ $config['enigma_smime_driver'] = 'phpssl + // Enables logging of enigma operations (including Crypt_GPG debug info) + $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'] = null; +- + // 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. + $config['enigma_pgp_binary'] = ''; +diff -up ./program/include/iniset.php.rpm ./program/include/iniset.php +--- ./program/include/iniset.php.rpm 2022-03-06 21:32:09.000000000 +0100 ++++ ./program/include/iniset.php 2022-03-07 11:49:54.668718920 +0100 +@@ -32,7 +32,7 @@ if (!defined('INSTALL_PATH')) { + } + + if (!defined('RCMAIL_CONFIG_DIR')) { +- define('RCMAIL_CONFIG_DIR', getenv('ROUNDCUBE_CONFIG_DIR') ?: (INSTALL_PATH . 'config')); ++ define('RCMAIL_CONFIG_DIR', '/etc/roundcubemail'); + } + + if (!defined('RCUBE_LOCALIZATION_DIR')) { +@@ -40,7 +40,7 @@ if (!defined('RCUBE_LOCALIZATION_DIR')) + } + + define('RCUBE_INSTALL_PATH', INSTALL_PATH); +-define('RCUBE_CONFIG_DIR', RCMAIL_CONFIG_DIR.'/'); ++define('RCUBE_CONFIG_DIR', '/etc/roundcubemail/'); + + // Show basic error message on fatal PHP error + register_shutdown_function('rcmail_error_handler'); +diff -up ./program/lib/Roundcube/bootstrap.php.rpm ./program/lib/Roundcube/bootstrap.php +--- ./program/lib/Roundcube/bootstrap.php.rpm 2022-03-06 21:32:09.000000000 +0100 ++++ ./program/lib/Roundcube/bootstrap.php 2022-03-07 11:48:41.252956405 +0100 +@@ -71,7 +71,7 @@ if (!defined('RCUBE_INSTALL_PATH')) { + } + + if (!defined('RCUBE_CONFIG_DIR')) { +- define('RCUBE_CONFIG_DIR', RCUBE_INSTALL_PATH . 'config/'); ++ define('RCUBE_CONFIG_DIR', '/etc/roundcubemail/'); + } + + if (!defined('RCUBE_PLUGINS_DIR')) { diff --git a/roundcubemail-1.6-legacy.patch b/roundcubemail-1.6-legacy.patch new file mode 100644 index 0000000..dc88baf --- /dev/null +++ b/roundcubemail-1.6-legacy.patch @@ -0,0 +1,22 @@ +From 425c93ff6096d9bf6e7cfdba228ecf4fcdc6b3d5 Mon Sep 17 00:00:00 2001 +From: Remi Collet +Date: Mon, 7 Mar 2022 12:31:42 +0100 +Subject: [PATCH] add imap and smtp host in legacy config options + +--- + program/lib/Roundcube/rcube_config.php | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/program/lib/Roundcube/rcube_config.php b/program/lib/Roundcube/rcube_config.php +index e706226651..d7bb8463fa 100644 +--- a/program/lib/Roundcube/rcube_config.php ++++ b/program/lib/Roundcube/rcube_config.php +@@ -55,6 +55,8 @@ class rcube_config + 'mail_read_time' => 'preview_pane_mark_read', + 'session_debug' => 'log_session', + 'redundant_attachments_cache_ttl' => 'redundant_attachments_memcache_ttl', ++ 'imap_host' => 'default_host', ++ 'smtp_host' => 'smtp_server', + ]; + + /** diff --git a/roundcubemail.spec b/roundcubemail.spec index 4a2d453..5adcddc 100644 --- a/roundcubemail.spec +++ b/roundcubemail.spec @@ -18,8 +18,8 @@ %else %global with_phpfpm 0 %endif -%global upstream_version 1.5.2 -#global upstream_prever rc +%global upstream_version 1.6 +%global upstream_prever beta %global roundcubedir %{_datadir}/roundcubemail %global _logdir /var/log @@ -51,10 +51,13 @@ Source4: roundcubemail-README-rpm.txt Source5: roundcubemail-bundled.php # Non-upstreamable: Adjusts config path to Fedora policy -Patch1: roundcubemail-1.5-confpath.patch +Patch1: roundcubemail-1.6-confpath.patch +# See https://github.com/roundcube/roundcubemail/pull/846 +Patch2: roundcubemail-1.6-legacy.patch BuildArch: noarch +BuildRequires: php(language) >= 7.3 # For test BuildRequires: php-cli @@ -67,6 +70,7 @@ Requires: php(httpd) Requires: httpd Requires: mod_php %endif +Requires: php(language) >= 7.3 Requires: php-ctype Requires: php-curl Requires: php-date @@ -128,23 +132,22 @@ Provides: bundled(js-jstimezonedetect) = 1.0.7 Provides: bundled(js-publickey) = 0e011cb1 Provides: bundled(js-tinymce) = 5.8.2 Provides: bundled(js-tinymce-langs) = 5.8.2 -Provides: bundled(js-openpgp) = 4.10.9 +Provides: bundled(js-openpgp) = 5.0.0 Provides: bundled(js-codemirror) = 5.58.3 Provides: bundled(js-bootstrap) = 4.5.3 Provides: bundled(js-lessjs) = 3.13.0 # Bundled PHP libraries # see vendor/composer/installed.json -Provides: bundled(php-endroid-qr-code) = 1.6.6 -Provides: bundled(php-guzzlehttp-guzzle) = 6.5.5 +Provides: bundled(php-dasprid-enum) = 1.0.3 +Provides: bundled(php-guzzlehttp-guzzle) = 7.4.1 Provides: bundled(php-guzzlehttp-promises) = 1.5.1 -Provides: bundled(php-guzzlehttp-psr7) = 1.8.3 +Provides: bundled(php-guzzlehttp-psr7) = 2.1.0 Provides: bundled(php-kolab-net-ldap3) = v1.1.3 Provides: bundled(php-masterminds-html5) = 2.7.5 -Provides: bundled(php-paragonie-random-compat) = v2.0.20 Provides: bundled(php-pear-auth-sasl) = v1.1.0 Provides: bundled(php-pear-console-commandline) = v1.2.4 Provides: bundled(php-pear-console-getopt) = v1.4.3 -Provides: bundled(php-pear-crypt-gpg) = v1.6.6 +Provides: bundled(php-pear-crypt-gpg) = v1.6.7 Provides: bundled(php-pear-mail-mime) = 1.10.11 Provides: bundled(php-pear-net-ldap2) = v2.2.0 Provides: bundled(php-pear-net-sieve) = 1.4.5 @@ -152,14 +155,13 @@ Provides: bundled(php-pear-net-smtp) = 1.10.0 Provides: bundled(php-pear-net-socket) = v1.2.2 Provides: bundled(php-pear-pear-core-minimal) = v1.10.11 Provides: bundled(php-pear-pear-exception) = v1.0.2 +Provides: bundled(php-psr-http-client) = 1.0.1 +Provides: bundled(php-psr-http-factory) = 1.0.1 Provides: bundled(php-psr-http-message) = 1.0.1 -Provides: bundled(php-ralouphie-getallheaders) = 2.0.5 +Provides: bundled(php-ralouphie-getallheaders) = 3.0.3 Provides: bundled(php-roundcube-plugin-installer) = 0.3.1 Provides: bundled(php-roundcube-rtf-html-php) = v2.1 -Provides: bundled(php-symfony-polyfill-intl-idn) = v1.19.0 -Provides: bundled(php-symfony-polyfill-intl-normalizer) = v1.19.0 -Provides: bundled(php-symfony-polyfill-php70) = v1.19.0 -Provides: bundled(php-symfony-polyfill-php72) = v1.19.0 +Provides: bundled(php-symfony-deprecation-contracts) = v2.2.0 %description @@ -176,13 +178,14 @@ CSS 2. %prep %setup -q -n roundcubemail-%{upstream_version}%{?upstream_prever:-%{upstream_prever}} %patch1 -p1 -b .rpm +%patch2 -p1 : PHP bundled libraries php %{SOURCE5} vendor/composer/installed.json %if %{with internet} : JS bundled libraries -php %{SOURCE5} https://raw.githubusercontent.com/roundcube/roundcubemail/%{version}/jsdeps.json +php %{SOURCE5} https://raw.githubusercontent.com/roundcube/roundcubemail/%{upstream_version}%{?upstream_prever:-%{upstream_prever}}/jsdeps.json %endif # fix permissions and remove any .htaccess files @@ -258,7 +261,7 @@ rm %{buildroot}%{roundcubedir}/composer.json-dist php -r ' require "%{buildroot}%{roundcubedir}/vendor/autoload.php"; $cl = [ "Auth_SASL", "Crypt_GPG", "Mail_mime", "Net_LDAP2", "Masterminds\\HTML5", "GuzzleHttp\\Client", - "Net_LDAP3", "Net_Sieve", "Net_SMTP", "PEAR" , "Endroid\\QrCode\\QrCode", "RtfHtmlPhp\\Document" ]; + "Net_LDAP3", "Net_Sieve", "Net_SMTP", "PEAR" , "BaconQrCode\\Writer", "RtfHtmlPhp\\Document" ]; $ret = 0; foreach ($cl as $c) { if (class_exists($c)) { @@ -311,6 +314,12 @@ fi %changelog +* Mon Mar 7 2022 Remi Collet - 1.6~beta-1 +- update to 1.6-beta +- raise dependency on PHP 7.3 +- add patch to keep use default_host and smtp_server + from https://github.com/roundcube/roundcubemail/pull/8467 + * Thu Dec 30 2021 Remi Collet - 1.5.2-1 - update to 1.5.2 -- cgit