From ad0ba39c26d3793ed5bbf964c62a85c2d8140cad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Lebleu?= Date: Wed, 30 Mar 2016 14:38:37 +0200 Subject: [PATCH] [enh] Add installed plugins dynamically to Roundcube config --- README.md | 1 - conf/config.inc.php | 29 +++++++++++++---------------- scripts/install | 6 ++++++ scripts/upgrade | 6 ++++++ 4 files changed, 25 insertions(+), 17 deletions(-) diff --git a/README.md b/README.md index 096d3e4..efbfa3c 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,6 @@ report issues and/or improvements!** ## TODO - * Add enabled plugins dynamically to the config file * Ask for rcmcarddav installation and/or check if *Baikal* or *ownCloud* is installed * Test to upgrade from the current Roundcube version diff --git a/conf/config.inc.php b/conf/config.inc.php index 6d6b7b9..c2481f4 100644 --- a/conf/config.inc.php +++ b/conf/config.inc.php @@ -80,22 +80,6 @@ $config['product_name'] = 'YunoHost Webmail'; // YOUR KEY MUST BE DIFFERENT THAN THE SAMPLE VALUE FOR SECURITY REASONS $config['des_key'] = '#DESKEY#'; -// List of active plugins (in plugins/ directory) -$config['plugins'] = array( - 'archive', - 'zipdownload', - // additionnal plugins for YunoHost - 'http_authentication', - 'managesieve', - 'markasjunk', - 'new_user_dialog', - 'new_user_identity', - 'contextmenu', - 'automatic_addressbook', - 'ldapAliasSync', -// 'carddav', -); - // skin name: folder from skins/ $config['skin'] = 'larry'; @@ -118,6 +102,19 @@ $config['ldap_public']['yunohost'] = array( ), ); +// List of active plugins (in plugins/ directory) +$config['plugins'] = array( + 'archive', + 'zipdownload', + // additionnal plugins + 'http_authentication', + 'managesieve', + 'markasjunk', + 'new_user_dialog', + 'new_user_identity', + // installed plugins +); + // ---------------------------------- // PLUGINS // ---------------------------------- diff --git a/scripts/install b/scripts/install index 5a5d78b..5a6bb27 100644 --- a/scripts/install +++ b/scripts/install @@ -58,10 +58,16 @@ sudo chown -R www-data: "$DESTDIR" # Install some plugins manually sudo cp -r ../sources/plugins/ldapAliasSync "${DESTDIR}/plugins" sudo chown -R www-data: "${DESTDIR}/plugins/ldapAliasSync" +installed_plugins=" 'ldapAliasSync'," # Install additional plugins exec_composer www-data "$DESTDIR" require "johndoh/contextmenu dev-release-2.1" exec_composer www-data "$DESTDIR" require "sblaisot/automatic_addressbook" +installed_plugins+=" 'contextmenu', 'automatic_addressbook'," + +# Update Roundcube configuration +sudo sed -i "s#^\s*// installed plugins#&\n ${installed_plugins}#" \ + "${DESTDIR}/config/config.inc.php" ## Install rcmcarddav TODO: if baikal is detected #sudo yunohost app list -f baikal --json | grep '"installed": true' diff --git a/scripts/upgrade b/scripts/upgrade index 13b4aa0..00565d7 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -70,10 +70,16 @@ fi sudo rm -rf "${DESTDIR}/plugins/ldapAliasSync" sudo cp -r ../sources/plugins/ldapAliasSync "${DESTDIR}/plugins" sudo chown -R www-data: "${DESTDIR}/plugins/ldapAliasSync" +installed_plugins=" 'ldapAliasSync'," # Update or install additional plugins exec_composer www-data "$DESTDIR" require "johndoh/contextmenu dev-release-2.1" exec_composer www-data "$DESTDIR" require "sblaisot/automatic_addressbook" +installed_plugins+=" 'contextmenu', 'automatic_addressbook'," + +# Update Roundcube configuration +sudo sed -i "s#^\s*// installed plugins#&\n ${installed_plugins}#" \ + "$rc_conf" ## Install rcmcarddav if baikal is detected #sudo yunohost app list -f baikal --json | grep '"installed": true'