Skip to content

Commit 6a07fb1

Browse files
authored
Merge pull request #3902 from luixxiul/fix
Edit docs: adopt the common instruction
2 parents c97dd0b + 516a003 commit 6a07fb1

6 files changed

+68
-45
lines changed

docs/configuring-playbook-dimension.md

Lines changed: 32 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,45 @@
11
# Setting up Dimension integration manager (optional, unmaintained)
22

3-
**[Dimension](https://dimension.t2bot.io) can only be installed after Matrix services are installed and running.** If you're just installing Matrix services for the first time, please continue with the [Configuration](configuring-playbook.md) / [Installation](installing.md) flow and come back here later.
3+
**Notes**:
4+
- Dimension is **[officially unmaintained](https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2806#issuecomment-1673559299)**. We recommend not bothering with installing it.
5+
- This playbook now supports running Dimension in both a federated and [unfederated](https://github.com/turt2live/matrix-dimension/blob/master/docs/unfederated.md) environments. This is handled automatically based on the value of `matrix_homeserver_federation_enabled`. Enabling Dimension, means that the `openid` API endpoints will be exposed on the Matrix Federation port (usually `8448`), even if [federation](configuring-playbook-federation.md) is disabled. It's something to be aware of, especially in terms of firewall whitelisting (make sure port `8448` is accessible).
6+
7+
The playbook can install and configure the [Dimension](https://dimension.t2bot.io) integration manager for you.
8+
9+
See the project's [documentation](https://github.com/turt2live/matrix-dimension/blob/master/README.md) to learn what it does and why it might be useful to you.
10+
11+
## Prerequisites
12+
13+
### Install Matrix services
14+
15+
Dimension can only be installed after Matrix services are installed and running. If you're just installing Matrix services for the first time, please continue with the [Configuration](configuring-playbook.md) / [Installation](installing.md) and come back here later.
16+
17+
### Register a dedicated Matrix user (optional, recommended)
18+
19+
We recommend that you create a dedicated Matrix user for Dimension (`dimension` is a good username).
20+
21+
Generate a strong password for the user. You can create one with a command like `pwgen -s 64 1`.
22+
23+
You can use the playbook to [register a new user](registering-users.md):
24+
25+
```sh
26+
ansible-playbook -i inventory/hosts setup.yml --extra-vars='username=dimension password=PASSWORD_FOR_THE_USER admin=no' --tags=register-user
27+
```
28+
29+
### Obtain an access token
430

5-
**Note**: Dimension is **[officially unmaintained](https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2806#issuecomment-1673559299)**. We recommend not bothering with installing it.
31+
Dimension requires an access token to be able to connect to your homeserver. Refer to the documentation on [how to obtain an access token](obtaining-access-tokens.md).
632

7-
**Note**: This playbook now supports running [Dimension](https://dimension.t2bot.io) in both a federated and [unfederated](https://github.com/turt2live/matrix-dimension/blob/master/docs/unfederated.md) environments. This is handled automatically based on the value of `matrix_homeserver_federation_enabled`. Enabling Dimension, means that the `openid` API endpoints will be exposed on the Matrix Federation port (usually `8448`), even if [federation](configuring-playbook-federation.md) is disabled. It's something to be aware of, especially in terms of firewall whitelisting (make sure port `8448` is accessible).
33+
⚠️ **Warning**: Access tokens are sensitive information. Do not include them in any bug reports, messages, or logs. Do not share the access token with anyone.
834

935
## Adjusting the playbook configuration
1036

11-
To enable Dimension, add this to your configuration file (`inventory/host_vars/matrix.example.com/vars.yml`):
37+
To enable Dimension, add this to your configuration file (`inventory/host_vars/matrix.example.com/vars.yml`). Make sure to replace `ACCESS_TOKEN_HERE` with the one created [above](#obtain-an-access-token).
1238

1339
```yaml
1440
matrix_dimension_enabled: true
41+
42+
matrix_dimension_access_token: "ACCESS_TOKEN_HERE"
1543
```
1644
1745
### Define admin users
@@ -26,22 +54,6 @@ matrix_dimension_admins:
2654

2755
The admin interface is accessible within Element Web by accessing it in any room and clicking the cog wheel/settings icon in the top right. Currently, Dimension can be opened in Element Web by the "Add widgets, bridges, & bots" link in the room information.
2856

29-
### Obtain an access token
30-
31-
We recommend that you create a dedicated Matrix user for Dimension (`dimension` is a good username). Follow our [Registering users](registering-users.md) guide to learn how to register **a regular (non-admin) user**.
32-
33-
You are required to specify an access token (belonging to this new user) for Dimension to work. Refer to the documentation on [how to obtain an access token](obtaining-access-tokens.md).
34-
35-
⚠️ **Warning**: Access tokens are sensitive information. Do not include them in any bug reports, messages, or logs. Do not share the access token with anyone.
36-
37-
Add access token to your configuration file (`inventory/host_vars/matrix.example.com/vars.yml`):
38-
39-
```yaml
40-
matrix_dimension_access_token: "YOUR ACCESS TOKEN HERE"
41-
```
42-
43-
For more information on how to acquire an access token, visit [https://t2bot.io/docs/access_tokens](https://t2bot.io/docs/access_tokens).
44-
4557
### Adjusting the Dimension URL
4658

4759
By default, this playbook installs Dimension on the `dimension.` subdomain (`dimension.example.com`) and requires you to [adjust your DNS records](#adjusting-dns-records).

docs/configuring-playbook-email2matrix.md

Lines changed: 25 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -22,41 +22,52 @@ If you really need to run an email server on the Matrix machine for other purpos
2222

2323
For details about using Email2Matrix alongside [Postfix](http://www.postfix.org/), see [here](https://github.com/devture/email2matrix/blob/master/docs/setup_with_postfix.md).
2424

25-
### Creating a user
25+
### Register a dedicated Matrix user (optional, recommended)
2626

27-
Before enabling Email2Matrix, you'd most likely wish to create a dedicated user (or more) that would be sending messages on the Matrix side. Take note of the user's ID as it needs to be specified as `MatrixUserId` on your `inventory/host_vars/matrix.example.com/vars.yml` file later.
27+
We recommend that you create a dedicated Matrix user for Email2Matrix.
2828

29-
Refer to [Registering users](registering-users.md) for ways to create a user. A regular (non-admin) user works best.
29+
Generate a strong password for the user. You can create one with a command like `pwgen -s 64 1`.
3030

31-
### Creating a shared room
31+
You can use the playbook to [register a new user](registering-users.md):
3232

33-
After creating the sender user, you should create one or more Matrix rooms that you share with that user. It doesn't matter who creates and owns the rooms and who joins later (you or the sender user).
33+
```sh
34+
ansible-playbook -i inventory/hosts setup.yml --extra-vars='username=email2matrix password=PASSWORD_FOR_THE_USER admin=no' --tags=register-user
35+
```
3436

35-
What matters is that both you and the sender user are part of the same room and that the sender user has enough privileges in the room to be able to send messages there.
37+
Take note of the user's ID as it needs to be specified as `MatrixUserId` on your `inventory/host_vars/matrix.example.com/vars.yml` file later.
3638

37-
Inviting additional people to the room is okay too.
39+
### Obtain an access token
3840

39-
Take note of each room's room ID (different clients show the room ID in a different place). You'll need the room ID when [configuring the playbook](#adjusting-the-playbook-configuration) below.
41+
Email2Matrix requires an access token for the sender user to be able to send messages to the room. Refer to the documentation on [how to obtain an access token](obtaining-access-tokens.md).
4042

41-
### Obtain an access token for the sender user
43+
⚠️ **Warning**: Access tokens are sensitive information. Do not include them in any bug reports, messages, or logs. Do not share the access token with anyone.
4244

43-
In order for the sender user created above to be able to send messages to the room, we'll need to obtain an access token for it. Refer to the documentation on [how to obtain an access token](obtaining-access-tokens.md).
45+
### Join to rooms as the sender user manually
4446

45-
⚠️ **Warning**: Access tokens are sensitive information. Do not include them in any bug reports, messages, or logs. Do not share the access token with anyone.
47+
ℹ️ **Email2Matrix does not accept room invitations automatically**. To deliver messages to rooms, the sender user must be joined to all rooms manually.
48+
49+
For each new room you would like the user to deliver messages to, invite the user to the room.
50+
51+
Then, log in as the sender user using any Matrix client of your choosing, accept the room invitation from the user's account.
52+
53+
Make sure that you and the sender user are part of the same room and that the sender user has enough privileges in the room to be able to send messages there, then log out.
54+
55+
Take note of each room's room ID (different clients show the room ID in a different place). You'll need the room ID when [configuring the playbook](#adjusting-the-playbook-configuration) below.
4656

4757
## Adjusting the playbook configuration
4858

49-
After doing the preparation steps above, add the following configuration to your `inventory/host_vars/matrix.example.com/vars.yml` file (adapt to your needs):
59+
To enable Email2Matrix, add the following configuration to your `inventory/host_vars/matrix.example.com/vars.yml` file. Make sure to replace `ACCESS_TOKEN_FOR_EMAIL2MATRIX1_HERE` and `ACCESS_TOKEN_FOR_EMAIL2MATRIX2_HERE` with the ones created [above](#obtain-an-access-token).
5060

5161
```yaml
5262
matrix_email2matrix_enabled: true
5363

64+
# You need at least 1 mailbox.
5465
matrix_email2matrix_matrix_mappings:
5566
- MailboxName: "mailbox1"
5667
MatrixRoomId: "!qporfwt:{{ matrix_domain }}"
5768
MatrixHomeserverUrl: "{{ matrix_homeserver_url }}"
5869
MatrixUserId: "@email2matrix1:{{ matrix_domain }}"
59-
MatrixAccessToken: "MATRIX_ACCESS_TOKEN_HERE"
70+
MatrixAccessToken: "ACCESS_TOKEN_FOR_EMAIL2MATRIX1_HERE"
6071
IgnoreSubject: false
6172
IgnoreBody: false
6273
SkipMarkdown: false
@@ -65,7 +76,7 @@ matrix_email2matrix_matrix_mappings:
6576
MatrixRoomId: "!aaabaa:{{ matrix_domain }}"
6677
MatrixHomeserverUrl: "{{ matrix_homeserver_url }}"
6778
MatrixUserId: "@email2matrix2:{{ matrix_domain }}"
68-
MatrixAccessToken: "MATRIX_ACCESS_TOKEN_HERE"
79+
MatrixAccessToken: "ACCESS_TOKEN_FOR_EMAIL2MATRIX2_HERE"
6980
IgnoreSubject: true
7081
IgnoreBody: false
7182
SkipMarkdown: true

docs/configuring-playbook-jitsi.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ Once you've decided on the domain and path, **you may need to adjust your DNS**
4040

4141
By default, you will need to create a CNAME record for `jitsi`. See [Configuring DNS](configuring-dns.md) for details about DNS changes.
4242

43-
## (Optional) Configure Jitsi authentication and guests mode
43+
## Configure Jitsi authentication and guests mode (optional)
4444

4545
By default the Jitsi Meet instance does not require any kind of login and is open to use for anyone without registration.
4646

@@ -112,7 +112,7 @@ jitsi_ldap_start_tls: false
112112

113113
For more information refer to the [docker-jitsi-meet](https://github.com/jitsi/docker-jitsi-meet#authentication-using-ldap) and the [saslauthd `LDAP_SASLAUTHD`](https://github.com/winlibs/cyrus-sasl/blob/master/saslauthd/LDAP_SASLAUTHD) documentation.
114114

115-
## (Optional) Making your Jitsi server work on a LAN
115+
## Making your Jitsi server work on a LAN (optional)
116116

117117
By default the Jitsi Meet instance does not work with a client in LAN (Local Area Network), even if others are connected from WAN. There are no video and audio. In the case of WAN to WAN everything is ok.
118118

@@ -127,7 +127,7 @@ jitsi_jvb_container_extra_arguments:
127127
- '--env "JVB_ADVERTISE_IPS=<Local IP address of the host>"'
128128
```
129129

130-
## (Optional) Fine tune Jitsi
130+
## Fine tune Jitsi (optional)
131131

132132
Sample **additional** `inventory/host_vars/matrix.example.com/vars.yml` configuration to save up resources (explained below):
133133

@@ -152,7 +152,7 @@ You may want to **limit the number of video feeds forwarded to each client**, to
152152

153153
You may want to **limit the maximum video resolution**, to save up resources on both server and clients.
154154

155-
## (Optional) Specify a Max number of participants on a Jitsi conference
155+
## Specify a Max number of participants on a Jitsi conference (optional)
156156

157157
The playbook allows a user to set a max number of participants allowed to join a Jitsi conference. By default there is no limit.
158158

@@ -162,7 +162,7 @@ In order to set the max number of participants use the following **additional**
162162
jitsi_prosody_max_participants: 4 # example value
163163
```
164164

165-
## (Optional) Additional JVBs
165+
## Additional JVBs (optional)
166166

167167
By default, a single JVB ([Jitsi VideoBridge](https://github.com/jitsi/jitsi-videobridge)) is deployed on the same host as the Matrix server. To allow more video-conferences to happen at the same time, you may need to provision additional JVB services on other hosts.
168168

@@ -253,7 +253,7 @@ traefik_provider_configuration_extension_yaml: |
253253
{% endfor %}
254254
```
255255

256-
## (Optional) Enable Gravatar
256+
## Enable Gravatar (optional)
257257

258258
In the default Jisti Meet configuration, gravatar.com is enabled as an avatar service. This results in third party request leaking data to gravatar. Since Element clients already send the url of configured Matrix avatars to Jitsi, we disabled gravatar.
259259

docs/configuring-playbook-matrix-media-repo.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ matrix_media_repo_datastore_s3_opts_bucket_name: "your-media-bucket"
8888

8989
```
9090

91-
Full list of configuration options with documentation can be found in [`roles/custom/matrix-media-repo/defaults/main.yml`](https://github.com/spantaleev/matrix-docker-ansible-deploy/blob/master/roles/custom/matrix-media-repo/defaults/main.yml)
91+
Full list of configuration options with documentation can be found in [`roles/custom/matrix-media-repo/defaults/main.yml`](../roles/custom/matrix-media-repo/defaults/main.yml)
9292

9393
## Signing Keys
9494

docs/configuring-playbook-user-verification-service.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ You are required to specify an access token (belonging to this new user) for UVS
5353
matrix_user_verification_service_uvs_access_token: "YOUR ACCESS TOKEN HERE"
5454
```
5555

56-
### (Optional) Custom Auth Token
56+
### Custom Auth Token (optional)
5757

5858
It is possible to set an API Auth Token to restrict access to the UVS. If this is enabled, anyone making a request to UVS must provide it via the header "Authorization: Bearer TOKEN"
5959

@@ -67,15 +67,15 @@ matrix_user_verification_service_uvs_auth_token: "TOKEN"
6767

6868
In case Jitsi is also managed by this playbook and 'matrix' authentication in Jitsi is enabled, this collection will automatically configure Jitsi to use the configured auth token.
6969

70-
### (Optional) Disable Auth
70+
### Disable Auth (optional)
7171

7272
Authorization is enabled by default. To disable it, add the following configuration to your `vars.yml` file:
7373

7474
```yaml
7575
matrix_user_verification_service_uvs_require_auth: false
7676
```
7777

78-
### (Optional) Federation
78+
### Federation (optional)
7979

8080
In theory (however currently untested), UVS can handle federation. To enable it, add the following configuration to your `vars.yml` file:
8181

docs/configuring-well-known.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ As [per the Client-Server specification](https://matrix.org/docs/spec/client_ser
3434

3535
However, this playbook installs your Matrix server on another domain (e.g. `matrix.example.com`) and not on the base domain (e.g. `example.com`), so it takes a little extra manual effort to set up the file.
3636

37-
### (Optional) Support Service Discovery
37+
### Support Service Discovery (optional)
3838

3939
[MSC 1929](https://github.com/matrix-org/matrix-spec-proposals/pull/1929), which was added to [Matrix Specification version v1.10](https://spec.matrix.org/v1.10/client-server-api/#getwell-knownmatrixsupport), specifies a way to add contact details of admins, as well as a link to a support page for users who are having issues with the service. Automated services may also index this information and use it for abuse reports, etc.
4040

0 commit comments

Comments
 (0)