diff --git a/actions/matrixsynapse b/actions/matrixsynapse index 6c8bd409e..4d50e4ed1 100755 --- a/actions/matrixsynapse +++ b/actions/matrixsynapse @@ -21,7 +21,11 @@ Configuration helper for Matrix-Synapse server. """ import argparse + +import collections + from ruamel.yaml import round_trip_dump, round_trip_load +from ruamel.yaml.scalarstring import DoubleQuotedScalarString as __ from plinth import action_utils from plinth.modules.matrixsynapse import CONFIG_FILE_PATH @@ -58,6 +62,22 @@ def subcommand_post_install(_): if listener['port'] == 8448: listener['bind_address'] = '0.0.0.0' + # Setup ldap parameters + config.insert(0, 'password_providers', [{}]) + config['password_providers'][0]['module'] = __( + 'ldap_auth_provider.LdapAuthProvider') + ldap_config = { + 'enabled': True, + 'uri': __('ldap://localhost:389'), + 'start_tls': False, + 'base': __('ou=users,dc=thisbox'), + 'attributes': { + 'uid': __('uid'), + 'name': __('uid'), + 'mail': __('') + } + } + config['password_providers'][0]['config'] = ldap_config with open(CONFIG_FILE_PATH, 'w') as config_file: round_trip_dump(config, config_file) diff --git a/plinth/modules/matrixsynapse/__init__.py b/plinth/modules/matrixsynapse/__init__.py index fdb6f9c1d..428a09726 100644 --- a/plinth/modules/matrixsynapse/__init__.py +++ b/plinth/modules/matrixsynapse/__init__.py @@ -36,7 +36,7 @@ version = 1 managed_services = ['matrix-synapse'] -managed_packages = ['matrix-synapse'] +managed_packages = ['matrix-synapse', 'matrix-synapse-ldap3'] name = _('Matrix Synapse')