11692 Commits

Author SHA1 Message Date
renovate[bot] 486fc8adfe Update docker.io/metio/matrix-alertmanager-receiver Docker tag to v2026.7.29 2026-07-29 15:25:52 +03:00
Slavi Pantaleev 906e457fcb Document the base domain proxy host in the Nginx Proxy Manager example
The example only covered `matrix.example.com` and the federation stream,
so people who make the playbook serve the base domain were left without a
proxy host for it. Requests for the `/.well-known/matrix/*` files on the
base domain then never reach Traefik and Nginx Proxy Manager answers with
a 404 error of its own, breaking federation and client discovery.

The nginx example already covers this by listing `example.com` in its
`server_name` directive. Serving the base domain from the Matrix server
is optional though, so the new section says so and points people whose
base domain lives elsewhere to the server delegation documentation.

Also note that a `*.example.com` wildcard certificate does not cover the
base domain itself, which is easy to get wrong when setting this up.

Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/5465

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 23:01:46 +03:00
Slavi Pantaleev 00bafcc1a7 Credit the author in the beeper-line announcement
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 22:10:48 +03:00
Slavi Pantaleev e2342853f6 Merge pull request #5462 from c00/beeper-line
Add support for bridging to LINE via beeper-line

Closes #1334
2026-07-28 22:10:02 +03:00
Slavi Pantaleev 0c11a254ad Correct beeper-line's login instructions
Logging in does not involve approving a session from the LINE mobile app.
The bridge shows a PIN code, which needs to be entered into the LINE
mobile app instead.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 21:54:33 +03:00
Slavi Pantaleev 1dad6f331e Complete beeper-line's configuration template
The template was missing the public_media and direct_media sections, as
well as the bridge.phone_numbers_in_profile, bridge.relay.displayname_format
and backfill.threads.max_initial_messages settings.

Their absence made the bridge fall back to zero values instead of the
defaults that upstream ships (most notably disabling thread backfilling).
The template now matches the configuration that the bridge generates
itself, key for key.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 21:54:33 +03:00
Slavi Pantaleev fa59dde084 Explain where the beeper-line container image comes from
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 21:54:33 +03:00
Slavi Pantaleev 4e95cecf81 Document why beeper-line is pinned to a commit hash
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 21:54:33 +03:00
Slavi Pantaleev 6481da0aa9 Link to authors and repositories in the mautrix-linkedin announcement
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 17:07:31 +03:00
Slavi Pantaleev ec47f46681 Shorten the mautrix-linkedin changelog entry
Brings it in line with the style of previous bridge announcements.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 16:59:02 +03:00
Slavi Pantaleev 8942e6a99e Use a more consistent salt for the mautrix-linkedin database password
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 16:58:29 +03:00
Slavi Pantaleev 4267ed8e0b Mark the beeper-linkedin bridge as unmaintained
Its upstream repository has been archived and has not seen a change
since March 2025. mautrix-linkedin now covers the same use case.

The bridge remains installable, but as with other deprecated and
unmaintained components, it is no longer listed in the README and has
been moved to the deprecated services section of the documentation.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 16:58:29 +03:00
Slavi Pantaleev 790956dce3 Reword parts of the mautrix-linkedin documentation page
Replaces the question-and-answer troubleshooting format (which no other
documentation page uses) with regular subsections, and clarifies why the
request needs to come from a Chrome-based browser.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 16:58:29 +03:00
Slavi Pantaleev b78871ef79 Reword the mautrix-linkedin changelog entry
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 16:58:29 +03:00
Slavi Pantaleev 4d319ab2fc Remove extra blank line between group_vars sections
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 16:58:05 +03:00
Slavi Pantaleev e63870ff76 Make mautrix-linkedin honor matrix_bridge_mautrix_linkedin_command_prefix
The variable was defined, but the configuration template hardcoded the
command prefix, so changing the variable had no effect.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 16:58:05 +03:00
Suguru Hirahara 196d33c9da Make the first question natural
Signed-off-by: Suguru Hirahara <did:key:z6MkvVZk1A3KBApWJXv2Ju4H14ErDfRGxh8zxdXSZ4vACDg5>
2026-07-28 16:58:05 +03:00
Suguru Hirahara 28092aa926 Move the instruction to uninstall beeper-linked in to the prerequisite section
Signed-off-by: Suguru Hirahara <did:key:z6MkvVZk1A3KBApWJXv2Ju4H14ErDfRGxh8zxdXSZ4vACDg5>
2026-07-28 16:58:05 +03:00
Suguru Hirahara 6709a91b0b Remove excessive grudges and rhetorics to be concise
Signed-off-by: Suguru Hirahara <did:key:z6MkvVZk1A3KBApWJXv2Ju4H14ErDfRGxh8zxdXSZ4vACDg5>
2026-07-28 16:58:05 +03:00
Aine 254773bf3c add Mautrix Linkedin bridge 2026-07-28 16:58:05 +03:00
Slavi Pantaleev eeabc623d7 Make mautrix-gmessages honor matrix_bridge_mautrix_gmessages_command_prefix
The variable was defined, but the configuration template hardcoded the
command prefix, so changing the variable had no effect.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 16:53:26 +03:00
Slavi Pantaleev e30809a8fc Make mautrix-gvoice honor matrix_bridge_mautrix_gvoice_command_prefix
The variable was defined, but the configuration template hardcoded the
command prefix, so changing the variable had no effect.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 16:53:26 +03:00
renovate[bot] 7587b8f099 Update ghcr.io/element-hq/synapse Docker tag to v1.157.2 (#5477)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-28 13:51:42 +00:00
Slavi Pantaleev 1c3b609799 Add changelog entry about ntfy users now being declared with hashed passwords 2026-07-28 16:37:17 +03:00
Slavi Pantaleev e01582bd87 Upgrade ntfy (v2.26.3-1 -> v2.26.3-2) 2026-07-28 16:22:50 +03:00
Slavi Pantaleev 7a8105dc47 Expose synapse-usage-exporter metrics like the metrics of other services
The playbook exposes service metrics under a single endpoint
(`https://matrix.example.com/metrics/*`), controlled by
`matrix_metrics_exposure_enabled` and friends. synapse-usage-exporter was
not wired into this at all, so its metrics could only be scraped by the
integrated Prometheus and were unreachable for an external one.

The role had no metrics router whatsoever. Its only Traefik router (for
the `/report-usage-stats/push` ingestion endpoint) was gated on
`matrix_synapse_usage_exporter_container_labels_traefik_enabled`, which
defaulted to `matrix_synapse_usage_exporter_proxying_enabled`. Adding a
metrics router under that same switch would have meant that exposing
metrics also publishes the ingestion endpoint, so the master switch now
defaults to `true` and each router carries its own conditional.

Despite its generic name, `matrix_synapse_usage_exporter_proxying_enabled`
only ever concerned the endpoint that Synapse pushes usage statistics
**to**, never the metrics endpoint that Prometheus reads **from**. The
documentation now says so explicitly.

Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/5467

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 15:14:39 +03:00
renovate[bot] d3de2abfbb Update dependency container_socket_proxy to v0.5.0-0 2026-07-28 09:56:03 +03:00
Slavi Pantaleev 11e65ed2fd Document SSH host key and passphrase prompts breaking with Ansible 2.21
Since Ansible 2.21, forked workers call `setsid()` and thus lose the
controlling terminal, so SSH can no longer ask about unknown host keys or
prompt for the passphrase of an SSH key.

Reported in https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/5472

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 07:57:07 +03:00
Slavi Pantaleev d2c62fa9f6 Upgrade devture/ansible (14.0.0-r0-0 -> 14.0.0-r0-1)
The new image restores the ability of SSH to ask about unknown host keys
and to prompt for the passphrase of an SSH key, which Ansible 2.21 broke
by having forked workers run session-isolated.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 07:56:16 +03:00
Slavi Pantaleev e3dfcbad79 Scrape ntfy metrics with the integrated Prometheus
Until now, ntfy metrics could only be collected by an external Prometheus
server. Enabling the integrated Prometheus (`prometheus_enabled: true`)
now also has it scrape ntfy, like it does for the other services.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 07:23:05 +03:00
Slavi Pantaleev d38573a9eb Expose ntfy metrics like the metrics of other services
The playbook exposes service metrics under a single endpoint
(`https://matrix.example.com/metrics/*`), controlled by
`matrix_metrics_exposure_enabled` and friends. ntfy was not wired into
this at all, so enabling metrics exposure did not expose ntfy's metrics
and enabling Basic Authentication did not protect them.

We have ntfy serve its metrics on a dedicated port, instead of on its
regular HTTP port. Serving them on the regular HTTP port also makes them
reachable at `https://ntfy.example.com/metrics`, where nothing protects
them, as ntfy does not apply its own access-control rules to the metrics
endpoint.

Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/5468

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 07:23:05 +03:00
Slavi Pantaleev ea1003fd18 Upgrade ntfy (v2.26.3-0 -> v2.26.3-1)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 07:23:05 +03:00
renovate[bot] 950aa87402 Update actions/stale action to v11 2026-07-28 07:16:24 +03:00
renovate[bot] 95e2ac9fb5 Update forgejo.ellis.link/continuwuation/continuwuity Docker tag to v26.7.1 2026-07-28 07:16:18 +03:00
github-actions[bot] 053a4c7bc6 Automatic translations update 2026-07-28 07:11:49 +03:00
renovate[bot] 3e623f65f8 Lock file maintenance 2026-07-28 07:11:23 +03:00
renovate[bot] 3c6ea0c7c0 Update dependency traefik to v3.7.9-0 2026-07-25 07:48:48 +03:00
renovate[bot] 20399b4827 Update dependency prek to v0.4.11 (#5464)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-07-25 00:04:16 +00:00
Co van Leeuwen 641b9e989d cleanup beeper-line code 2026-07-24 08:25:45 +07:00
Aine 34fac3b0c3 Ketesa v1.4.0 <https://github.com/etkecc/ketesa/releases/tag/v1.4.0> 2026-07-23 18:07:58 +01:00
Co van Leeuwen 35b645573d Add beeper-line bridge 2026-07-23 23:02:46 +07:00
Benjamin Blacher 7105720683 Enable sticky events by default if MatrixRTC is enabled 2026-07-23 14:41:42 +03:00
renovate[bot] a791983760 Update ghcr.io/element-hq/synapse Docker tag to v1.157.1 2026-07-23 06:18:56 +03:00
renovate[bot] 7770376fd8 Update docker.io/metio/matrix-alertmanager-receiver Docker tag to v2026.7.22 2026-07-22 15:49:11 +03:00
renovate[bot] 27ee15b782 Update dependency valkey to v9.1.1-0 2026-07-22 15:49:01 +03:00
renovate[bot] 5661bf022c Update dependency certifi to v2026.7.22 2026-07-22 09:06:35 +03:00
Slavi Pantaleev dd1e3ea46d Fix Synapse usage statistics reporting when synapse-usage-exporter is not used
Since the introduction of the synapse-usage-exporter role (55f869254, #3442), group_vars/matrix_servers was overriding matrix_synapse_report_stats_endpoint with an empty string whenever synapse-usage-exporter was disabled, clobbering the role's matrix.org default.

For deployments that enable matrix_synapse_report_stats, Synapse would then try reporting statistics to an empty URL, failing with:

> synapse.app.homeserver - 210 - WARNING - phone_stats_home-0 - Error reporting stats: Invalid URI b''

The default endpoint URL now lives in a dedicated matrix_synapse_report_stats_endpoint_default variable, which group_vars/matrix_servers falls back to when synapse-usage-exporter is not enabled.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 08:16:13 +03:00
Slavi Pantaleev 654aea79b2 Remove obsolete Synapse experimental feature flags (msc3266, msc4140, msc4429)
None of these flags exist in current Synapse:

- msc3266_enabled: MSC3266 support was stabilized in Synapse v1.153.0 and the room summary API is now always enabled

- msc4140_enabled: this was never a Synapse configuration setting in any released version. Delayed events have always been controlled by the `max_event_delay_duration` setting, which the playbook was emitting alongside the flag. The toggle is now named `matrix_synapse_delayed_events_enabled`.

- msc4429_enabled: MSC4429 support has not landed in any released Synapse version, so this flag never had any effect

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 07:56:17 +03:00
Slavi Pantaleev 6b0a635454 Ensure experimental_features is never null in the Synapse configuration (Synapse v1.157.0 compatibility)
When no experimental features were enabled (e.g. Matrix RTC and Matrix Authentication Service both disabled), the generated homeserver.yaml contained `experimental_features: null`, which Synapse v1.157.0+ does not tolerate and crashes on startup.

The `experimental_features` configuration is now constructed via a dedicated `matrix_synapse_experimental_features` variable (split into `_default`, `_auto` and `_custom`, as is customary), which always yields a mapping (potentially an empty one).

Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/5455

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 07:46:49 +03:00
renovate[bot] 37b1a36a53 Update ghcr.io/element-hq/synapse Docker tag to v1.157.0 2026-07-21 21:47:49 +03:00