5
0
mirror of https://github.com/spantaleev/matrix-docker-ansible-deploy.git synced 2026-08-13 12:20:51 +00:00

Automatic translations update

This commit is contained in:
github-actions[bot]
2026-08-13 03:24:23 +00:00
committed by GitHub
parent 5e2a2f8049
commit 02e4b0f6ad
7 changed files with 3171 additions and 2494 deletions
File diff suppressed because it is too large Load Diff
+30 -18
View File
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: matrix-docker-ansible-deploy \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-01 17:14+0000\n"
"POT-Creation-Date: 2026-08-13 03:24+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -900,6 +900,18 @@ msgstr ""
msgid "[Link](docs/configuring-playbook-bot-draupnir.md) (for [appservice mode](docs/configuring-playbook-appservice-draupnir-for-all.md))"
msgstr ""
#: ../../../README.md:0
msgid "[Meowlnir](https://github.com/maunium/meowlnir)"
msgstr ""
#: ../../../README.md:0
msgid "Moderation tool for Matrix, running in appservice mode"
msgstr ""
#: ../../../README.md:0
msgid "[Link](docs/configuring-playbook-bot-meowlnir.md)"
msgstr ""
#: ../../../README.md:0
msgid "[Buscarron](https://github.com/etkecc/buscarron)"
msgstr ""
@@ -912,11 +924,11 @@ msgstr ""
msgid "[Link](docs/configuring-playbook-bot-buscarron.md)"
msgstr ""
#: ../../../README.md:156
#: ../../../README.md:157
msgid "Administration"
msgstr ""
#: ../../../README.md:158
#: ../../../README.md:159
msgid "Services that help you in administrating and monitoring your Matrix installation."
msgstr ""
@@ -1004,11 +1016,11 @@ msgstr ""
msgid "[Link](docs/configuring-playbook-synapse-usage-exporter.md)"
msgstr ""
#: ../../../README.md:170
#: ../../../README.md:171
msgid "Misc"
msgstr ""
#: ../../../README.md:172
#: ../../../README.md:173
msgid "Various services that don't fit any other categories."
msgstr ""
@@ -1132,54 +1144,54 @@ msgstr ""
msgid "[Link](docs/configuring-playbook-element-call.md)"
msgstr ""
#: ../../../README.md:187
#: ../../../README.md:188
msgid "🆕 Changes"
msgstr ""
#: ../../../README.md:189
#: ../../../README.md:190
msgid "This playbook evolves over time, sometimes with backward-incompatible changes."
msgstr ""
#: ../../../README.md:191
#: ../../../README.md:192
msgid "When updating the playbook, refer to [the changelog](CHANGELOG.md) to catch up with what's new."
msgstr ""
#: ../../../README.md:193
#: ../../../README.md:194
msgid "🆘 Support"
msgstr ""
#: ../../../README.md:195
#: ../../../README.md:196
msgid "Matrix room: [#matrix-docker-ansible-deploy:devture.com](https://matrix.to/#/#matrix-docker-ansible-deploy:devture.com)"
msgstr ""
#: ../../../README.md:197
#: ../../../README.md:198
msgid "IRC channel: `#matrix-docker-ansible-deploy` on the [Libera Chat](https://libera.chat/) IRC network (irc.libera.chat:6697)"
msgstr ""
#: ../../../README.md:199
#: ../../../README.md:200
msgid "GitHub issues: [spantaleev/matrix-docker-ansible-deploy/issues](https://github.com/spantaleev/matrix-docker-ansible-deploy/issues)"
msgstr ""
#: ../../../README.md:201
#: ../../../README.md:202
msgid "🌐 Translation"
msgstr ""
#: ../../../README.md:203
#: ../../../README.md:204
msgid "See the [i18n/README.md](i18n/README.md) file for more information about translation."
msgstr ""
#: ../../../README.md:205
#: ../../../README.md:206
msgid "Translations are still work in progress."
msgstr ""
#: ../../../README.md:207
#: ../../../README.md:208
msgid "🤝 Related"
msgstr ""
#: ../../../README.md:209
#: ../../../README.md:210
msgid "You may also be interested in [mash-playbook](https://github.com/mother-of-all-self-hosting/mash-playbook) - another Ansible playbook for self-hosting non-Matrix services (see its [List of supported services](https://github.com/mother-of-all-self-hosting/mash-playbook/blob/main/docs/supported-services.md))."
msgstr ""
#: ../../../README.md:211
#: ../../../README.md:212
msgid "mash-playbook also makes use of [Traefik](./docs/configuring-playbook-traefik.md) as its reverse-proxy, so with minor [interoperability adjustments](https://github.com/mother-of-all-self-hosting/mash-playbook/blob/main/docs/interoperability.md), you can make matrix-docker-ansible-deploy and mash-playbook co-exist and host Matrix and non-Matrix services on the same server."
msgstr ""
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: matrix-docker-ansible-deploy \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-05-19 07:40+0000\n"
"POT-Creation-Date: 2026-08-13 03:24+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -33,470 +33,474 @@ msgid "This documentation page is about installing Draupnir in bot mode. As an a
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:19
msgid "If your migrating from [Mjolnir](configuring-playbook-bot-mjolnir.md), skip to [this section](#migrating-from-mjolnir-only-required-if-migrating)."
msgid "**Note**: you can also use the [Meowlnir](configuring-playbook-bot-meowlnir.md) or [Mjolnir](configuring-playbook-bot-mjolnir.md) bots, which speak the same [policy list](https://the-draupnir-project.github.io/draupnir-documentation/concepts/policy-lists) protocol."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:21
msgid "Prerequisites"
msgid "When migrating from [Mjolnir](configuring-playbook-bot-mjolnir.md), skip to [this section](#migrating-from-mjolnir-only-required-if-migrating)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:23
msgid "Prerequisites for Zero Touch Deployment (recommended)"
msgid "Prerequisites"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:25
msgid "As of Draupnir 3.1.0, Zero Touch Deployment of Draupnir bot mode requires you to supply the following:"
msgid "Prerequisites for Zero Touch Deployment (recommended)"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:27
msgid "MXID of the first person who gets invited to the management room that the bot creates for you."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:28
msgid "A permanent access token for authentication. Instructions for obtaining one can be found at [obtain an access token via curl](obtaining-access-tokens.md#obtain-an-access-token-via-curl)."
msgid "As of Draupnir 3.1.0, Zero Touch Deployment of Draupnir bot mode requires you to supply the following:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:29
msgid "A user account for Draupnir."
msgid "MXID of the first person who gets invited to the management room that the bot creates for you."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:30
msgid "A permanent access token for authentication. Instructions for obtaining one can be found at [obtain an access token via curl](obtaining-access-tokens.md#obtain-an-access-token-via-curl)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:31
msgid "Zero Touch Deployment is the officially preferred installation method for new deployments of Draupnir as of 3.1.0."
msgid "A user account for Draupnir."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:33
msgid "Create a management room (optional)"
msgid "Zero Touch Deployment is the officially preferred installation method for new deployments of Draupnir as of 3.1.0."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:35
msgid "Create a management room (optional)"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:37
msgid "Using your own account, create a new invite only room that you will use to manage the bot. This is the room where you will see the status of the bot and where you will send commands to the bot, such as the command to ban a user from another room."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:38
#: ../../../docs/configuring-playbook-bot-draupnir.md:40
msgid "Anyone in this room can control the bot so it is important that you only invite trusted users to this room."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:40
#: ../../../docs/configuring-playbook-bot-draupnir.md:42
msgid "It is possible to make the management room encrypted (E2EE). If doing so, then you need to enable the native E2EE support (see [below](#native-e2ee-support))."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:42
#: ../../../docs/configuring-playbook-bot-draupnir.md:44
msgid "E2EE support for the management room is mutually exclusive with Zero Touch Deployment of Draupnir."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:44
#: ../../../docs/configuring-playbook-bot-draupnir.md:46
msgid "Once you have created the room you need to copy the room ID so you can specify it on your `inventory/host_vars/matrix.example.com/vars.yml` file. In Element Web you can check the ID by going to the room's settings and clicking \"Advanced\". The room ID will look something like `!qporfwt:example.com`."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:46
#: ../../../docs/configuring-playbook-bot-draupnir.md:48
msgid "End-to-End Encryption support"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:48
#: ../../../docs/configuring-playbook-bot-draupnir.md:50
msgid "Decide whether you want to support having an encrypted management room or not. Draupnir can still protect encrypted rooms without encryption support enabled."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:50
#: ../../../docs/configuring-playbook-bot-draupnir.md:52
msgid "Refer to Draupnir's [documentation](https://the-draupnir-project.github.io/draupnir-documentation/moderator/managing-protected-rooms#protecting-encrypted-rooms) for more details about why you might want to care about encryption support for protected rooms."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:52
#: ../../../docs/configuring-playbook-bot-draupnir.md:54
msgid "Disable Pantalaimon for Draupnir (since v2.0.0; optional)"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:54
#: ../../../docs/configuring-playbook-bot-draupnir.md:56
msgid "It is known that running Draupnir along with Pantalaimon breaks all workflows that involve answering prompts with reactions."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:56
#: ../../../docs/configuring-playbook-bot-draupnir.md:58
msgid "If you are updating Draupnir from v1.x.x and have enabled Pantalaimon for it, you can disable Pantalaimon in favor of the native E2EE support. To disable Pantalaimon, remove the configuration `matrix_bot_draupnir_pantalaimon_use: true` from your `vars.yml` file."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:58
#: ../../../docs/configuring-playbook-bot-draupnir.md:60
msgid "**Note**: because the management room is still encrypted, disabling it without enabling the native E2EE support will break the management room."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:60
#: ../../../docs/configuring-playbook-bot-draupnir.md:62
msgid "Native E2EE support"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:62
#: ../../../docs/configuring-playbook-bot-draupnir.md:64
msgid "To enable the native E2EE support, you need to obtain an access token for Draupnir and set it on your `vars.yml` file."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:64
#: ../../../docs/configuring-playbook-bot-draupnir.md:66
msgid "Note that native E2EE requires a clean access token that has not touched E2EE so curl is recommended as a method to obtain it. **The access token obtained via Element Web does not work with it**. Refer to the documentation on [how to obtain an access token via curl](obtaining-access-tokens.md#obtain-an-access-token-via-curl)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:66
#: ../../../docs/configuring-playbook-bot-draupnir.md:68
msgid "To enable the native E2EE support, add the following configuration to your `vars.yml` file. Make sure to replace `CLEAN_ACCESS_TOKEN_HERE` with the access token you obtained just now."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:77
#: ../../../docs/configuring-playbook-bot-draupnir.md:79
msgid "Adjusting the playbook configuration"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:79
#: ../../../docs/configuring-playbook-bot-draupnir.md:81
msgid "Configuration for Zero Touch Deployment (recommended)"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:81
#: ../../../docs/configuring-playbook-bot-draupnir.md:83
msgid "To enable the bot using Zero Touch Deployment, add the following configuration to your `vars.yml` file. Make sure to replace `INITIAL_MANAGER_MXID_HERE` with the MXID of the user who should be invited to the management room first, and `CLEAN_ACCESS_TOKEN_HERE` with the access token you obtained."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:95
#: ../../../docs/configuring-playbook-bot-draupnir.md:97
msgid "Configuration without Zero Touch Deployment"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:97
#: ../../../docs/configuring-playbook-bot-draupnir.md:99
msgid "If you'd prefer to have the bot manage its own login at the cost of having to create the management room manually, you can use native login with the configuration block below. Make sure to replace `MANAGEMENT_ROOM_ID_HERE` with the ID of the management room you have created earlier."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:116
#: ../../../docs/configuring-playbook-bot-draupnir.md:118
msgid "Running both bot mode and appservice mode"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:118
#: ../../../docs/configuring-playbook-bot-draupnir.md:120
msgid "When running both bot mode and [appservice mode (Draupnir for all)](./configuring-playbook-appservice-draupnir-for-all.md), the playbook will force-restart the bot if running a non-release tag like `latest` or `main` or a development build. This is due to the conditional restart logic not being able to reliably tell when an update happened."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:122
#: ../../../docs/configuring-playbook-bot-draupnir.md:124
msgid "Conditional restarts work correctly for all tags when running only one of these two operating modes."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:124
#: ../../../docs/configuring-playbook-bot-draupnir.md:126
msgid "Create and invite the bot to the management room (only when using native login without Zero Touch Deployment)"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:126
#: ../../../docs/configuring-playbook-bot-draupnir.md:128
msgid "Before proceeding to the next step, run the playbook with the following command to create the bot user."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:132
#: ../../../docs/configuring-playbook-bot-draupnir.md:134
msgid "**Note**: the `ensure-matrix-users-created` playbook tag makes the playbook automatically create the bot's user account."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:134
#: ../../../docs/configuring-playbook-bot-draupnir.md:136
msgid "Then, invite the bot (`@bot.draupnir:example.com`) to its management room which you have created earlier."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:136
#: ../../../docs/configuring-playbook-bot-draupnir.md:138
msgid "Creating a user account for the bot (when using Zero Touch Deployment)"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:138
#: ../../../docs/configuring-playbook-bot-draupnir.md:140
msgid "Since Zero Touch Deployment is not validated with native login, you will need to create the user account manually."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:140
#: ../../../docs/configuring-playbook-bot-draupnir.md:142
msgid "Refer to [registering users](registering-users.md) for documentation on how to configure the user account."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:142
#: ../../../docs/configuring-playbook-bot-draupnir.md:144
msgid "Make sure the account is free from rate limiting (optional, recommended)"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:144
#: ../../../docs/configuring-playbook-bot-draupnir.md:146
msgid "If your homeserver's implementation is Synapse, you will need to prevent it from rate limiting the bot's account. **This is a highly recommended step. If you do not configure it, Draupnir performance will be degraded.**"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:146
#: ../../../docs/configuring-playbook-bot-draupnir.md:148
msgid "This can be done using Synapse's [Admin APIs](https://element-hq.github.io/synapse/latest/admin_api/user_admin_api.html#override-ratelimiting-for-users). They can be accessed both externally and internally."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:148
#: ../../../docs/configuring-playbook-bot-draupnir.md:150
msgid "**Note**: access to the APIs is restricted with a valid access token, so exposing them publicly should not be a real security concern. Still, doing so is not recommended for additional security. See [official Synapse reverse-proxying recommendations](https://element-hq.github.io/synapse/latest/reverse_proxy.html#synapse-administration-endpoints)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:150
#: ../../../docs/configuring-playbook-bot-draupnir.md:152
msgid "The APIs can also be accessed via [Ketesa](https://github.com/etkecc/ketesa), a web UI tool you can use to administrate users, rooms, media, etc. on your Matrix server. The playbook can install and configure Ketesa for you. For details about it, see [this page](configuring-playbook-ketesa.md)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:152
#: ../../../docs/configuring-playbook-bot-draupnir.md:154
msgid "Add the configuration"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:154
#: ../../../docs/configuring-playbook-bot-draupnir.md:156
msgid "This is automatically done if Ketesa is enabled. Otherwise, to expose the APIs publicly, add the following configuration to your `vars.yml` file:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:160
#: ../../../docs/configuring-playbook-bot-draupnir.md:162
msgid "Obtain an access token for admin account"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:162
#: ../../../docs/configuring-playbook-bot-draupnir.md:164
msgid "Manual access to Synapse's Admin APIs requires an access token for a homeserver admin account. Refer to the documentation on [how to obtain an access token](obtaining-access-tokens.md)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:165
#: ../../../docs/configuring-playbook-bot-draupnir.md:167
msgid "Access tokens are sensitive information. Do not include them in any bug reports, messages, or logs. Do not share the access token with anyone."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:167
#: ../../../docs/configuring-playbook-bot-draupnir.md:169
msgid "Run the `curl` command"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:169
#: ../../../docs/configuring-playbook-bot-draupnir.md:171
msgid "To disable rate limiting, run the following command on systems that ship curl. Before running it, make sure to replace:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:171
#: ../../../docs/configuring-playbook-bot-draupnir.md:173
msgid "`ADMIN_ACCESS_TOKEN_HERE` with the access token of the admin account"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:172
#: ../../../docs/configuring-playbook-bot-draupnir.md:174
msgid "`example.com` with your base domain"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:173
#: ../../../docs/configuring-playbook-bot-draupnir.md:175
msgid "`@bot.draupnir:example.com` with the MXID of your Draupnir bot user"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:179
#: ../../../docs/configuring-playbook-bot-draupnir.md:254
#: ../../../docs/configuring-playbook-bot-draupnir.md:181
#: ../../../docs/configuring-playbook-bot-draupnir.md:256
msgid "**Notes**:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:181
#: ../../../docs/configuring-playbook-bot-draupnir.md:183
msgid "This does not work on outdated Windows 10 as curl is not available there."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:182
#: ../../../docs/configuring-playbook-bot-draupnir.md:184
msgid "Even if the APIs are not exposed to the internet, you should still be able to run the command on the homeserver locally."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:184
#: ../../../docs/configuring-playbook-bot-draupnir.md:186
msgid "Abuse Reports"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:186
#: ../../../docs/configuring-playbook-bot-draupnir.md:188
msgid "Draupnir can receive reports in the management room."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:188
#: ../../../docs/configuring-playbook-bot-draupnir.md:190
msgid "The bot can intercept the report API endpoint of the client-server API, which requires integration with the reverse proxy in front of the homeserver. If you are using Traefik, this playbook can set this up for you:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:194
#: ../../../docs/configuring-playbook-bot-draupnir.md:196
msgid "Enabling synapse-http-antispam support"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:196
#: ../../../docs/configuring-playbook-bot-draupnir.md:198
msgid "Certain protections in Draupnir require the [synapse-http-antispam](https://github.com/maunium/synapse-http-antispam) module and a Synapse homeserver plus homeserver admin status to function. This module can be enabled in the playbook via setting `matrix_bot_draupnir_config_web_synapseHTTPAntispam_enabled` to `true` and making sure that Draupnir admin API access is enabled."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:206
#: ../../../docs/configuring-playbook-bot-draupnir.md:208
msgid "These protections need to be manually activated. Consulting the [enabling protections](#enabling-built-in-protections) guide and/or upstream documentation can be helpful."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:208
#: ../../../docs/configuring-playbook-bot-draupnir.md:210
msgid "The other method polls a Synapse Admin API endpoint, hence it is available only if using Synapse and if the Draupnir user is an admin. To enable it, set `pollReports: true` in your `vars.yml` file as below:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:215
#: ../../../docs/configuring-playbook-bot-draupnir.md:217
msgid "Extending the configuration"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:217
#: ../../../docs/configuring-playbook-bot-draupnir.md:219
msgid "There are some additional things you may wish to configure about the bot."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:219
#: ../../../docs/configuring-playbook-bot-draupnir.md:221
msgid "Take a look at:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:221
#: ../../../docs/configuring-playbook-bot-draupnir.md:223
msgid "`roles/custom/matrix-bot-draupnir/defaults/main.yml` for some variables that you can customize via your `vars.yml` file. You can override settings (even those that don't have dedicated playbook variables) using the `matrix_bot_draupnir_configuration_extension_yaml` variable"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:223
#: ../../../docs/configuring-playbook-bot-draupnir.md:225
msgid "For example, to change Draupnir's `acceptInvitesFromSpace` option to `!qporfwt:example.com`, add the following configuration to your `vars.yml` file:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:237
#: ../../../docs/configuring-playbook-bot-draupnir.md:239
msgid "Migrating from Mjolnir (Only required if migrating)"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:239
#: ../../../docs/configuring-playbook-bot-draupnir.md:241
msgid "Replace your `matrix_bot_mjolnir` config with `matrix_bot_draupnir` config. Also disable Mjolnir if you're doing migration."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:241
#: ../../../docs/configuring-playbook-bot-draupnir.md:243
msgid "Note that Draupnir supports E2EE natively, so you can enable it instead of Pantalaimon. It is recommended to consult the instruction [here](#native-e2ee-support)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:243
#: ../../../docs/configuring-playbook-bot-draupnir.md:245
msgid "That is all you need to do due to that Draupnir can complete migration on its own."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:245
#: ../../../docs/configuring-playbook-bot-draupnir.md:247
msgid "Installing"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:247
#: ../../../docs/configuring-playbook-bot-draupnir.md:249
msgid "After configuring the playbook, run it with [playbook tags](playbook-tags.md) as below:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:256
#: ../../../docs/configuring-playbook-bot-draupnir.md:258
msgid "The `ensure-matrix-users-created` playbook tag makes the playbook automatically create the bot's user account."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:258
#: ../../../docs/configuring-playbook-bot-draupnir.md:260
msgid "The shortcut commands with the [`just` program](just.md) are also available: `just install-all` or `just setup-all`"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:260
#: ../../../docs/configuring-playbook-bot-draupnir.md:262
msgid "`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."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:262
#: ../../../docs/configuring-playbook-bot-draupnir.md:264
msgid "If you change the bot password (`matrix_bot_draupnir_password` in your `vars.yml` file) subsequently, the bot user's credentials on the homeserver won't be updated automatically. If you'd like to change the bot user's password, use a tool like [Ketesa](configuring-playbook-ketesa.md) to change it, and then update `matrix_bot_draupnir_password` to let the bot know its new password."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:264
#: ../../../docs/configuring-playbook-bot-draupnir.md:266
msgid "Usage"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:266
#: ../../../docs/configuring-playbook-bot-draupnir.md:268
msgid "You can refer to the upstream [documentation](https://the-draupnir-project.github.io/draupnir-documentation/) for additional ways to use and configure Draupnir and for a more detailed usage guide."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:268
#: ../../../docs/configuring-playbook-bot-draupnir.md:270
msgid "Below is a **non-exhaustive quick-start guide** for the impatient."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:270
#: ../../../docs/configuring-playbook-bot-draupnir.md:272
msgid "Making Draupnir join and protect a room"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:272
#: ../../../docs/configuring-playbook-bot-draupnir.md:274
msgid "Draupnir can be told to self-join public rooms, but it's better to follow this flow which works well for all kinds of rooms:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:274
#: ../../../docs/configuring-playbook-bot-draupnir.md:276
msgid "Invite the bot to the room manually ([inviting Draupnir to rooms](https://the-draupnir-project.github.io/draupnir-documentation/moderator/managing-protected-rooms#inviting-draupnir-to-rooms)). Before joining, the bot *may* ask for confirmation in the Management Room"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:276
#: ../../../docs/configuring-playbook-bot-draupnir.md:278
msgid "[Give the bot permissions to do its job](#giving-draupnir-permissions-to-do-its-job)"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:278
#: ../../../docs/configuring-playbook-bot-draupnir.md:280
msgid "Tell it to protect the room (using the [rooms command](https://the-draupnir-project.github.io/draupnir-documentation/moderator/managing-protected-rooms#using-the-draupnir-rooms-command)) by sending the following command to the Management Room: `!draupnir rooms add !qporfwt:example.com`"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:280
#: ../../../docs/configuring-playbook-bot-draupnir.md:282
msgid "To have Draupnir provide useful room protection, you need do to a bit more work (at least the first time around). You may wish to [Subscribe to a public policy list](#subscribing-to-a-public-policy-list), [Create your own own policy and rules](#creating-your-own-policy-lists-and-rules) and [Enabling built-in protections](#enabling-built-in-protections)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:282
#: ../../../docs/configuring-playbook-bot-draupnir.md:284
msgid "Giving Draupnir permissions to do its job"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:284
#: ../../../docs/configuring-playbook-bot-draupnir.md:286
msgid "For Draupnir to do its job, you need to [give it permissions](https://the-draupnir-project.github.io/draupnir-documentation/moderator/managing-protected-rooms#giving-draupnir-permissions) in rooms it's protecting. This involves **giving it an Administrator power level**."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:286
#: ../../../docs/configuring-playbook-bot-draupnir.md:288
msgid "**We recommend setting this power level as soon as the bot joins your room** (and before you create new rules), so that it can apply rules as soon as they are available. If the bot is under-privileged, it may fail to apply protections and may not retry for a while (or until your restart it)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:288
#: ../../../docs/configuring-playbook-bot-draupnir.md:290
msgid "Subscribing to a public policy list"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:290
#: ../../../docs/configuring-playbook-bot-draupnir.md:292
msgid "We recommend **subscribing to a public [policy list](https://the-draupnir-project.github.io/draupnir-documentation/concepts/policy-lists)** using the [watch command](https://the-draupnir-project.github.io/draupnir-documentation/moderator/managing-policy-lists#using-draupnirs-watch-command-to-subscribe-to-policy-rooms)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:292
#: ../../../docs/configuring-playbook-bot-draupnir.md:294
msgid "Policy lists are maintained in Matrix rooms. Popular ones maintained in the public are:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:294
#: ../../../docs/configuring-playbook-bot-draupnir.md:296
msgid "`#community-moderation-effort-bl:neko.dev`"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:295
#: ../../../docs/configuring-playbook-bot-draupnir.md:297
msgid "`#huginn-muninn-active-threats:feline.support`"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:297
#: ../../../docs/configuring-playbook-bot-draupnir.md:299
msgid "You can tell Draupnir to subscribe to each of these by sending the following command to the Management Room: `!draupnir watch POLICY_LIST_ADDRESS_HERE` (e.g. `!draupnir watch #community-moderation-effort-bl:neko.dev`)"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:299
#: ../../../docs/configuring-playbook-bot-draupnir.md:301
msgid "Creating your own policy lists and rules"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:301
#: ../../../docs/configuring-playbook-bot-draupnir.md:303
msgid "We also recommend **creating your own policy lists** with the [list create](https://the-draupnir-project.github.io/draupnir-documentation/moderator/managing-policy-lists#using-draupnirs-list-create-command-to-create-a-policy-room) command."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:303
#: ../../../docs/configuring-playbook-bot-draupnir.md:305
msgid "You can do so by sending the following command to the Management Room: `!draupnir list create my-bans my-bans-bl`. This will create a policy list having a name (shortcode) of `my-bans` and stored in a public `#my-bans-bl:example.com` room on your server. As soon as you run this command, the bot will invite you to the policy list room."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:305
#: ../../../docs/configuring-playbook-bot-draupnir.md:307
msgid "A policy list does nothing by itself, so the next step is **adding some rules to your policy list**. Policies target a so-called `entity` (one of: `user`, `room` or `server`). These entities are mentioned on the [policy lists](https://the-draupnir-project.github.io/draupnir-documentation/concepts/policy-lists) documentation page and in the Matrix Spec [here](https://spec.matrix.org/v1.11/client-server-api/#mban-recommendation)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:307
#: ../../../docs/configuring-playbook-bot-draupnir.md:309
msgid "The simplest and most useful entity to target is `user`. Below are a few examples using the [ban command](https://the-draupnir-project.github.io/draupnir-documentation/moderator/managing-users#the-ban-command) and targeting users."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:309
#: ../../../docs/configuring-playbook-bot-draupnir.md:311
msgid "To create rules, you run commands in the Management Room (**not** in the policy list room)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:311
#: ../../../docs/configuring-playbook-bot-draupnir.md:313
msgid "(ban a single user on a given homeserver): `!draupnir ban @charles:example.com my-bans Rude to others`"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:312
#: ../../../docs/configuring-playbook-bot-draupnir.md:314
msgid "(ban all users on a given homeserver by using a [wildcard](https://the-draupnir-project.github.io/draupnir-documentation/moderator/managing-users#wildcards)): `!draupnir ban @*:example.org my-bans Spam server, all users are fake`"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:314
#: ../../../docs/configuring-playbook-bot-draupnir.md:316
msgid "As a result of running these commands, you may observe:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:316
#: ../../../docs/configuring-playbook-bot-draupnir.md:318
msgid "Draupnir creating `m.policy.rule.user` state events in the `#my-bans-bl:example.com` room on your server"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:317
#: ../../../docs/configuring-playbook-bot-draupnir.md:319
msgid "applying these rules against all rooms that Draupnir is an Administrator in"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:319
#: ../../../docs/configuring-playbook-bot-draupnir.md:321
msgid "You can undo bans with the [unban command](https://the-draupnir-project.github.io/draupnir-documentation/moderator/managing-users#the-unban-command)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:321
#: ../../../docs/configuring-playbook-bot-draupnir.md:323
msgid "Enabling built-in protections"
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:323
#: ../../../docs/configuring-playbook-bot-draupnir.md:325
msgid "You can also **turn on various built-in [protections](https://the-draupnir-project.github.io/draupnir-documentation/protections)** like `JoinWaveShortCircuitProtection` (\"If X amount of users join in Y time, set the room to invite-only\")."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:325
#: ../../../docs/configuring-playbook-bot-draupnir.md:327
msgid "To **see which protections are available and which are enabled**, send a `!draupnir protections` command to the Management Room."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:327
#: ../../../docs/configuring-playbook-bot-draupnir.md:329
msgid "To [**see the configuration options for a given protection**](https://the-draupnir-project.github.io/draupnir-documentation/protections/configuring-protections#displaying-the-protection-settings), send a `!draupnir protections show PROTECTION_NAME` (e.g. `!draupnir protections show JoinWaveShortCircuitProtection`)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:329
#: ../../../docs/configuring-playbook-bot-draupnir.md:331
msgid "To [**set a specific option for a given protection**](https://the-draupnir-project.github.io/draupnir-documentation/protections/configuring-protections#changing-protection-settings), send a command like this: `!draupnir protections config set PROTECTION_NAME OPTION VALUE` (e.g. `!draupnir protections config set JoinWaveShortCircuitProtection timescaleMinutes 30`)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:331
#: ../../../docs/configuring-playbook-bot-draupnir.md:333
msgid "To [**enable a given protection**](https://the-draupnir-project.github.io/draupnir-documentation/protections/block-invitations-on-server-protection#enabling-the-protection), send a command like this: `!draupnir protections enable PROTECTION_NAME` (e.g. `!draupnir protections enable JoinWaveShortCircuitProtection`)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-draupnir.md:333
#: ../../../docs/configuring-playbook-bot-draupnir.md:335
msgid "To **disable a given protection**, send a command like this: `!draupnir protections disable PROTECTION_NAME` (e.g. `!draupnir protections disable JoinWaveShortCircuitProtection`)."
msgstr ""
@@ -0,0 +1,581 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2018-2026, Slavi Pantaleev, Aine Etke, MDAD community members
# This file is distributed under the same license as the matrix-docker-ansible-deploy package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: matrix-docker-ansible-deploy \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-13 03:24+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../../docs/configuring-playbook-bot-meowlnir.md:7
msgid "Setting up Meowlnir (optional)"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:9
msgid "The playbook can install and configure the [Meowlnir](https://github.com/maunium/meowlnir) moderation bot for you."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:11
msgid "See the project's [documentation](https://docs.mau.fi/meowlnir/) to learn what it does and why it might be useful to you."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:13
msgid "Meowlnir is an alternative to [Draupnir](configuring-playbook-bot-draupnir.md) and [Mjolnir](configuring-playbook-bot-mjolnir.md). It speaks the same [policy list](https://the-draupnir-project.github.io/draupnir-documentation/concepts/policy-lists) protocol, so it can subscribe to the same community ban lists, but it differs from them in a few ways that may matter to you:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:15
msgid "It runs as an **appservice** and hosts **multiple bots**, each with its own management room. They live in Meowlnir's database, not its configuration file, but you still [declare them in your `vars.yml` file](#declaring-bots)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:16
msgid "It can **override a policy coming from a list you do not control**, via unban policies combined with the ordering of your watched lists. See [Overriding a policy from someone else's list](#overriding-a-policy-from-someone-elses-list)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:17
msgid "It is written in Go and is optimized for Synapse, using its database and admin APIs directly."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:19
msgid "Meowlnir and Draupnir can run side by side, but not usefully in the *same* room: whichever bot you are migrating away from still watches the same community lists, so it re-applies the very bans your unban policies remove. Migrate room by room. See [Trialling Meowlnir alongside another bot](#trialling-meowlnir-alongside-another-bot)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:21
msgid "Prerequisites"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:23
msgid "Postgres"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:25
msgid "Meowlnir stores its state in a Postgres database. The playbook creates one for you automatically when using the integrated Postgres server."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:27
msgid "Adjusting DNS records"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:29
msgid "**No DNS changes are necessary.** Meowlnir is reached by the homeserver over the container network, and the paths it optionally serves publicly (abuse reports and the policy server) are routed on your existing `matrix.example.com` domain."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:31
msgid "Adjusting the playbook configuration"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:33
msgid "To enable Meowlnir, add the following configuration to your `inventory/host_vars/matrix.example.com/vars.yml` file:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:39
msgid "Declaring bots"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:41
msgid "That gets the service running, but Meowlnir does nothing until it has at least one bot. Declare the ones you want and the playbook creates them for you:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "Field"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "Required"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "Notes"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "`username`"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "yes"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "The localpart of the bot's Matrix user. Awkward to change later, so choose it carefully."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "`displayname`"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "The name shown in rooms. Safe to change at any time."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "`avatar_url`"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "An `mxc://` URI, or `\"\"` for no avatar."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "`management_room_auto_create`"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "Whether the playbook creates the bot's management room. Mutually exclusive with a non-empty `management_rooms`."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "`management_rooms`"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "Rooms you have created yourself, `[]` when auto-creating. See [Supplying your own management room](#supplying-your-own-management-room)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "`initial_managers`"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "no"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:0
msgid "Who to invite to an auto-created room. Defaults to the instance-wide list below."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:67
msgid "Usernames have to start with `meowlnir_` (the value of `matrix_bot_meowlnir_user_prefix`), so that bots fall inside the user namespace the homeserver lets Meowlnir operate."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:69
msgid "Changing `displayname` or `avatar_url` and re-running updates the bot in place. The comparison is against Meowlnir's own record, so profile edits made directly from a Matrix client are not reverted."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:71
msgid "Initial managers"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:73
msgid "With `management_room_auto_create: true`, the playbook creates each bot's management room and invites its initial managers to it. You only need to accept the room invitation."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:75
msgid "`matrix_admin` is a single playbook variable which affects all bridges and bots, so setting it is usually a better move than setting anything specific to this role — **if it is already configured in your `vars.yml` file, there is nothing to do here**. If neither `matrix_admin` nor `matrix_bot_meowlnir_initial_managers` are set, the playbook would tell you about it."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:77
msgid "A per-bot `initial_managers` replaces the instance-wide list. Declaring it empty means nobody, which fails the run for a bot relying on `management_room_auto_create`."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:79
msgid "The list is consulted only while the room is being created. Adding a name to it later invites nobody, because the room already exists — invite and promote further moderators from inside the room instead, as described in [Who can command a bot](#who-can-command-a-bot)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:81
msgid "Rooms the playbook creates"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:83
msgid "The bot creates the room with the `trusted_private_chat` preset, which gives every invitee the standing to command it. This is an additional room creator on room versions supporting [MSC4289](https://github.com/matrix-org/matrix-spec-proposals/pull/4289) (like v12) and power level 100 on older room versions. Creator status cannot be revoked subsequently."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:85
msgid "The room's encryption follows `matrix_bot_meowlnir_config_encryption_enable`, and its name and topic come from `matrix_bot_meowlnir_management_room_name` and `matrix_bot_meowlnir_management_room_topic`."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:87
msgid "Supplying your own management room"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:89
msgid "If you would rather own the room outright, create it yourself and declare it instead. The bot is then merely an administrator in a room you created:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:102
msgid "An empty, invite-only room is fine. The order matters, because **each step depends on the one before it**:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:104
msgid "Declare the room and run the playbook. Do not invite the bot beforehand."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:105
msgid "The playbook creates the bot and tells Meowlnir about the room. Meowlnir would try to join right away, but will fail for invite-only rooms (a harmless error in the log)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:106
msgid "Invite the bot. It accepts the invitation, because the room is already marked as a management room for it."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:107
msgid "Give it power level 50 or more (ideally 100), so that it can store its protected rooms and watched lists there."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:109
msgid "Meowlnir supports several management rooms per bot, and `encrypted` is set per room. Marking a room encrypted only means something when [End-to-End Encryption support](#end-to-end-encryption-support) is switched on, which it is not by default."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:111
msgid "Who can command a bot"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:113
msgid "**Management room membership alone is not enough**, which is different from what [Draupnir](configuring-playbook-bot-draupnir.md) does, where everyone in the management room can issue commands."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:115
msgid "Meowlnir decides who may drive a bot from power levels in its management room: anyone who can send the `fi.mau.meowlnir.watched_lists` state event (power level 50 by default), plus the room's creators."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:117
msgid "Bots which are no longer declared"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:119
msgid "The bot list (`matrix_bot_meowlnir_bots_custom`) is authoritative. Removing entries from there will make the playbook unregister them with the Meowlnir instance."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:121
msgid "Removal only adjusts Meowlnir's own records. A removed bot's Matrix user remains activated and stays in the rooms it had joined. A removed management room leaves the room and the bot's membership in it intact - it's just that Meowlnir stops taking commands there."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:123
msgid "Removal happens under the same `ensure-matrix-users-created` tag that creates bots. It's one Ansible tag for \"synchronizing the bots state\" (creation, changes, and removal)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:125
msgid "To turn removal off entirely, set `matrix_bot_meowlnir_bots_pruning_enabled: false`. As a safety measure, the playbook refuses to prune when *no* bots are declared at all; override that with `matrix_bot_meowlnir_bots_pruning_on_empty_roster_enabled: true`."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:127
msgid "Trialling Meowlnir alongside another bot"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:129
msgid "Meowlnir has a dry-run mode in which it does everything except take moderation actions:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:136
msgid "Dry run does not cover the [synapse-http-antispam](#enabling-synapse-http-antispam-support) integration. It suppresses actions Meowlnir takes itself (bans, server ACLs, rejecting pending invites), but the verdicts it hands back to Synapse still block invites and joins. Leave that integration off while trialling."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:138
msgid "Do not expect dry run to preview what Meowlnir would do in rooms another policy-list bot already moderates. Meowlnir only acts on users who are *in* a room, and the other bot has already removed everyone its lists match, so the preview comes out empty. Dry run also skips the power level check described under [Protecting a room](#protecting-a-room), so it will not surface a permissions problem either."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:140
msgid "Abuse reports"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:142
msgid "Meowlnir can intercept the report endpoints of the client-server API, so that abuse reports are delivered to a management room. This requires integration with the reverse proxy in front of the homeserver, which the playbook sets up for you when using Traefik:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:151
msgid "Only the `v3` report endpoints are routed to Meowlnir. Requests to the legacy `r0` endpoints continue to reach the homeserver, because Meowlnir does not serve them."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:153
msgid "Enabling synapse-http-antispam support"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:155
msgid "Meowlnir can block invites and joins before they happen. This requires the [synapse-http-antispam](https://github.com/maunium/synapse-http-antispam) module, which the playbook can enable for you:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:165
msgid "The playbook wires the module up to a single consumer, so this cannot be enabled at the same time as `matrix_bot_draupnir_config_web_synapseHTTPAntispam_enabled`. The playbook fails the run if both are enabled."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:167
msgid "With the module in place, you can also block invitations to specific users outright, which is useful for accounts that attract spam:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:174
msgid "Such an invitation can still be let through case by case with the `!allow-invite` command."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:176
msgid "End-to-End Encryption support"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:178
msgid "To let Meowlnir's bots participate in encrypted rooms:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:184
msgid "When using Synapse, the playbook turns on the experimental features this depends on (`msc2409_to_device_messages_enabled` and `msc3202_transaction_extensions`) for you."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:186
msgid "Policy server (MSC4284)"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:188
msgid "Meowlnir can act as a [policy server](https://github.com/matrix-org/matrix-spec-proposals/pull/4284), letting rooms ask it to vet events before they are accepted:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:194
msgid "This exposes `/_matrix/policy` on your Matrix federation endpoint, so that other servers participating in a room can reach it."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:196
msgid "That only stands the policy server up, though — no room is put behind it until you say so from the management room:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:202
msgid "Given no room, `enable` applies to every protected room. Rooms which are not protected are skipped, with `Skipped ... as it is not a protected room`, so [protect a room](#protecting-a-room) before enabling it here. `!policyserver` on its own reports whether the policy server is available and prints its public key, and `!policyserver disable` reverses the change."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:204
msgid "The playbook derives a stable signing key for you from `matrix_homeserver_generic_secret_key`. If you would rather use an independently generated one, produce it with the command below and set it as `matrix_bot_meowlnir_config_policy_server_signing_key`:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:210
msgid "Synapse admin API access (optional)"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:212
msgid "A few of Meowlnir's features go through Synapse's admin API, not the client-server API — suspending or deactivating users, and deleting rooms during a takedown. Those calls require the caller to be a Synapse **server admin**, which bots are not by default, so they come back as `M_FORBIDDEN` (\"You are not a server admin\"). Nothing else is affected: bans, server ACLs, protecting rooms and watching policy lists all go through the client-server API, where a sufficient power level is the only requirement."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:214
msgid "To grant that access, point each bot at a token belonging to a server admin:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:221
msgid "The key is the bot the token is used for; the token itself belongs to an administrator account, not to the bot."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:223
msgid "If you have more than one management room, note that room bans are only processed in the one named by `matrix_bot_meowlnir_config_meowlnir_room_ban_room`, and ignored elsewhere."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:225
msgid "Where the token comes from depends on how your homeserver authenticates. Ordinarily you [obtain an access token](obtaining-access-tokens.md) for an account which is a Synapse server admin. When [Matrix Authentication Service](configuring-playbook-matrix-authentication-service.md) is enabled, Synapse no longer decides who is an admin, so the token has to be issued by MAS with admin privileges:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:231
msgid "Note that bot users are created by the appservice and are not known to Matrix Authentication Service, so the token cannot be issued for the bot itself — use an administrator account."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:233
msgid "Access to the Synapse database (optional)"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:235
msgid "Some room takedown features rely on Meowlnir reading room IDs directly from the Synapse database. Upstream expects a user with read-only permissions, which the playbook does not create. Enabling the integration below hands Meowlnir the same credentials Synapse itself uses, which also grant write access:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:241
msgid "If you would rather not do that, create a read-only Postgres user yourself and point Meowlnir at it with `matrix_bot_meowlnir_synapse_database_uri`."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:243
msgid "Adopting an existing Meowlnir installation"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:245
msgid "If you already run Meowlnir outside the playbook and want to bring it under this role, two things need attention before the first run."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:247
msgid "Your bots exist in Meowlnir's database but not in your `vars.yml` file, and [pruning](#bots-which-are-no-longer-declared) is on by default, so the first run would remove them. Declare them in `matrix_bot_meowlnir_bots_custom` — with `management_room_auto_create: false` and their existing rooms under `management_rooms` — or set `matrix_bot_meowlnir_bots_pruning_enabled: false`."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:249
msgid "If the installation uses encryption, also copy the `pickle_key` from its old configuration file into `matrix_bot_meowlnir_config_encryption_pickle_key`. The crypto store cannot be read with a different key than it was written with, so leaving the playbook's default in place costs your bots their existing encryption sessions."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:251
msgid "Extending the configuration"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:253
msgid "There are some additional things you may wish to configure about the bot."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:255
msgid "Take a look at:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:257
msgid "`roles/custom/matrix-bot-meowlnir/defaults/main.yml` for some variables that you can customize via your `vars.yml` file. You can override settings (even those that don't have dedicated playbook variables) using the `matrix_bot_meowlnir_configuration_extension_yaml` variable"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:260
msgid "Do not set any of Meowlnir's secrets to the literal value `generate`. Meowlnir re-runs its configuration upgrader on every start, so a `generate` placeholder would produce a brand new secret on every restart. The playbook derives stable values for you, and fails the run if it finds a `generate` placeholder."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:262
msgid "Installing"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:264
msgid "After configuring the playbook, run it with [playbook tags](playbook-tags.md) as below:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:270
msgid "With `management_room_auto_create`, you then have an invitation waiting for you — accept it and start sending commands. If you supplied the management room yourself, carry on from step 3 of [Supplying your own management room](#supplying-your-own-management-room): invite the bot, then give it power level 50 or more."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:272
msgid "**Notes**:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:274
msgid "The `ensure-matrix-users-created` tag is what creates the bots declared in `matrix_bot_meowlnir_bots_custom`, registers their management rooms, and removes the ones you no longer declare. It deliberately does not run as part of `setup-all`, so that installing onto a server whose database you are about to restore from a backup does not write anything."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:276
msgid "Re-running is safe and idempotent, so adding a bot later is a matter of extending the list and running the same command again."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:278
msgid "The shortcut commands with the [`just` program](just.md) are also available: `just install-all` or `just setup-all`"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:280
msgid "Usage"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:282
msgid "You can refer to the upstream [documentation](https://docs.mau.fi/meowlnir/) for a more detailed usage guide."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:284
msgid "Below is a **non-exhaustive quick-start guide** for the impatient."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:286
msgid "Inspecting and driving Meowlnir directly"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:288
msgid "The playbook drives Meowlnir's management API for you based on `matrix_bot_meowlnir_bots_custom`, which is the recommended way. For anything it does not cover, helper scripts are installed under `/matrix/meowlnir/bin`, which find the management secret and reach the API inside the container:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:301
msgid "`meowlnir-create-management-room` prints the new room's ID, which you then register with `meowlnir-api PUT /_meowlnir/v1/management_room/<room ID>`."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:303
msgid "See the upstream [bot creation documentation](https://docs.mau.fi/meowlnir/bot-create.html) for the full set of endpoints. Bear in mind that bots you create this way are not declared in your `vars.yml` file, so the next playbook run will remove them again (see [Bots which are no longer declared](#bots-which-are-no-longer-declared))."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:305
msgid "If you have enabled encryption, each bot also needs verifying once. That step is left manual because it returns a recovery key you need to store somewhere safe:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:311
msgid "Protecting a room"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:313
msgid "Invite the bot to a room, give it a power level high enough to act (see below), and then tell it to protect the room by sending this command to its management room:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:319
msgid "Meowlnir refuses to protect a room unless its power level reaches that room's own `ban` and `redact` levels (50 in a default room). That is only enough for user bans, though: writing `m.room.server_acl` usually requires 100, and without it the server rules in your watched lists have no effect — which is most of what a list like [CME](https://matrix.to/#/%23community-moderation-effort-bl:neko.dev) carries. **Give the bot power level 100** unless you only care about user bans."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:321
msgid "Set the power level *before* protecting the room. Meowlnir re-sends server ACLs when it starts and when a watched list changes, but not when its own power level goes up subsequently, so raising it afterwards leaves the room without ACLs until you restart the bot (`systemctl restart matrix-bot-meowlnir` or via the playbook's Ansible `start` tag)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:323
msgid "Subscribing to a policy list"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:325
msgid "Policy lists are maintained in Matrix rooms. Popular public ones are:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:327
msgid "`#community-moderation-effort-bl:neko.dev`"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:328
msgid "`#huginn-muninn-active-threats:feline.support`"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:330
msgid "Subscribe to one by sending the following command to the management room:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:336
msgid "The last argument is a shortcode, which you use to refer to the list in later commands."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:338
msgid "Overriding a policy from someone else's list"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:340
msgid "This is the main capability Meowlnir has that Draupnir does not."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:342
msgid "When several watched lists carry a policy for the same user, **the first match wins**, and \"first\" means the order in which the lists are watched. So to be able to override a community list's ban, your own list has to come before it."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:344
msgid "`!lists subscribe` appends, which makes subscription order the precedence order. Subscribe to your own list first, and to community lists afterwards:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:352
msgid "If you have already subscribed in the wrong order, fixing it means editing the `fi.mau.meowlnir.watched_lists` state event in the management room by hand. Newer Meowlnir releases (than `v0.2606.0`) add `!lists subscribe … --insert-before <shortcode>`, which will make reordering a single command."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:354
msgid "You can then publish an unban policy into your own list, which takes precedence over the community list's ban:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:361
msgid "Unlike `!ban`, the `!add-unban` command does not treat its reason as a trailing argument, so a reason containing spaces is discarded. Use a single word (or hyphenate) until that is fixed upstream."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:364
msgid "An unban policy stops a ban from being **re-applied**; it does not undo one that is already in place unless Meowlnir applied it itself and still has it on record. A ban placed by a human moderator, or by the Draupnir or Mjolnir you are migrating away from, stays. Unban such a user once by hand — from then on the policy keeps them unbanned, while you remain subscribed to the list that banned them."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:366
msgid "Use `!match @alice:example.com` to see which policies currently apply to a user and which list each came from."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:369
msgid "Unban policies use a Meowlnir-specific recommendation (`fi.mau.meowlnir.unban`) which is not part of the Matrix specification. If you publish your policy list for other people to subscribe to, subscribers running Draupnir or Mjolnir will ignore your unban policies."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:371
msgid "There is also a blunter, server-wide escape hatch for policies that are too wide to tolerate at all — `matrix_bot_meowlnir_config_meowlnir_hacky_rule_filter_custom`, which makes Meowlnir ignore any policy matching the listed entities."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:373
msgid "Troubleshooting"
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:375
msgid "As with all other services, you can find the logs in [systemd-journald](https://www.freedesktop.org/software/systemd/man/systemd-journald.service.html) by running a command like `journalctl -fu matrix-bot-meowlnir`."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:377
msgid "If bots appear to do nothing, check that they have an Administrator power level in the rooms they are meant to protect, and that the room has been added with `!rooms protect`."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:379
msgid "If commands in a management room get no reply at all, check the bot's power level *there* too — it needs at least 50 to record its own configuration."
msgstr ""
#: ../../../docs/configuring-playbook-bot-meowlnir.md:381
msgid "A bare `!lists` returns nothing in a management room which has never had a policy list. That is an upstream bug and it clears as soon as you subscribe to one; `!lists subscribe` works from the start."
msgstr ""
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: matrix-docker-ansible-deploy \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-05-19 07:40+0000\n"
"POT-Creation-Date: 2026-08-13 03:24+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -29,251 +29,255 @@ msgid "See the project's [documentation](https://github.com/matrix-org/mjolnir/b
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:18
msgid "Prerequisites"
msgid "**Note**: you can also use the [Draupnir](configuring-playbook-bot-draupnir.md) or [Meowlnir](configuring-playbook-bot-meowlnir.md) bots, which speak the same [policy list](https://the-draupnir-project.github.io/draupnir-documentation/concepts/policy-lists) protocol."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:20
msgid "Register the bot account"
msgid "Prerequisites"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:22
msgid "The playbook does not automatically create users for you. You **need to register the bot user manually** before setting up the bot."
msgid "Register the bot account"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:24
msgid "Generate a strong password for the bot. You can create one with a command like `pwgen -s 64 1`."
msgid "The playbook does not automatically create users for you. You **need to register the bot user manually** before setting up the bot."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:26
msgid "Generate a strong password for the bot. You can create one with a command like `pwgen -s 64 1`."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:28
msgid "You can use the playbook to [register a new user](registering-users.md):"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:32
#: ../../../docs/configuring-playbook-bot-mjolnir.md:34
msgid "If you would like Mjolnir to be able to deactivate users, move aliases, shutdown rooms, etc then it must be a server admin so you need to change `admin=no` to `admin=yes` in the command above."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:34
#: ../../../docs/configuring-playbook-bot-mjolnir.md:36
msgid "Obtain an access token"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:36
#: ../../../docs/configuring-playbook-bot-mjolnir.md:38
msgid "The bot 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)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:39
#: ../../../docs/configuring-playbook-bot-mjolnir.md:64
#: ../../../docs/configuring-playbook-bot-mjolnir.md:41
#: ../../../docs/configuring-playbook-bot-mjolnir.md:66
msgid "Access tokens are sensitive information. Do not include them in any bug reports, messages, or logs. Do not share the access token with anyone."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:41
#: ../../../docs/configuring-playbook-bot-mjolnir.md:43
msgid "Make sure the account is free from rate limiting"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:43
#: ../../../docs/configuring-playbook-bot-mjolnir.md:45
msgid "If your homeserver's implementation is Synapse, you will need to prevent it from rate limiting the bot's account. **This is a required step. If you do not configure it, Mjolnir will crash.**"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:45
#: ../../../docs/configuring-playbook-bot-mjolnir.md:47
msgid "This can be done using Synapse's [Admin APIs](https://element-hq.github.io/synapse/latest/admin_api/user_admin_api.html#override-ratelimiting-for-users). They can be accessed both externally and internally."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:47
#: ../../../docs/configuring-playbook-bot-mjolnir.md:49
msgid "**Note**: access to the APIs is restricted with a valid access token, so exposing them publicly should not be a real security concern. Still, doing so is not recommended for additional security. See [official Synapse reverse-proxying recommendations](https://element-hq.github.io/synapse/latest/reverse_proxy.html#synapse-administration-endpoints)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:49
#: ../../../docs/configuring-playbook-bot-mjolnir.md:51
msgid "The APIs can also be accessed via [Ketesa](https://github.com/etkecc/ketesa), a web UI tool you can use to administrate users, rooms, media, etc. on your Matrix server. The playbook can install and configure Ketesa for you. For details about it, see [this page](configuring-playbook-ketesa.md)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:51
#: ../../../docs/configuring-playbook-bot-mjolnir.md:53
msgid "Add the configuration"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:53
#: ../../../docs/configuring-playbook-bot-mjolnir.md:55
msgid "To expose the APIs publicly, add the following configuration to your `inventory/host_vars/matrix.example.com/vars.yml` file:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:59
#: ../../../docs/configuring-playbook-bot-mjolnir.md:61
msgid "Obtain an access token for admin account"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:61
#: ../../../docs/configuring-playbook-bot-mjolnir.md:63
msgid "Manual access to Synapse's Admin APIs requires an access token for a homeserver admin account. Refer to the documentation on [how to obtain an access token](obtaining-access-tokens.md). If you have made Mjolnir an admin, you can just use the Mjolnir token."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:66
#: ../../../docs/configuring-playbook-bot-mjolnir.md:68
msgid "Run the `curl` command"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:68
#: ../../../docs/configuring-playbook-bot-mjolnir.md:70
msgid "To disable rate limiting, run the following command on systems that ship curl. Before running it, make sure to replace:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:70
#: ../../../docs/configuring-playbook-bot-mjolnir.md:72
msgid "`ADMIN_ACCESS_TOKEN_HERE` with the access token of the admin account"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:71
#: ../../../docs/configuring-playbook-bot-mjolnir.md:73
msgid "`example.com` with your base domain"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:72
#: ../../../docs/configuring-playbook-bot-mjolnir.md:74
msgid "`@bot.mjolnir:example.com` with the MXID of your Mjolnir bot user"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:78
#: ../../../docs/configuring-playbook-bot-mjolnir.md:195
#: ../../../docs/configuring-playbook-bot-mjolnir.md:80
#: ../../../docs/configuring-playbook-bot-mjolnir.md:197
msgid "**Notes**:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:79
#: ../../../docs/configuring-playbook-bot-mjolnir.md:81
msgid "This does not work on outdated Windows 10 as curl is not available there."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:80
#: ../../../docs/configuring-playbook-bot-mjolnir.md:82
msgid "Even if the APIs are not exposed to the internet, you should still be able to run the command on the homeserver locally."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:82
#: ../../../docs/configuring-playbook-bot-mjolnir.md:84
msgid "Create a management room"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:84
#: ../../../docs/configuring-playbook-bot-mjolnir.md:86
msgid "Using your own account, create a new invite only room that you will use to manage the bot. This is the room where you will see the status of the bot and where you will send commands to the bot, such as the command to ban a user from another room."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:87
#: ../../../docs/configuring-playbook-bot-mjolnir.md:89
msgid "Anyone in this room can control the bot so it is important that you only invite trusted users to this room."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:89
#: ../../../docs/configuring-playbook-bot-mjolnir.md:91
msgid "It is possible to make the management room encrypted (E2EE). If doing so, then you MUST enable and use Pantalaimon (see [below](#configuration-with-e2ee-support))."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:91
#: ../../../docs/configuring-playbook-bot-mjolnir.md:93
msgid "Once you have created the room you need to copy the room ID so you can specify it on your `vars.yml` file. In Element Web you can check the ID by going to the room's settings and clicking \"Advanced\". The room ID will look something like `!qporfwt:example.com`."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:93
#: ../../../docs/configuring-playbook-bot-mjolnir.md:95
msgid "Finally invite the `@bot.mjolnir:example.com` account you created earlier into the room."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:95
#: ../../../docs/configuring-playbook-bot-mjolnir.md:97
msgid "Adjusting the playbook configuration"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:97
#: ../../../docs/configuring-playbook-bot-mjolnir.md:99
msgid "To enable the bot, add the following configuration to your `vars.yml` file. Make sure to replace `MANAGEMENT_ROOM_ID_HERE` with the one of the room which you have created just now."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:106
#: ../../../docs/configuring-playbook-bot-mjolnir.md:108
msgid "End-to-End Encryption support"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:108
#: ../../../docs/configuring-playbook-bot-mjolnir.md:110
msgid "Decide whether you want Mjolnir to be capable of operating in end-to-end encrypted (E2EE) rooms. This includes the management room and the moderated rooms."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:110
#: ../../../docs/configuring-playbook-bot-mjolnir.md:112
msgid "To support E2EE, Mjolnir needs to [use Pantalaimon](configuring-playbook-pantalaimon.md)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:112
#: ../../../docs/configuring-playbook-bot-mjolnir.md:114
msgid "Configuration with E2EE support"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:114
#: ../../../docs/configuring-playbook-bot-mjolnir.md:116
msgid "When using Pantalaimon, Mjolnir will log in to its bot account itself through Pantalaimon, so configure its username and password."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:116
#: ../../../docs/configuring-playbook-bot-mjolnir.md:118
msgid "Add the following configuration to your `vars.yml` file (adapt to your needs):"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:130
#: ../../../docs/configuring-playbook-bot-mjolnir.md:132
msgid "The playbook's `group_vars` will configure other required settings. If using this role separately without the playbook, you also need to configure the two URLs that Mjolnir uses to reach the homeserver, one through Pantalaimon and one \"raw\". This example is taken from the playbook's `group_vars`:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:142
#: ../../../docs/configuring-playbook-bot-mjolnir.md:144
msgid "Configuration without E2EE support"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:144
#: ../../../docs/configuring-playbook-bot-mjolnir.md:146
msgid "When NOT using Pantalaimon, Mjolnir does not log in by itself and you must give it an access token for its bot account."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:146
#: ../../../docs/configuring-playbook-bot-mjolnir.md:148
msgid "Add the following configuration to your `vars.yml` file. Make sure to replace `ACCESS_TOKEN_HERE` with the one created [above](#obtain-an-access-token)."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:152
#: ../../../docs/configuring-playbook-bot-mjolnir.md:154
msgid "Adding Mjolnir synapse antispam module (optional)"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:154
#: ../../../docs/configuring-playbook-bot-mjolnir.md:156
msgid "To enable Mjolnir synapse antispam module, add the following configuration to your `vars.yml` file (adapt to your needs):"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:164
#: ../../../docs/configuring-playbook-bot-mjolnir.md:166
msgid "Extending the configuration"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:166
#: ../../../docs/configuring-playbook-bot-mjolnir.md:168
msgid "There are some additional things you may wish to configure about the bot."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:168
#: ../../../docs/configuring-playbook-bot-mjolnir.md:170
msgid "Take a look at:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:170
#: ../../../docs/configuring-playbook-bot-mjolnir.md:172
msgid "`roles/custom/matrix-bot-mjolnir/defaults/main.yml` for some variables that you can customize via your `vars.yml` file. You can override settings (even those that don't have dedicated playbook variables) using the `matrix_bot_mjolnir_configuration_extension_yaml` variable"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:172
#: ../../../docs/configuring-playbook-bot-mjolnir.md:174
msgid "For example, to change Mjolnir's `recordIgnoredInvites` option to `true`, add the following configuration to your `vars.yml` file:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:186
#: ../../../docs/configuring-playbook-bot-mjolnir.md:188
msgid "Installing"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:188
#: ../../../docs/configuring-playbook-bot-mjolnir.md:190
msgid "After configuring the playbook, run it with [playbook tags](playbook-tags.md) as below:"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:197
#: ../../../docs/configuring-playbook-bot-mjolnir.md:199
msgid "The shortcut commands with the [`just` program](just.md) are also available: `just install-all` or `just setup-all`"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:199
#: ../../../docs/configuring-playbook-bot-mjolnir.md:201
msgid "`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."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:201
#: ../../../docs/configuring-playbook-bot-mjolnir.md:203
msgid "If you change the Pantalaimon's password (`matrix_bot_mjolnir_pantalaimon_password` in your `vars.yml` file) subsequently, its credentials on the homeserver won't be updated automatically. If you'd like to change the password, use a tool like [Ketesa](configuring-playbook-ketesa.md) to change it, and then update `matrix_bot_mjolnir_pantalaimon_password` to let Pantalaimon know its new password."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:203
#: ../../../docs/configuring-playbook-bot-mjolnir.md:205
msgid "Usage"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:205
#: ../../../docs/configuring-playbook-bot-mjolnir.md:207
msgid "You can refer to the upstream [documentation](https://github.com/matrix-org/mjolnir) for additional ways to use and configure Mjolnir. Check out their [quickstart guide](https://github.com/matrix-org/mjolnir#quickstart-guide) for some basic commands you can give to the bot."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:207
#: ../../../docs/configuring-playbook-bot-mjolnir.md:209
msgid "Troubleshooting"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:209
#: ../../../docs/configuring-playbook-bot-mjolnir.md:211
msgid "As with all other services, you can find the logs in [systemd-journald](https://www.freedesktop.org/software/systemd/man/systemd-journald.service.html) by logging in to the server with SSH and running `journalctl -fu matrix-bot-mjolnir`."
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:211
#: ../../../docs/configuring-playbook-bot-mjolnir.md:213
msgid "Increase logging verbosity"
msgstr ""
#: ../../../docs/configuring-playbook-bot-mjolnir.md:213
#: ../../../docs/configuring-playbook-bot-mjolnir.md:215
msgid "The default logging level for this component is `INFO`. If you want to increase the verbosity, add the following configuration to your `vars.yml` file and re-run the playbook:"
msgstr ""
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: matrix-docker-ansible-deploy \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-01 17:14+0000\n"
"POT-Creation-Date: 2026-08-13 03:24+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -409,201 +409,205 @@ msgid "[Setting up Draupnir for all/D4A](configuring-playbook-appservice-draupni
msgstr ""
#: ../../../docs/configuring-playbook.md:211
msgid "[Setting up Buscarron](configuring-playbook-bot-buscarron.md) — a bot you can use to send any form (HTTP POST, HTML) to a (encrypted) Matrix room"
msgid "[Setting up Meowlnir](configuring-playbook-bot-meowlnir.md) — a moderation tool/bot which speaks the same policy list protocol as Draupnir and Mjolnir, but runs in appservice mode and can override policies coming from lists you do not control"
msgstr ""
#: ../../../docs/configuring-playbook.md:213
msgid "Administration"
msgid "[Setting up Buscarron](configuring-playbook-bot-buscarron.md) — a bot you can use to send any form (HTTP POST, HTML) to a (encrypted) Matrix room"
msgstr ""
#: ../../../docs/configuring-playbook.md:215
msgid "Services that help you in administrating and monitoring your Matrix installation."
msgid "Administration"
msgstr ""
#: ../../../docs/configuring-playbook.md:217
msgid "[Setting up Prometheus Alertmanager integration via matrix-alertmanager-receiver](configuring-playbook-alertmanager-receiver.md)"
msgid "Services that help you in administrating and monitoring your Matrix installation."
msgstr ""
#: ../../../docs/configuring-playbook.md:219
msgid "[Enabling metrics and graphs (Prometheus, Grafana) for your Matrix server](configuring-playbook-prometheus-grafana.md)"
msgid "[Setting up Prometheus Alertmanager integration via matrix-alertmanager-receiver](configuring-playbook-alertmanager-receiver.md)"
msgstr ""
#: ../../../docs/configuring-playbook.md:221
msgid "[Setting up the rageshake bug report server](configuring-playbook-rageshake.md)"
msgid "[Enabling metrics and graphs (Prometheus, Grafana) for your Matrix server](configuring-playbook-prometheus-grafana.md)"
msgstr ""
#: ../../../docs/configuring-playbook.md:223
msgid "[Enabling synapse-usage-exporter for Synapse usage statistics](configuring-playbook-synapse-usage-exporter.md)"
msgid "[Setting up the rageshake bug report server](configuring-playbook-rageshake.md)"
msgstr ""
#: ../../../docs/configuring-playbook.md:225
msgid "[Enabling synapse-usage-exporter for Synapse usage statistics](configuring-playbook-synapse-usage-exporter.md)"
msgstr ""
#: ../../../docs/configuring-playbook.md:227
msgid "Backups:"
msgstr ""
#: ../../../docs/configuring-playbook.md:226
#: ../../../docs/configuring-playbook.md:228
msgid "[Setting up BorgBackup](configuring-playbook-backup-borg.md) — a full Matrix server backup solution, including the Postgres database"
msgstr ""
#: ../../../docs/configuring-playbook.md:228
#: ../../../docs/configuring-playbook.md:230
msgid "[Setting up Postgres backup](configuring-playbook-postgres-backup.md) — a Postgres-database backup solution (note: does not include other files)"
msgstr ""
#: ../../../docs/configuring-playbook.md:230
#: ../../../docs/configuring-playbook.md:232
msgid "Other specialized services"
msgstr ""
#: ../../../docs/configuring-playbook.md:232
#: ../../../docs/configuring-playbook.md:234
msgid "Various services that don't fit any other categories."
msgstr ""
#: ../../../docs/configuring-playbook.md:234
#: ../../../docs/configuring-playbook.md:236
msgid "[Setting up Element Call](configuring-playbook-element-call.md) — a native Matrix video conferencing application, built on top of the [Matrix RTC stack](configuring-playbook-matrix-rtc.md) (optional)"
msgstr ""
#: ../../../docs/configuring-playbook.md:236
#: ../../../docs/configuring-playbook.md:238
msgid "[Setting up LiveKit JWT Service](configuring-playbook-livekit-jwt-service.md) - a component of the [Matrix RTC stack](configuring-playbook-matrix-rtc.md) (optional)"
msgstr ""
#: ../../../docs/configuring-playbook.md:238
#: ../../../docs/configuring-playbook.md:240
msgid "[Setting up LiveKit Server](configuring-playbook-livekit-server.md) - a component of the [Matrix RTC stack](configuring-playbook-matrix-rtc.md) (optional)"
msgstr ""
#: ../../../docs/configuring-playbook.md:240
#: ../../../docs/configuring-playbook.md:242
msgid "[Setting up Matrix RTC](configuring-playbook-matrix-rtc.md) (optional)"
msgstr ""
#: ../../../docs/configuring-playbook.md:242
#: ../../../docs/configuring-playbook.md:244
msgid "[Setting up synapse-auto-compressor](configuring-playbook-synapse-auto-compressor.md) for compressing the database on Synapse homeservers"
msgstr ""
#: ../../../docs/configuring-playbook.md:244
#: ../../../docs/configuring-playbook.md:246
msgid "[Setting up Matrix Corporal](configuring-playbook-matrix-corporal.md) (advanced)"
msgstr ""
#: ../../../docs/configuring-playbook.md:246
#: ../../../docs/configuring-playbook.md:248
msgid "[Setting up Matrix.to](configuring-playbook-matrixto.md)"
msgstr ""
#: ../../../docs/configuring-playbook.md:248
#: ../../../docs/configuring-playbook.md:250
msgid "[Setting up Etherpad](configuring-playbook-etherpad.md)"
msgstr ""
#: ../../../docs/configuring-playbook.md:250
#: ../../../docs/configuring-playbook.md:252
msgid "[Setting up the Jitsi video-conferencing platform](configuring-playbook-jitsi.md)"
msgstr ""
#: ../../../docs/configuring-playbook.md:252
#: ../../../docs/configuring-playbook.md:254
msgid "[Setting up Cactus Comments](configuring-playbook-cactus-comments.md) — a federated comment system built on Matrix"
msgstr ""
#: ../../../docs/configuring-playbook.md:254
#: ../../../docs/configuring-playbook.md:256
msgid "[Setting up Pantalaimon (E2EE aware proxy daemon)](configuring-playbook-pantalaimon.md) (advanced)"
msgstr ""
#: ../../../docs/configuring-playbook.md:256
#: ../../../docs/configuring-playbook.md:258
msgid "[Setting up the Sygnal push gateway](configuring-playbook-sygnal.md)"
msgstr ""
#: ../../../docs/configuring-playbook.md:258
#: ../../../docs/configuring-playbook.md:260
msgid "[Setting up the ntfy push notifications server](configuring-playbook-ntfy.md)"
msgstr ""
#: ../../../docs/configuring-playbook.md:260
#: ../../../docs/configuring-playbook.md:262
msgid "Deprecated / unmaintained / removed services"
msgstr ""
#: ../../../docs/configuring-playbook.md:262
#: ../../../docs/configuring-playbook.md:264
msgid "**Note**: since a deprecated or unmaintained service will not be updated, its bug or vulnerability will be unlikely to get patched. It is recommended to migrate from the service to an alternative if any, and make sure to do your own research before you decide to keep it running nonetheless."
msgstr ""
#: ../../../docs/configuring-playbook.md:264
#: ../../../docs/configuring-playbook.md:266
msgid "[Configuring conduwuit](configuring-playbook-conduwuit.md) (removed; this component has been abandoned and unmaintained)"
msgstr ""
#: ../../../docs/configuring-playbook.md:266
#: ../../../docs/configuring-playbook.md:268
msgid "[Setting up the Sliding Sync proxy](configuring-playbook-sliding-sync-proxy.md) for clients which require Sliding Sync support (like old Element X versions, before it got switched to Simplified Sliding Sync)"
msgstr ""
#: ../../../docs/configuring-playbook.md:268
#: ../../../docs/configuring-playbook.md:270
msgid "[Setting up Appservice Kakaotalk bridging](configuring-playbook-bridge-appservice-kakaotalk.md) (removed; the upstream repository has become unreachable and the component could only be installed by self-building it)"
msgstr ""
#: ../../../docs/configuring-playbook.md:270
#: ../../../docs/configuring-playbook.md:272
msgid "[Setting up Appservice Slack bridging](configuring-playbook-bridge-appservice-slack.md) (removed; this component has been discontinued)"
msgstr ""
#: ../../../docs/configuring-playbook.md:272
#: ../../../docs/configuring-playbook.md:274
msgid "[Setting up Appservice Webhooks bridging](configuring-playbook-bridge-appservice-webhooks.md) (deprecated; the bridge's author suggests taking a look at [matrix-hookshot](https://github.com/matrix-org/matrix-hookshot) as a replacement, which can also be [installed using this playbook](configuring-playbook-bridge-hookshot.md))"
msgstr ""
#: ../../../docs/configuring-playbook.md:274
#: ../../../docs/configuring-playbook.md:276
msgid "[Setting up Beeper LinkedIn bridging](configuring-playbook-bridge-beeper-linkedin.md) (unmaintained; the [upstream repository](https://github.com/beeper/linkedin) has been archived. Consider [setting up Mautrix LinkedIn bridging](configuring-playbook-bridge-mautrix-linkedin.md))"
msgstr ""
#: ../../../docs/configuring-playbook.md:276
#: ../../../docs/configuring-playbook.md:278
msgid "[Setting up the Dimension integration manager](configuring-playbook-dimension.md) ([unmaintained](https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2806#issuecomment-1673559299); after [installing](installing.md))"
msgstr ""
#: ../../../docs/configuring-playbook.md:278
#: ../../../docs/configuring-playbook.md:280
msgid "[Setting up Email2Matrix](configuring-playbook-email2matrix.md) (removed; the author suggests taking a look at [Postmoogle](https://github.com/etkecc/postmoogle) as a replacement, which can also be [installed using this playbook](configuring-playbook-bridge-postmoogle.md))"
msgstr ""
#: ../../../docs/configuring-playbook.md:280
#: ../../../docs/configuring-playbook.md:282
msgid "[Setting up Go-NEB](configuring-playbook-bot-go-neb.md) (unmaintained; the bridge's author suggests taking a look at [matrix-hookshot](https://github.com/matrix-org/matrix-hookshot) as a replacement, which can also be [installed using this playbook](configuring-playbook-bridge-hookshot.md))"
msgstr ""
#: ../../../docs/configuring-playbook.md:282
#: ../../../docs/configuring-playbook.md:284
msgid "[Setting up Go Skype Bridge bridging](configuring-playbook-bridge-go-skype-bridge.md) (removed; Skype has been discontinued since May 2025)"
msgstr ""
#: ../../../docs/configuring-playbook.md:284
#: ../../../docs/configuring-playbook.md:286
msgid "[Setting up ma1sd Identity Server](configuring-playbook-ma1sd.md) (removed; this component has been unmaintained for a long time, so it has been removed from the playbook.)"
msgstr ""
#: ../../../docs/configuring-playbook.md:286
#: ../../../docs/configuring-playbook.md:288
msgid "[Setting up matrix-bot-chatgpt](configuring-playbook-bot-chatgpt.md) (unmaintained; the bridge's author suggests taking a look at [baibot](https://github.com/etkecc/baibot) as a replacement, which can also be [installed using this playbook](configuring-playbook-bot-baibot.md))"
msgstr ""
#: ../../../docs/configuring-playbook.md:288
#: ../../../docs/configuring-playbook.md:290
msgid "[Setting up matrix-ldap-registration-proxy](configuring-playbook-matrix-ldap-registration-proxy.md) (removed; the repository of the source code has been removed)"
msgstr ""
#: ../../../docs/configuring-playbook.md:290
#: ../../../docs/configuring-playbook.md:292
msgid "[Setting up matrix-registration](configuring-playbook-matrix-registration.md) (removed; this component has been unmaintained)"
msgstr ""
#: ../../../docs/configuring-playbook.md:292
#: ../../../docs/configuring-playbook.md:294
msgid "[Setting up matrix-registration-bot](configuring-playbook-bot-matrix-registration-bot.md) (removed; this component has been unmaintained)"
msgstr ""
#: ../../../docs/configuring-playbook.md:294
#: ../../../docs/configuring-playbook.md:296
msgid "[Setting up Mautrix Facebook bridging](configuring-playbook-bridge-mautrix-facebook.md) (deprecated in favor of the Messenger/Instagram bridge with [mautrix-meta-messenger](configuring-playbook-bridge-mautrix-meta-messenger.md))"
msgstr ""
#: ../../../docs/configuring-playbook.md:296
#: ../../../docs/configuring-playbook.md:298
msgid "[Setting up Mautrix Instagram bridging](configuring-playbook-bridge-mautrix-instagram.md) (deprecated in favor of the Messenger/Instagram bridge with [mautrix-meta-instagram](configuring-playbook-bridge-mautrix-meta-instagram.md))"
msgstr ""
#: ../../../docs/configuring-playbook.md:298
#: ../../../docs/configuring-playbook.md:300
msgid "[Setting up MX Puppet Discord bridging](configuring-playbook-bridge-mx-puppet-discord.md) (removed; this component has been unmaintained for a long time, so it has been removed from the playbook. Consider [setting up Mautrix Discord bridging](configuring-playbook-bridge-mautrix-discord.md))"
msgstr ""
#: ../../../docs/configuring-playbook.md:300
#: ../../../docs/configuring-playbook.md:302
msgid "[Setting up MX Puppet Instagram bridging](configuring-playbook-bridge-mx-puppet-instagram.md) (removed; this component has been unmaintained for a long time, so it has been removed from the playbook. Consider [setting up Instagram bridging via Mautrix Meta](configuring-playbook-bridge-mautrix-meta-instagram.md))"
msgstr ""
#: ../../../docs/configuring-playbook.md:302
#: ../../../docs/configuring-playbook.md:304
msgid "[Setting up MX Puppet Skype bridging](configuring-playbook-bridge-mx-puppet-skype.md) (removed; this component has been broken for a long time, so it has been removed from the playbook. Consider [setting up Go Skype Bridge bridging](configuring-playbook-bridge-go-skype-bridge.md))"
msgstr ""
#: ../../../docs/configuring-playbook.md:304
#: ../../../docs/configuring-playbook.md:306
msgid "[Setting up MX Puppet Slack bridging](configuring-playbook-bridge-mx-puppet-slack.md) (removed; this component has been unmaintained for a long time, so it has been removed from the playbook. Consider [setting up Mautrix Slack bridging](configuring-playbook-bridge-mautrix-slack.md))"
msgstr ""
#: ../../../docs/configuring-playbook.md:306
#: ../../../docs/configuring-playbook.md:308
msgid "[Setting up MX Puppet Twitter bridging](configuring-playbook-bridge-mx-puppet-twitter.md) (removed; this component has been unmaintained for a long time, so it has been removed from the playbook. Consider [setting up Mautrix Twitter bridging](configuring-playbook-bridge-mautrix-twitter.md))"
msgstr ""
#: ../../../docs/configuring-playbook.md:308
#: ../../../docs/configuring-playbook.md:310
msgid "[Setting up Synapse Auto Invite Accept](configuring-playbook-synapse-auto-accept-invite.md) (removed; since Synapse [v1.109.0](https://github.com/element-hq/synapse/releases/tag/v1.109.0) the same feature is available natively.)"
msgstr ""
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: matrix-docker-ansible-deploy \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-01 17:14+0000\n"
"POT-Creation-Date: 2026-08-13 03:24+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -772,6 +772,18 @@ msgstr ""
msgid "Moderation tool for Matrix (Fork of Mjolnir)"
msgstr ""
#: ../../../docs/container-images.md:0
msgid "[Meowlnir](configuring-playbook-bot-meowlnir.md)"
msgstr ""
#: ../../../docs/container-images.md:0
msgid "[maunium/meowlnir](https://mau.dev/maunium/meowlnir/container_registry)"
msgstr ""
#: ../../../docs/container-images.md:0
msgid "Moderation tool for Matrix, running in appservice mode"
msgstr ""
#: ../../../docs/container-images.md:0
msgid "[Buscarron](configuring-playbook-bot-buscarron.md)"
msgstr ""
@@ -784,11 +796,11 @@ msgstr ""
msgid "Web forms (HTTP POST) to Matrix"
msgstr ""
#: ../../../docs/container-images.md:130
#: ../../../docs/container-images.md:131
msgid "Administration"
msgstr ""
#: ../../../docs/container-images.md:132
#: ../../../docs/container-images.md:133
msgid "Services that help you in administrating and monitoring your Matrix installation."
msgstr ""
@@ -912,11 +924,11 @@ msgstr ""
msgid "Export the usage statistics of a Synapse homeserver to be scraped by Prometheus."
msgstr ""
#: ../../../docs/container-images.md:148
#: ../../../docs/container-images.md:149
msgid "Misc"
msgstr ""
#: ../../../docs/container-images.md:150
#: ../../../docs/container-images.md:151
msgid "Various services that don't fit any other categories."
msgstr ""
@@ -961,7 +973,7 @@ msgid "[Jitsi](configuring-playbook-jitsi.md)"
msgstr ""
#: ../../../docs/container-images.md:0
msgid "[jitsi/web](https://hub.docker.com/r/jitsi/web)"
msgid "[jitsi/web](https://github.com/jitsi/docker-jitsi-meet/pkgs/container/web)"
msgstr ""
#: ../../../docs/container-images.md:0
@@ -969,7 +981,7 @@ msgid "[Jitsi](https://jitsi.org/) web UI"
msgstr ""
#: ../../../docs/container-images.md:0
msgid "[jitsi/jicofo](https://hub.docker.com/r/jitsi/jicofo)"
msgid "[jitsi/jicofo](https://github.com/jitsi/docker-jitsi-meet/pkgs/container/jicofo)"
msgstr ""
#: ../../../docs/container-images.md:0
@@ -977,7 +989,7 @@ msgid "[Jitsi](https://jitsi.org/) Focus component"
msgstr ""
#: ../../../docs/container-images.md:0
msgid "[jitsi/prosody](https://hub.docker.com/r/jitsi/prosody)"
msgid "[jitsi/prosody](https://github.com/jitsi/docker-jitsi-meet/pkgs/container/prosody)"
msgstr ""
#: ../../../docs/container-images.md:0
@@ -985,7 +997,7 @@ msgid "[Jitsi](https://jitsi.org/) Prosody XMPP server component"
msgstr ""
#: ../../../docs/container-images.md:0
msgid "[jitsi/jvb](https://hub.docker.com/r/jitsi/jvb)"
msgid "[jitsi/jvb](https://github.com/jitsi/docker-jitsi-meet/pkgs/container/jvb)"
msgstr ""
#: ../../../docs/container-images.md:0
@@ -1056,11 +1068,11 @@ msgstr ""
msgid "A native Matrix video conferencing application"
msgstr ""
#: ../../../docs/container-images.md:168
#: ../../../docs/container-images.md:169
msgid "Container images of deprecated / unmaintained services"
msgstr ""
#: ../../../docs/container-images.md:170
#: ../../../docs/container-images.md:171
msgid "The list of the deprecated or unmaintained services is available [here](configuring-playbook.md#deprecated--unmaintained--removed-services)."
msgstr ""