mirror of
https://github.com/spantaleev/matrix-docker-ansible-deploy.git
synced 2025-01-16 05:03:10 +01:00
b017ffd853
* Update docs for Dendrite and Synapse: adopt the common section "Extending the configuration" Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org> * Update docs/configuring-playbook-synapse.md: move down the section "Extending the configuration" Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org> * Update docs for Dendrite and Synapse: remove redundant descriptions Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org> * Update docs/configuring-playbook-conduit.md: add the common section "Extending the configuration" Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org> * Update docs for Conduit and Dendrite: replace "Notes" with "Warnings" plus the warning symbol The information is important and should deserve clear attention. Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org> * Update docs/configuring-playbook-synapse.md: reorganize sections for adjusting the playbook configuration As the section for Synapse Admin is not related to adjusting the configuration, it was moved out of the it Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org> * Update docs/configuring-playbook-synapse.md: on Synapse Admin Based on docs/configuring-playbook-bot-draupnir.md Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org> * Update URLs of the forked Dendrite repository Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org> * Update docs for Conduit and Dendrite: use the common descriptions for introductions - Edit the instruction for adjusting the configuration Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org> * Update docs/configuring-playbook-synapse-admin.md: update the URL of the Dendrite documentation Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org> * Update docs/configuring-playbook-synapse.md: add the sections "Installing" and "Usage" Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org> * Update docs/configuring-playbook-conduit.md: copy an instruction from roles/custom/matrix-conduit/defaults/main.yml Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org> * Update docs for Conduit and Dendrite: fix capitalization Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org> --------- Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org> Co-authored-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
76 lines
3.9 KiB
Markdown
76 lines
3.9 KiB
Markdown
# Configuring Conduit (optional)
|
|
|
|
The playbook can install and configure the [Conduit](https://conduit.rs) Matrix server for you.
|
|
|
|
See the project's [documentation](https://docs.conduit.rs/) to learn what it does and why it might be useful to you.
|
|
|
|
By default, the playbook installs [Synapse](https://github.com/element-hq/synapse) as it's the only full-featured Matrix server at the moment. If that's okay, you can skip this document.
|
|
|
|
⚠️ **Warnings**:
|
|
|
|
- **You can't switch an existing Matrix server's implementation** (e.g. Synapse -> Conduit). Proceed below only if you're OK with losing data or you're dealing with a server on a new domain name, which hasn't participated in the Matrix federation yet.
|
|
|
|
- **Homeserver implementations other than Synapse may not be fully functional**. The playbook may also not assist you in an optimal way (like it does with Synapse). Make yourself familiar with the downsides before proceeding
|
|
|
|
## Adjusting the playbook configuration
|
|
|
|
To use Conduit, you **generally** need to adjust the `matrix_homeserver_implementation: synapse` configuration on your `inventory/host_vars/matrix.example.com/vars.yml` file as below:
|
|
|
|
```yaml
|
|
matrix_homeserver_implementation: conduit
|
|
```
|
|
|
|
### Extending the configuration
|
|
|
|
There are some additional things you may wish to configure about the server.
|
|
|
|
Take a look at:
|
|
|
|
- `roles/custom/matrix-conduit/defaults/main.yml` for some variables that you can customize via your `vars.yml` file
|
|
- `roles/custom/matrix-conduit/templates/conduit.toml.j2` for the server's default configuration
|
|
|
|
If you'd like to have your own different configuration, feel free to copy and paste the original files into your inventory (e.g. in `inventory/host_vars/matrix.example.com/`) and then change the specific host's `vars.yaml` file like this:
|
|
|
|
```yaml
|
|
matrix_conduit_template_conduit_config: "{{ playbook_dir }}/inventory/host_vars/matrix.example.com/conduit.toml.j2"
|
|
```
|
|
|
|
## Creating the first user account
|
|
|
|
Since it is difficult to create the first user account on Conduit (see [famedly/conduit#276](https://gitlab.com/famedly/conduit/-/issues/276) and [famedly/conduit#354](https://gitlab.com/famedly/conduit/-/merge_requests/354)) and it does not support [registering users](registering-users.md) (via the command line or via the playbook) like Synapse and Dendrite do, we recommend the following procedure:
|
|
|
|
1. Add `matrix_conduit_allow_registration: true` to your `vars.yml` the first time around, temporarily
|
|
2. Run the playbook (`ansible-playbook -i inventory/hosts setup.yml --tags=setup-all,start` - see [Installing](installing.md))
|
|
3. Create your first user via Element Web or any other client which supports creating users
|
|
4. Get rid of `matrix_conduit_allow_registration: true` from your `vars.yml`
|
|
5. Run the playbook again (`ansible-playbook -i inventory/hosts setup.yml --tags=setup-conduit,start` would be enough this time)
|
|
6. You can now use your server safely. Additional users can be created by messaging the internal Conduit bot
|
|
|
|
## Configuring bridges / appservices
|
|
|
|
Automatic appservice setup is currently unsupported when using Conduit. After setting up the service as usual you may notice that it is unable to start.
|
|
|
|
You will have to manually register appservices using the the [register-appservice](https://gitlab.com/famedly/conduit/-/blob/next/APPSERVICES.md) command.
|
|
|
|
Find the `registration.yaml` in the `/matrix` directory, for example `/matrix/mautrix-signal/bridge/registration.yaml`, then pass the content to Conduit:
|
|
|
|
@conduit:example.com: register-appservice
|
|
```
|
|
as_token: <token>
|
|
de.sorunome.msc2409.push_ephemeral: true
|
|
hs_token: <token>
|
|
id: signal
|
|
namespaces:
|
|
aliases:
|
|
- exclusive: true
|
|
regex: ^#signal_.+:example\.org$
|
|
users:
|
|
- exclusive: true
|
|
regex: ^@signal_.+:example\.org$
|
|
- exclusive: true
|
|
regex: ^@signalbot:example\.org$
|
|
rate_limited: false
|
|
sender_localpart: _bot_signalbot
|
|
url: http://matrix-mautrix-signal:29328
|
|
```
|