Commit Graph

11465 Commits

Author SHA1 Message Date
renovate[bot] b897b45191 Update ghcr.io/element-hq/element-call Docker tag to v0.20.3 2026-06-29 19:26:21 +03:00
renovate[bot] 693fbb08aa Update ghcr.io/etkecc/baibot Docker tag to v1.25.0 2026-06-29 19:26:12 +03:00
Slavi Pantaleev 1789ea2083 mautrix-telegram: stop flagging matrix_mautrix_telegram_scheme as a removed variable
The bridgev2 (Go) rewrite removed matrix_mautrix_telegram_scheme (the old
Python bridge's public web-login endpoint scheme) and added a deprecation
check for it. We later reintroduced a variable of the same name to configure
the bridge's HTTP API exposure address, but the deprecation entry remained.

Because the check matches any defined variable (via ansible.builtin.varnames),
not just user-set ones, it tripped for every install with the Telegram bridge
enabled, even when the user never set it.

Drop the deprecation entry, since the variable is a current one again. The
related (still removed) matrix_mautrix_telegram_hostname and
matrix_mautrix_telegram_path_prefix entries are kept.

Closes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/5368
Regression since d2252db4fe

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 19:06:29 +03:00
Slavi Pantaleev 00f39e3b1d Document mautrix bridge HTTP API exposure (for mautrix-manager and similar)
Add a "Expose the bridge's API" section to the common mautrix bridges
documentation page (covering the /bridges/<bridge> path, the
/.well-known/matrix/mautrix auto-discovery file, how to disable it, and
the custom-bridges hook), plus a CHANGELOG entry announcing the feature.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 19:05:16 +03:00
Slavi Pantaleev 4aca22dd96 matrix-static-files: advertise exposed mautrix bridges via /.well-known/matrix/mautrix
Emit a /.well-known/matrix/mautrix file listing the base URLs of all
enabled and exposed mautrix bridges under the `fi.mau.bridges` property,
so tools like Mautrix Manager (https://github.com/mautrix/manager) can
auto-discover them.

The list is built in group_vars from each bridge's public address and is
gated on the bridge being enabled, the playbook attaching its Traefik
labels, and the exposure router being emitted, so we only advertise URLs
that are actually reachable. The file follows the same auto/custom and
configuration-extension pattern as the other well-known files and is only
written when the list is non-empty.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 17:05:55 +03:00
Slavi Pantaleev 2879a01105 mautrix-slack: expose bridge HTTP API (for mautrix-manager and similar)
Unlike the other mautrix bridges, the mautrix-slack role had no Traefik
label infrastructure at all, so this builds the scaffold first (a new
labels.j2, the container_labels_traefik_* vars, the label-file wiring in
the systemd service and setup_install.yml, and the group_vars wiring),
then exposes the bridge's appservice HTTP API under
https://matrix.<domain>/bridges/slack like the other bridges.

The provisioning shared secret was already auto-generated.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 09:08:57 +03:00
Slavi Pantaleev 42c173c0b3 mautrix-meta-messenger: expose bridge HTTP API (for mautrix-manager and similar)
Auto-generate the provisioning shared secret (to enable the provisioning
API), route the whole bridge HTTP port via Traefik under
`<matrix-fqn>/bridges/meta-messenger`, and populate
appservice.public_address, reusing the matrix_bridges_exposure_*
mechanism. The labels template gate is widened so the exposure router is
emitted even when metrics are disabled (the exposure router reuses the
existing appservice Traefik service on port 29319).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-28 20:17:47 +03:00
Slavi Pantaleev 20a2395403 mautrix-meta-instagram: expose bridge HTTP API (for mautrix-manager and similar)
Auto-generate the provisioning shared secret (to enable the provisioning
API), route the whole bridge HTTP port via Traefik under
`<matrix-fqn>/bridges/meta-instagram`, and populate
appservice.public_address, reusing the matrix_bridges_exposure_*
mechanism. The labels template gate is widened so the exposure router is
emitted even when metrics are disabled (the exposure router reuses the
existing appservice Traefik service on port 29319).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-28 20:15:57 +03:00
Slavi Pantaleev 1b9b1119a1 mautrix-whatsapp: expose bridge HTTP API (for mautrix-manager and similar)
Auto-generate the provisioning shared secret (to enable the provisioning
API), route the whole mautrix-whatsapp HTTP port via Traefik under
`<matrix-fqn>/bridges/whatsapp`, and populate appservice.public_address,
reusing the matrix_bridges_exposure_* mechanism.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-28 20:11:30 +03:00
Slavi Pantaleev 2d7058fa59 mautrix-bluesky: expose bridge HTTP API (for mautrix-manager and similar)
Route the whole mautrix-bluesky HTTP port via Traefik under
`<matrix-fqn>/bridges/bluesky` and populate the existing
appservice.public_address, reusing the matrix_bridges_exposure_*
mechanism. The provisioning shared secret is already auto-generated in
group_vars, so the provisioning API is enabled.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-28 20:09:43 +03:00
Slavi Pantaleev 44c8736c08 mautrix-twitter: expose bridge HTTP API (for mautrix-manager and similar)
Route the whole mautrix-twitter HTTP port via Traefik under
`<matrix-fqn>/bridges/twitter` and populate the existing
appservice.public_address, reusing the matrix_bridges_exposure_*
mechanism. The provisioning shared secret is already auto-generated in
group_vars, so the provisioning API is enabled.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-28 20:08:11 +03:00
Slavi Pantaleev a50e7960d8 mautrix-signal: expose bridge HTTP API (for mautrix-manager and similar)
Route the whole mautrix-signal HTTP port via Traefik under
`<matrix-fqn>/bridges/signal` and populate appservice.public_address,
reusing the matrix_bridges_exposure_* mechanism. The provisioning shared
secret is already auto-generated in group_vars, so the provisioning API
is enabled.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-28 20:05:18 +03:00
Slavi Pantaleev d2252db4fe mautrix-telegram: expose bridge HTTP API (for mautrix-manager and similar)
Route the whole mautrix-telegram HTTP port via Traefik under
`<matrix-fqn>/bridges/telegram` and populate appservice.public_address,
reusing the matrix_bridges_exposure_* mechanism. The provisioning shared
secret is already auto-generated in group_vars, so the provisioning API
is enabled.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-28 19:56:24 +03:00
Slavi Pantaleev a4ddba3989 mautrix-gmessages: expose bridge HTTP API (for mautrix-manager and similar)
Add a generic mechanism for exposing bridges' HTTP API (the provisioning
API, etc.) publicly on the Matrix domain, so tools like mautrix-manager
(https://github.com/mautrix/manager) can drive bridge login.

- Introduce global matrix_bridges_exposure_* vars (on by default),
  exposing each supported bridge under `<matrix-fqn>/bridges/<bridge>`.
- mautrix-gmessages: make the provisioning shared secret configurable
  (auto-generated in group_vars) so the provisioning API is enabled,
  route the whole bridge HTTP port via Traefik, and populate
  appservice.public_address.

Requests are authenticated by the bridge itself (per-user Matrix access
token for the provisioning API, homeserver token for the appservice
endpoints), not by the reverse proxy.

This is the first bridge converted; the other mautrix bridges will follow.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-28 19:52:24 +03:00
Aine d61979a0b9 baibot: add venice wiring 2026-06-28 19:50:08 +03:00
Aine 3fed0f1bb4 add link to Ketesa website <https://ketesa.app> 2026-06-28 11:02:51 +01:00
Slavi Pantaleev e43add179b Add matrix_tuwunel_config_ip_range_denylist (mirrors tuwunel's upstream default)
As of tuwunel v1.8.0, the ip_range_denylist applies to push gateway
delivery as well, so surface it as an Ansible variable using the
default/auto/custom merge pattern. The default mirrors tuwunel's own
upstream denylist (RFC1918, loopback, multicast, and other unroutable
ranges), matching the identical list already used for Synapse's
matrix_synapse_url_preview_ip_range_blacklist.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-27 20:39:16 +03:00
renovate[bot] 129d4e74b4 Update ghcr.io/matrix-construct/tuwunel Docker tag to v1.8.0 2026-06-27 20:17:09 +03:00
renovate[bot] 5c390e137f Update dependency livekit_server to v1.13.2-0 2026-06-27 18:17:06 +03:00
renovate[bot] 682eb2c280 Update ghcr.io/etkecc/baibot Docker tag to v1.24.0 2026-06-26 17:30:34 +03:00
Jason LaGuidice 4fae640b6c Add renovate and bump version 2026-06-26 07:05:13 +03:00
renovate[bot] adcae966ed Update dependency ntfy to v2.25.0-0 2026-06-25 07:41:39 +03:00
renovate[bot] 0a46beb76c Update dependency click to v8.4.2 2026-06-24 21:48:37 +03:00
renovate[bot] 7bee5f06dc Update oci.element.io/element-admin Docker tag to v0.1.12 2026-06-24 21:44:11 +03:00
renovate[bot] b67f7bd3fe Update docker.io/metio/matrix-alertmanager-receiver Docker tag to v2026.6.24 2026-06-24 16:39:58 +03:00
Slavi Pantaleev 08c733d2e3 matrix-bridge-rustpush: build from upstream's own Dockerfile on self-build
The role shipped its own copy of the bridge's Dockerfile and templated it
over the cloned source before building. That copy had already drifted from
upstream (e.g. missing libheif-plugin-libde265) and required separate
maintenance (Renovate bumping the base image here instead of upstream).

Build from the cloned repo's own Dockerfile instead, matching every other
self-build role (e.g. matrix-bridge-steam). The Dockerfile now tracks the
pinned bridge version automatically.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 12:13:04 +03:00
Slavi Pantaleev 424c323d03 Announce matrix-rustpush-bridge (iMessage) in the changelog
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 11:45:20 +03:00
Jason LaGuidice 11cd178cb2 Add matrix-rustpush-bridge (iMessage)
Add the matrix-rustpush-bridge role, a Matrix <-> iMessage bridge built
on the mautrix-go bridgev2 framework using RustPush (OpenBubbles backend).

Unlike the existing mautrix-imessage/wsproxy bridge, it talks directly to
Apple's push notification service, so it needs neither a running Mac nor a
wsproxy on the homeserver. Each user supplies a hardware key extracted from a
Mac through the bridge bot's login flow.

The bridge uses its own bot username and puppet namespace (rustpushbot,
rustpush_*) so it does not collide with the wsproxy iMessage bridge.

This bridge is in early development and may have stability issues.
2026-06-24 11:17:09 +03:00
Aine 6f57ab8ba1 Baibot v1.23.1 <https://github.com/etkecc/baibot/blob/main/CHANGELOG.md#2026-06-24-version-1231> 2026-06-24 07:28:07 +01:00
Slavi Pantaleev 4f00ad9bd4 Add support for additional volumes for the livekit-jwt-service component
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 07:38:22 +03:00
Hollie Hutchinson 753f8ca7db Support additional container arguments for matrix-livekit-jwt 2026-06-24 07:36:36 +03:00
renovate[bot] d06094ffc3 Update ghcr.io/element-hq/element-web Docker tag to v1.12.22 2026-06-24 07:31:58 +03:00
dependabot[bot] dd37011ffb Bump actions/cache from 5 to 6
Bumps [actions/cache](https://github.com/actions/cache) from 5 to 6.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-24 07:31:47 +03:00
renovate[bot] e3b37ac350 Update ghcr.io/etkecc/baibot Docker tag to v1.23.0 (#5353)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-23 07:22:40 +01:00
renovate[bot] be68aaa870 Update dependency grafana to v13 2026-06-23 09:22:25 +03:00
renovate[bot] 36e94e4df7 Update ghcr.io/etkecc/fluffychat-web Docker tag to v2.7.2 (#5352)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-22 18:13:41 +01:00
renovate[bot] 37d8cf4f2c Update ghcr.io/element-hq/element-call Docker tag to v0.20.2 (#5351)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-22 18:13:17 +01:00
renovate[bot] fd340a14f9 Update dependency cinny to v4.12.3-0 (#5350)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-06-22 18:12:55 +01:00
LunarFox 73f8ca75b3 Update readme for NPM
NPM "Proxy Hosts" page is only for http/https 80/443 - it is not possible to add a name such as "matrix.example.com:port".

Instead, the Streams page might work for what is intended here (federation traffic) - to proxy stream anything on 8448 to 8449.
2026-06-22 10:11:54 +03:00
Aine 81e156b4bf rollback etherpad to v2.7.2 (v2.7.3 is broken) 2026-06-21 13:40:23 +01:00
Aine 6ee65072ef FluffyChat v2.7.0 <https://github.com/krille-chan/fluffychat/blob/main/CHANGELOG.md#v270> 2026-06-21 11:45:59 +01:00
renovate[bot] 8b13017281 Update ghcr.io/etkecc/baibot Docker tag to v1.22.0 2026-06-21 09:10:18 +03:00
renovate[bot] e0f37e3912 Update forgejo.ellis.link/continuwuation/continuwuity Docker tag to v0.5.10 2026-06-20 21:15:40 +03:00
Aine 4ff28586f4 Ketesa v1.3.0 <https://github.com/etkecc/ketesa/releases/tag/v1.3.0> 2026-06-19 19:56:25 +01:00
Catalan Lover 19bcdc78fd Gate Continuwuity ReCAPTCHA config on both keys being configured
Continuwuity has no native enable-captcha toggle; it enables the ReCAPTCHA
registration flow based on the presence of a private site key. The playbook
previously always rendered empty `recaptcha_site_key`/`recaptcha_private_site_key`
values, which made Continuwuity enable a broken captcha flow and break
registration in some clients.

The keys are now only rendered when both are configured, gated by a derived
`matrix_continuwuity_recaptcha_enabled` flag in the role's `vars/main.yml`. A
consistency check fails the play when exactly one of the two keys is set.

Fixes #5329

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-19 06:24:06 +03:00
renovate[bot] 914dd3ed62 Update actions/checkout action to v7 2026-06-19 05:51:12 +03:00
renovate[bot] 3250de7842 Update dependency sable to v1.18.3-0 2026-06-18 10:10:27 +03:00
renovate[bot] af4d379573 Update dependency certifi to v2026.6.17 2026-06-18 09:58:58 +03:00
renovate[bot] 12e63739b9 Update ghcr.io/element-hq/matrix-authentication-service Docker tag to v1.19.0 2026-06-18 09:58:41 +03:00
renovate[bot] 6b76368a9c Update nginx Docker tag to v1.31.2 2026-06-18 09:56:48 +03:00