#!/usr/bin/python3 # SPDX-License-Identifier: AGPL-3.0-or-later """ Configuration helper for Roundcube server. """ import argparse from plinth import action_utils def parse_arguments(): """Return parsed command line arguments as dictionary.""" parser = argparse.ArgumentParser() subparsers = parser.add_subparsers(dest='subcommand', help='Sub command') subparsers.add_parser('pre-install', help='Perform Roundcube pre-install configuration') subparsers.required = True return parser.parse_args() def subcommand_pre_install(_): """Preseed debconf values before packages are installed.""" action_utils.debconf_set_selections([ 'roundcube-core roundcube/dbconfig-install boolean true', 'roundcube-core roundcube/database-type string sqlite3' ]) def main(): """Parse arguments and perform all duties.""" arguments = parse_arguments() subcommand = arguments.subcommand.replace('-', '_') subcommand_method = globals()['subcommand_' + subcommand] subcommand_method(arguments) if __name__ == '__main__': main()