From `@<username>`, `@your_username`, `@example`, etc. Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>pull/3862/head
| @@ -6,7 +6,7 @@ | |||||
| This [Ansible](https://www.ansible.com/) playbook is meant to help you run your own [Matrix](http://matrix.org/) homeserver, along with the [various services](#supported-services) related to that. | This [Ansible](https://www.ansible.com/) playbook is meant to help you run your own [Matrix](http://matrix.org/) homeserver, along with the [various services](#supported-services) related to that. | ||||
| That is, it lets you join the Matrix network using your own `@<username>:example.com` identifier, all hosted on your own server (see [prerequisites](docs/prerequisites.md)). | |||||
| That is, it lets you join the Matrix network using your own `@alice:example.com` identifier, all hosted on your own server (see [prerequisites](docs/prerequisites.md)). | |||||
| We run all [supported services](#-supported-services) in [Docker](https://www.docker.com/) containers (see [the container images we use](docs/container-images.md)), which lets us have a predictable and up-to-date setup, across multiple supported distros (see [prerequisites](docs/prerequisites.md)) and [architectures](docs/alternative-architectures.md) (x86/amd64 being recommended). | We run all [supported services](#-supported-services) in [Docker](https://www.docker.com/) containers (see [the container images we use](docs/container-images.md)), which lets us have a predictable and up-to-date setup, across multiple supported distros (see [prerequisites](docs/prerequisites.md)) and [architectures](docs/alternative-architectures.md) (x86/amd64 being recommended). | ||||
| @@ -6,7 +6,7 @@ To set up Matrix on your domain, you'd need to do some DNS configuration. | |||||
| ## DNS setting for server delegation (optional) | ## DNS setting for server delegation (optional) | ||||
| In the sample `vars.yml` ([`examples/vars.yml`](../examples/vars.yml)), we recommend to use a short user identifier like `@<username>:example.com`. | |||||
| In the sample `vars.yml` ([`examples/vars.yml`](../examples/vars.yml)), we recommend to use a short user identifier like `@alice:example.com`. | |||||
| To use such an identifier, you don't need to install anything on the actual `example.com` server. Instead, you need to instruct the Matrix network that Matrix services for `example.com` are redirected over to `matrix.example.com`. This redirection is also known as "delegation". | To use such an identifier, you don't need to install anything on the actual `example.com` server. Instead, you need to instruct the Matrix network that Matrix services for `example.com` are redirected over to `matrix.example.com`. This redirection is also known as "delegation". | ||||
| @@ -27,7 +27,7 @@ If you would like to be able to administrate the bridge from your account it can | |||||
| matrix_beeper_linkedin_configuration_extension_yaml: | | matrix_beeper_linkedin_configuration_extension_yaml: | | ||||
| bridge: | bridge: | ||||
| permissions: | permissions: | ||||
| '@YOUR_USERNAME:example.com': admin | |||||
| '@alice:example.com': admin | |||||
| ``` | ``` | ||||
| You may wish to look at `roles/custom/matrix-bridge-beeper-linkedin/templates/config.yaml.j2` to find other things you would like to configure. | You may wish to look at `roles/custom/matrix-bridge-beeper-linkedin/templates/config.yaml.j2` to find other things you would like to configure. | ||||
| @@ -15,7 +15,7 @@ matrix_heisenbridge_enabled: true | |||||
| # Setting the owner is optional as the first local user to DM `@heisenbridge:example.com` will be made the owner. | # Setting the owner is optional as the first local user to DM `@heisenbridge:example.com` will be made the owner. | ||||
| # If you are not using a local user you must set it as otherwise you can't DM it at all. | # If you are not using a local user you must set it as otherwise you can't DM it at all. | ||||
| matrix_heisenbridge_owner: "@you:example.com" | |||||
| matrix_heisenbridge_owner: "@alice:example.com" | |||||
| # Uncomment to enable identd on host port 113/TCP (optional) | # Uncomment to enable identd on host port 113/TCP (optional) | ||||
| # matrix_heisenbridge_identd_enabled: true | # matrix_heisenbridge_identd_enabled: true | ||||
| @@ -38,7 +38,7 @@ If you would like to be able to administrate the bridge from your account it can | |||||
| matrix_mautrix_facebook_configuration_extension_yaml: | | matrix_mautrix_facebook_configuration_extension_yaml: | | ||||
| bridge: | bridge: | ||||
| permissions: | permissions: | ||||
| '@YOUR_USERNAME:{{ matrix_domain }}': admin | |||||
| '@alice:{{ matrix_domain }}': admin | |||||
| ``` | ``` | ||||
| Using both would look like | Using both would look like | ||||
| @@ -47,7 +47,7 @@ Using both would look like | |||||
| matrix_mautrix_facebook_configuration_extension_yaml: | | matrix_mautrix_facebook_configuration_extension_yaml: | | ||||
| bridge: | bridge: | ||||
| permissions: | permissions: | ||||
| '@YOUR_USERNAME:{{ matrix_domain }}': admin | |||||
| '@alice:{{ matrix_domain }}': admin | |||||
| encryption: | encryption: | ||||
| allow: true | allow: true | ||||
| default: true | default: true | ||||
| @@ -30,14 +30,14 @@ If you would like to be able to administrate the bridge from your account it can | |||||
| ```yaml | ```yaml | ||||
| # The easy way. The specified Matrix user ID will be made an admin of all bridges | # The easy way. The specified Matrix user ID will be made an admin of all bridges | ||||
| matrix_admin: "@YOUR_USERNAME:{{ matrix_domain }}" | |||||
| matrix_admin: "@alice:{{ matrix_domain }}" | |||||
| # OR: | # OR: | ||||
| # The more verbose way. Applies to this bridge only. You may define multiple Matrix users as admins. | # The more verbose way. Applies to this bridge only. You may define multiple Matrix users as admins. | ||||
| matrix_mautrix_instagram_configuration_extension_yaml: | | matrix_mautrix_instagram_configuration_extension_yaml: | | ||||
| bridge: | bridge: | ||||
| permissions: | permissions: | ||||
| '@YOUR_USERNAME:example.com': admin | |||||
| '@alice:example.com': admin | |||||
| ``` | ``` | ||||
| You may wish to look at `roles/custom/matrix-bridge-mautrix-instagram/templates/config.yaml.j2` and `roles/custom/matrix-bridge-mautrix-instagram/defaults/main.yml` to find other things you would like to configure. | You may wish to look at `roles/custom/matrix-bridge-mautrix-instagram/templates/config.yaml.j2` and `roles/custom/matrix-bridge-mautrix-instagram/defaults/main.yml` to find other things you would like to configure. | ||||
| @@ -62,7 +62,7 @@ You may redefine `matrix_mautrix_meta_instagram_bridge_permissions_default` any | |||||
| ```yaml | ```yaml | ||||
| matrix_mautrix_meta_instagram_bridge_permissions_custom: | matrix_mautrix_meta_instagram_bridge_permissions_custom: | ||||
| '@YOUR_USERNAME:example.com': admin | |||||
| '@alice:example.com': admin | |||||
| ``` | ``` | ||||
| You may wish to look at `roles/custom/matrix-bridge-mautrix-meta-instagram/templates/config.yaml.j2` to find more information on the permissions settings and other options you would like to configure. | You may wish to look at `roles/custom/matrix-bridge-mautrix-meta-instagram/templates/config.yaml.j2` to find more information on the permissions settings and other options you would like to configure. | ||||
| @@ -75,7 +75,7 @@ You may redefine `matrix_mautrix_meta_messenger_bridge_permissions_default` any | |||||
| ```yaml | ```yaml | ||||
| matrix_mautrix_meta_messenger_bridge_permissions_custom: | matrix_mautrix_meta_messenger_bridge_permissions_custom: | ||||
| '@YOUR_USERNAME:example.com': admin | |||||
| '@alice:example.com': admin | |||||
| ``` | ``` | ||||
| You may wish to look at `roles/custom/matrix-bridge-mautrix-meta-messenger/templates/config.yaml.j2` to find more information on the permissions settings and other options you would like to configure. | You may wish to look at `roles/custom/matrix-bridge-mautrix-meta-messenger/templates/config.yaml.j2` to find more information on the permissions settings and other options you would like to configure. | ||||
| @@ -54,7 +54,7 @@ If you want to augment the preset permissions, you might want to set the additio | |||||
| matrix_mautrix_signal_configuration_extension_yaml: | | matrix_mautrix_signal_configuration_extension_yaml: | | ||||
| bridge: | bridge: | ||||
| permissions: | permissions: | ||||
| '@YOUR_USERNAME:example.com': admin | |||||
| '@alice:example.com': admin | |||||
| ``` | ``` | ||||
| This will add the admin permission to the specific user, while keeping the default permissions. | This will add the admin permission to the specific user, while keeping the default permissions. | ||||
| @@ -2,7 +2,7 @@ | |||||
| By default, your server federates with the whole Matrix network. That is, people on your server can communicate with people on any other Matrix server. | By default, your server federates with the whole Matrix network. That is, people on your server can communicate with people on any other Matrix server. | ||||
| **Note**: in the sample `vars.yml` ([`examples/vars.yml`](../examples/vars.yml)), we recommend to use a short user identifier like `@<username>:example.com` and set up [server delegation](howto-server-delegation.md) / redirection. Without a proper configuration, your server will effectively not be part of the Matrix network. If you find your server is not federated, make sure to [check whether services work](maintenance-checking-services.md) and your server is properly delegated. | |||||
| **Note**: in the sample `vars.yml` ([`examples/vars.yml`](../examples/vars.yml)), we recommend to use a short user identifier like `@alice:example.com` and set up [server delegation](howto-server-delegation.md) / redirection. Without a proper configuration, your server will effectively not be part of the Matrix network. If you find your server is not federated, make sure to [check whether services work](maintenance-checking-services.md) and your server is properly delegated. | |||||
| ## Federating only with select servers | ## Federating only with select servers | ||||
| @@ -47,7 +47,7 @@ matrix_media_repo_database_max_idle_connections: 5 | |||||
| # See docs/admin.md for information on what these people can do. They must belong to one of the | # See docs/admin.md for information on what these people can do. They must belong to one of the | ||||
| # configured homeservers above. | # configured homeservers above. | ||||
| # matrix_media_repo_admins: [ | # matrix_media_repo_admins: [ | ||||
| # "@your_username:example.org" | |||||
| # "@alice:example.org" | |||||
| # ] | # ] | ||||
| matrix_media_repo_admins: [] | matrix_media_repo_admins: [] | ||||
| @@ -18,7 +18,7 @@ There are some additional things you may wish to configure about the bridge befo | |||||
| To **configure a user as an administrator for all bridges**, add the following configuration to your `inventory/host_vars/matrix.example.com/vars.yml` file: | To **configure a user as an administrator for all bridges**, add the following configuration to your `inventory/host_vars/matrix.example.com/vars.yml` file: | ||||
| ```yaml | ```yaml | ||||
| matrix_admin: "@YOUR_USERNAME:{{ matrix_domain }}" | |||||
| matrix_admin: "@alice:{{ matrix_domain }}" | |||||
| ``` | ``` | ||||
| **Alternatively** (more verbose, but allows multiple admins to be configured), you can do the same on a per-bridge basis with: | **Alternatively** (more verbose, but allows multiple admins to be configured), you can do the same on a per-bridge basis with: | ||||
| @@ -27,7 +27,7 @@ matrix_admin: "@YOUR_USERNAME:{{ matrix_domain }}" | |||||
| matrix_mautrix_SERVICENAME_configuration_extension_yaml: | | matrix_mautrix_SERVICENAME_configuration_extension_yaml: | | ||||
| bridge: | bridge: | ||||
| permissions: | permissions: | ||||
| '@YOUR_USERNAME:{{ matrix_domain }}': admin | |||||
| '@alice:{{ matrix_domain }}': admin | |||||
| ``` | ``` | ||||
| ## encryption | ## encryption | ||||
| @@ -73,7 +73,7 @@ You can only have one `matrix_mautrix_SERVICENAME_configuration_extension_yaml` | |||||
| matrix_mautrix_SERVICENAME_configuration_extension_yaml: | | matrix_mautrix_SERVICENAME_configuration_extension_yaml: | | ||||
| bridge: | bridge: | ||||
| permissions: | permissions: | ||||
| '@YOUR_USERNAME:{{ matrix_domain }}': admin | |||||
| '@alice:{{ matrix_domain }}': admin | |||||
| encryption: | encryption: | ||||
| allow: true | allow: true | ||||
| default: true | default: true | ||||
| @@ -26,7 +26,7 @@ In the world of the Matrix chat protocol, there are various client programs. The | |||||
| Matrix is also like email due to the fact that there are many servers around the world which can all talk to each other (you can send email from `@gmail.com` addresses to `@yahoo.com` and `@hotmail.com` addresses). It's the same with Matrix (`@bob:example.com` can talk to `@alice:example.org`). | Matrix is also like email due to the fact that there are many servers around the world which can all talk to each other (you can send email from `@gmail.com` addresses to `@yahoo.com` and `@hotmail.com` addresses). It's the same with Matrix (`@bob:example.com` can talk to `@alice:example.org`). | ||||
| If someone else is hosting your Matrix server (you being `@example:matrix.org` or some other public server like this), all you need is a Matrix client program, like Element Web or Element X Android. | |||||
| If someone else is hosting your Matrix server (you being `@alice:matrix.org` or some other public server like this), all you need is a Matrix client program, like Element Web or Element X Android. | |||||
| If you'd like to host your own server (you being `@alice:example.com`), you'd need to set up a Matrix server program, like Synapse. | If you'd like to host your own server (you being `@alice:example.com`), you'd need to set up a Matrix server program, like Synapse. | ||||
| @@ -281,7 +281,7 @@ ansible-playbook -i inventory/hosts setup.yml --tags=setup-all,start | |||||
| `just install-all` is useful for maintaining your setup quickly ([2x-5x faster](../CHANGELOG.md#2x-5x-performance-improvements-in-playbook-runtime) than `just setup-all`) when its components remain unchanged. If you adjust your `vars.yml` to remove other components, you'd need to run `just setup-all`, or these components will still remain installed. Note these shortcuts run the `ensure-matrix-users-created` tag too. | `just install-all` is useful for maintaining your setup quickly ([2x-5x faster](../CHANGELOG.md#2x-5x-performance-improvements-in-playbook-runtime) than `just setup-all`) when its components remain unchanged. If you adjust your `vars.yml` to remove other components, you'd need to run `just setup-all`, or these components will still remain installed. Note these shortcuts run the `ensure-matrix-users-created` tag too. | ||||
| - Without setting up [server delegation](howto-server-delegation.md) to `matrix.example.com`, your user identifiers will be like `@example:matrix.example.com`. This is equivalent to having an email address like `bob@mail.company.com`, instead of just `bob@company.com`. | |||||
| - Without setting up [server delegation](howto-server-delegation.md) to `matrix.example.com`, your user identifiers will be like `@alice:matrix.example.com`. This is equivalent to having an email address like `bob@mail.company.com`, instead of just `bob@company.com`. | |||||
| ### I don't use the base domain for anything. How am I supposed to set up Server Delegation for Matrix services? | ### I don't use the base domain for anything. How am I supposed to set up Server Delegation for Matrix services? | ||||
| @@ -104,7 +104,7 @@ This is required for federation to work! Without a proper configuration, your se | |||||
| To configure the delegation, you have these two options. Choose one of them according to your situation. | To configure the delegation, you have these two options. Choose one of them according to your situation. | ||||
| - If you can afford to point the base domain at the Matrix server, follow the instructions below which guide you into [serving the base domain](configuring-playbook-base-domain-serving.md) from the integrated web server. It will enable you to use a Matrix user identifier like `@<username>:example.com` while hosting services on a subdomain like `matrix.example.com`. | |||||
| - If you can afford to point the base domain at the Matrix server, follow the instructions below which guide you into [serving the base domain](configuring-playbook-base-domain-serving.md) from the integrated web server. It will enable you to use a Matrix user identifier like `@alice:example.com` while hosting services on a subdomain like `matrix.example.com`. | |||||
| - Alternatively, if you're using the base domain for other purposes and cannot point it to the Matrix server (and thus cannot "serve the base domain" from it), you most likely need to [manually install well-known files on the base domain's server](configuring-well-known.md#manually-installing-well-known-files-on-the-base-domains-server), but feel free to familiarize yourself with all [server delegation (redirection) options](howto-server-delegation.md). | - Alternatively, if you're using the base domain for other purposes and cannot point it to the Matrix server (and thus cannot "serve the base domain" from it), you most likely need to [manually install well-known files on the base domain's server](configuring-well-known.md#manually-installing-well-known-files-on-the-base-domains-server), but feel free to familiarize yourself with all [server delegation (redirection) options](howto-server-delegation.md). | ||||
| To have the base domain served from the integrated web server, add the following configuration to your `inventory/host_vars/matrix.example.com/vars.yml` file: | To have the base domain served from the integrated web server, add the following configuration to your `inventory/host_vars/matrix.example.com/vars.yml` file: | ||||
| @@ -26,7 +26,7 @@ You can use the following command to get an access token for your user directly | |||||
| ```sh | ```sh | ||||
| curl -XPOST -d '{ | curl -XPOST -d '{ | ||||
| "identifier": { "type": "m.id.user", "user": "USERNAME" }, | |||||
| "identifier": { "type": "m.id.user", "user": "alice" }, | |||||
| "password": "PASSWORD", | "password": "PASSWORD", | ||||
| "type": "m.login.password", | "type": "m.login.password", | ||||
| "device_id": "YOURDEVICEID" | "device_id": "YOURDEVICEID" | ||||
| @@ -40,7 +40,7 @@ Your response will look like this (prettified): | |||||
| ``` | ``` | ||||
| { | { | ||||
| "user_id":"@USERNAME:example.com", | |||||
| "user_id":"@alice:example.com", | |||||
| "access_token":">>>YOUR_ACCESS_TOKEN_IS_HERE<<<", | "access_token":">>>YOUR_ACCESS_TOKEN_IS_HERE<<<", | ||||
| "home_server":"example.com", | "home_server":"example.com", | ||||
| "device_id":"YOURDEVICEID" | "device_id":"YOURDEVICEID" | ||||
| @@ -225,8 +225,8 @@ bridge: | |||||
| # | # | ||||
| # Available variables: | # Available variables: | ||||
| # $sender_displayname - The display name of the sender (e.g. Example User) | # $sender_displayname - The display name of the sender (e.g. Example User) | ||||
| # $sender_username - The username (Matrix ID localpart) of the sender (e.g. exampleuser) | |||||
| # $sender_mxid - The Matrix ID of the sender (e.g. @exampleuser:example.com) | |||||
| # $sender_username - The username (Matrix ID localpart) of the sender (e.g. alice) | |||||
| # $sender_mxid - The Matrix ID of the sender (e.g. @alice:example.com) | |||||
| # $message - The message content | # $message - The message content | ||||
| message_formats: | message_formats: | ||||
| m.text: '<b>$sender_displayname</b>: $message' | m.text: '<b>$sender_displayname</b>: $message' | ||||
| @@ -211,8 +211,8 @@ bridge: | |||||
| # | # | ||||
| # Available variables: | # Available variables: | ||||
| # $sender_displayname - The display name of the sender (e.g. Example User) | # $sender_displayname - The display name of the sender (e.g. Example User) | ||||
| # $sender_username - The username (Matrix ID localpart) of the sender (e.g. exampleuser) | |||||
| # $sender_mxid - The Matrix ID of the sender (e.g. @exampleuser:example.com) | |||||
| # $sender_username - The username (Matrix ID localpart) of the sender (e.g. alice) | |||||
| # $sender_mxid - The Matrix ID of the sender (e.g. @alice:example.com) | |||||
| # $message - The message content | # $message - The message content | ||||
| message_formats: | message_formats: | ||||
| m.text: '<b>$sender_displayname</b>: $message' | m.text: '<b>$sender_displayname</b>: $message' | ||||
| @@ -204,8 +204,8 @@ bridge: | |||||
| # | # | ||||
| # Available variables: | # Available variables: | ||||
| # $sender_displayname - The display name of the sender (e.g. Example User) | # $sender_displayname - The display name of the sender (e.g. Example User) | ||||
| # $sender_username - The username (Matrix ID localpart) of the sender (e.g. exampleuser) | |||||
| # $sender_mxid - The Matrix ID of the sender (e.g. @exampleuser:example.com) | |||||
| # $sender_username - The username (Matrix ID localpart) of the sender (e.g. alice) | |||||
| # $sender_mxid - The Matrix ID of the sender (e.g. @alice:example.com) | |||||
| # $message - The message content | # $message - The message content | ||||
| # | # | ||||
| # Note that Instagram doesn't support captions for images, so images won't include any indication of being relayed. | # Note that Instagram doesn't support captions for images, so images won't include any indication of being relayed. | ||||
| @@ -450,8 +450,8 @@ bridge: | |||||
| # | # | ||||
| # Available variables: | # Available variables: | ||||
| # $sender_displayname - The display name of the sender (e.g. Example User) | # $sender_displayname - The display name of the sender (e.g. Example User) | ||||
| # $sender_username - The username (Matrix ID localpart) of the sender (e.g. exampleuser) | |||||
| # $sender_mxid - The Matrix ID of the sender (e.g. @exampleuser:example.com) | |||||
| # $sender_username - The username (Matrix ID localpart) of the sender (e.g. alice) | |||||
| # $sender_mxid - The Matrix ID of the sender (e.g. @alice:example.com) | |||||
| # $distinguisher - A random string from the options in the relay_user_distinguishers array. | # $distinguisher - A random string from the options in the relay_user_distinguishers array. | ||||
| # $message - The message content | # $message - The message content | ||||
| message_formats: | message_formats: | ||||
| @@ -384,7 +384,7 @@ matrix_media_repo_access_tokens_appservices: [] | |||||
| # See docs/admin.md for information on what these people can do. They must belong to one of the | # See docs/admin.md for information on what these people can do. They must belong to one of the | ||||
| # configured homeservers above. | # configured homeservers above. | ||||
| # matrix_media_repo_admins: [ | # matrix_media_repo_admins: [ | ||||
| # "@your_username:example.org" | |||||
| # "@alice:example.org" | |||||
| # ] | # ] | ||||
| matrix_media_repo_admins: [] | matrix_media_repo_admins: [] | ||||
| @@ -172,7 +172,7 @@ admins: | |||||
| | to_nice_yaml(indent=2, width=999999, sort_keys=false) | indent(width=2, first=true) }} | | to_nice_yaml(indent=2, width=999999, sort_keys=false) | indent(width=2, first=true) }} | ||||
| {% else %} | {% else %} | ||||
| #admins: | #admins: | ||||
| # - "@your_username:example.org" | |||||
| # - "@alice:example.org" | |||||
| {% endif %} | {% endif %} | ||||
| # Shared secret auth is useful for applications building on top of the media repository, such | # Shared secret auth is useful for applications building on top of the media repository, such | ||||