diff --git a/actions/roundcube b/actions/roundcube index 890acb471..02f771d7e 100755 --- a/actions/roundcube +++ b/actions/roundcube @@ -5,9 +5,14 @@ Configuration helper for Roundcube server. """ import argparse +import json +import pathlib +import re from plinth import action_utils +_config_file = pathlib.Path('/etc/roundcube/freedombox-config.php') + def parse_arguments(): """Return parsed command line arguments as dictionary.""" @@ -16,6 +21,11 @@ def parse_arguments(): subparsers.add_parser('pre-install', help='Perform Roundcube pre-install configuration') + subparsers.add_parser('setup', help='Setup basic configuration') + subparsers.add_parser('get-config', help='Print current configuration') + subparser = subparsers.add_parser('set-config', help='Set configuration') + subparser.add_argument('--local-only', choices=['True', 'False'], + help='Set current configuration') subparsers.required = True return parser.parse_args() @@ -29,6 +39,51 @@ def subcommand_pre_install(_): ]) +def subcommand_setup(_): + """Add FreedomBox configuration and include from main configuration.""" + if not _config_file.exists(): + _config_file.write_text('