Commit Graph

128 Commits

Author SHA1 Message Date
Slavi Pantaleev
70fd20cef5 Add support for WeChat bridging
This is based on the PR (https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3241)
by Tobias Diez (https://github.com/tobiasdiez).

I've refactored some parts, made it more configurable, polished it up,
and it's integrated into the playbook now.

Both the WeChat bridge and WeChat agent appear to be working.
The WeChat bridge joins rooms and responds as expected.

That said, end-to-end testing (actually bridging to a WeChat account) has not been done yet.

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

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

This is sponsored https://etke.cc/ work related to https://gitlab.com/etke.cc/ansible/-/issues/2

Squashed commit of the following:

commit fdd37f02472a0b83d61b4fac80650442f90e7629
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 21:05:53 2024 +0300

    Add documentation for WeChat bridge

commit 8426fc8b95bb160ea7f9659bd45bc59cf1326614
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 20:59:42 2024 +0300

    Rename directory for matrix_wechat_agent_container_src_files_path

commit da200df82bbc9153d307095dd90e4769c400ea1e
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 20:58:26 2024 +0300

    Make WeChat listen_secret configurable and auto-configured via matrix_homeserver_generic_secret_key

commit 4022cb1355828ac16af7d9228cb1066962bb35f5
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 20:54:56 2024 +0300

    Refactor install.yml for WeChat a bit (using blocks, etc.)

commit d07a39b4c4f6b93d04204e13e384086d5a242d52
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 20:52:35 2024 +0300

    Rename WeChat Agent configuration file

    This makes it more clear that it belongs to the agent.
    Otherwise, `config.yaml` and `configure.yaml` make you wonder.

commit ccca72f8d1e602f7c42f4bd552193afa153c9b9d
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 20:49:06 2024 +0300

    Move WeChat agent configuration to a template

commit a4047d94d8877b4095712dfc76ac3082a1edca28
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 20:47:17 2024 +0300

    Mount WeChat config as readonly and instruct bridge to not update it

commit bc0e89f345bf14bbdbfd574bb60d93918c2ac053
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 20:46:33 2024 +0300

    Sync WeChat config with upstream

    Brings up-to-date with:
    https://github.com/duo/matrix-wechat/commits/0.2.4/example-config.yaml

commit a46f5b9cbc8bf16042685a18c77d25a606bc8232
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 19:48:17 2024 +0300

    Rename some files

commit 3877679040cffc4ca6cccfa21a7335f8f796f06e
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 19:47:10 2024 +0300

    Update WeChat logging config

    This brings it up-to-date with what mautrix-go uses.
    Otherwise, on startup we see:

    > Migrating legacy log config

    .. and it gets migrated to what we've done here.

commit e3e95ab234651867c7a975a08455549b31db4172
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 19:43:37 2024 +0300

    Make sure matrix-wechat-agent runs as 1000:1000

    It needs to write stuff to `/home/user/.vnc`.

    `/home/user` is owned by `user:group` (`1000:1000`), so it cannot run
    any other way.

    Previously, if the `matrix` user was uid=1000 by chance, it would work,
    but that's pure luck.

commit 4d5748ae9b84c81d6b48b0a41b790339d9ac4724
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 18:57:09 2024 +0300

    Pin wechat and wechat-agent versions

commit 40d40009f19ebceed4126146cbb510a2c95af671
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 18:53:58 2024 +0300

    docker_image -> container_image for WeChat bridge

commit cc33aff592541913070d13288d17b04ed6243176
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 18:00:25 2024 +0300

    docker_src -> container_src in WeChat bridge

commit 42e6ae9a6483c8ca6d53b8052058d41d90d93797
Author: Slavi Pantaleev <slavi@devture.com>
Date:   Mon Jun 3 17:54:24 2024 +0300

    matrix_go_wechat_ -> matrix_wechat_

    The bridge is written in Go, but does not include Go anywhere in its
    name. As such, it's mostly useless to use `matrix_go_wechat` as the
    prefix.

commit d6662a69d1916d215d5184320c36d2ef73afd3e9
Author: Tobias Diez <code@tobiasdiez.de>
Date:   Mon Mar 25 10:55:16 2024 +0800

    Add wechat bridge
2024-06-03 21:28:50 +03:00
Slavi Pantaleev
0049ddf002 Add Pantalaimon support
This is actually authored by Julian Foad here
(https://lab.trax.im/matrix/matrix-docker-ansible-deploy), but was in
need of a rebase and various adjustments caused by huge playbook
refactoring that landed in the past months.

This rework is completely untested.

Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/266
2024-03-24 18:35:34 +02:00
Catalan Lover
9d5902f096
Add support for D4A/Draupnir For All to the playbook. (#3204)
* Draupnir for all Role

* Draupnir for all Documentation

* Pin D4A to Develop until D4A patches are in a release.

* Update D4A Docs to mention pros and cons of D4A mode compared to normal

* Change Documentation to mention a fixed simpler provisioning flow.

Use of /plain allows us to bypass the bugs encountered during the development of this role with clients attempting to escape our wildcards causing the grief that led to using curl.

This reworded commit does still explain you can automatically inject stuff into the room if you wanted to.

* Emphasise the State of D4A mode

* Link to Draupnir-for-all docs and tweak the docs some

* Link to Draupnir-for-all from Draupnir documentation page

* Announce Draupnir-for-all

---------

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2024-03-05 16:09:52 +02:00
Slavi Pantaleev
367af472ea Add support for bridging to Facebook Messenger and Instagram via mautrix-meta
Related to: https://github.com/mautrix/facebook/issues/332

Fixes: https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/3138
2024-02-19 10:25:00 +02:00
Ingy döt Net
c68e9dc2eb
Update configuring-playbook.md
`mkdir` with multiple subdirs needs `-p`
2024-02-04 09:31:32 -08:00
Slavi Pantaleev
f4f3d57520 Remove all traces of matrix-nginx-proxy, add validation & uninstallation tasks 2024-01-14 18:42:14 +02:00
Slavi Pantaleev
2f457b2a23 Remove inventory/ directory tree to allow people to manage it as a git repository (etc.)
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/3086
2024-01-09 19:08:43 +02:00
Slavi Pantaleev
99822c77fa Announce SchildiChat
Related to: https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2851
2023-08-31 13:42:40 +03:00
Slavi Pantaleev
9f90510d53 Announce mautrix-wsproxy support
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2261
2023-08-23 15:13:38 +03:00
Slavi Pantaleev
4574ebbd31 Add notes about Dimension being unmaintained
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2806
2023-08-16 09:17:37 +03:00
Shreyas Ajjarapu
5ea6aa3e50
Added Google Messager Bridge (#2794)
* intial commit

* changed

* Reorderd

* merge old changes

* added changes to matrix_servers

* Remove duplicate discord

* Update main.yml

* added google message to configuring-playbook.md

* Changed docs to add new changes

* Changed bug?

* Removed problem j2 values

* Rename a service files

* change how password hash string

* Changed port number

* Change how the local part works

* Revert "Merge pull request #8 from shreyasajj/wsproxy"

This reverts commit bb1b8fc67ca39f63ca77e70077be99cb2b32c4de, reversing
changes made to cce6ba5f9d74f89172488afc8b1ef124031de8c1.

---------

Co-authored-by: Shreyas Ajjarapu <github.tzarina@aleeas.com>
2023-07-21 14:33:52 +03:00
Slavi Pantaleev
68556400ba Announce matrix-media-repo
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2783
2023-07-17 22:38:44 +03:00
Slavi Pantaleev
67cffdfce6
Update configuring-playbook.md 2023-04-27 08:12:09 +03:00
Simon Biggs
d2dbd88a38
Update configuring-playbook.md 2023-04-27 15:02:45 +10:00
Slavi Pantaleev
d3a0ef22b6 Announce matrix-synapse-auto-compressor 2023-03-12 10:55:08 +02:00
Slavi Pantaleev
6c1a39e6e9 Announce sliding-sync support
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2515
2023-03-07 12:22:04 +02:00
Slavi Pantaleev
71ae825f6a Switch default reverse-proxy to Traefik, force reverse-proxy choice on existing users 2023-02-26 16:14:05 +02:00
Slavi Pantaleev
b5e9ff5926 Add Rageshake documentation 2023-02-25 14:00:42 +02:00
Slavi Pantaleev
c773a005ae Fix broken link to Matrix User Verification Service 2023-02-10 16:11:52 +02:00
Slavi Pantaleev
6db3c8f2ad Announce Matrix Authentication Support for Jitsi
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2375
2023-02-10 14:26:41 +02:00
Slavi Pantaleev
600aaa0bc7 Announce Draupnir support
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2451
2023-02-10 11:52:31 +02:00
Slavi Pantaleev
275a739b22 Announce maurtix-slack
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2227
2023-01-11 10:38:54 +02:00
Slavi Pantaleev
20558589cb Announce matrix-bot-chatgpt
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2386
2023-01-10 17:31:21 +02:00
Slavi Pantaleev
9ecca2cbb9 Update documentation with more chatgpt mentions 2023-01-10 17:22:54 +02:00
Array in a Matrix
7cc668489b
add auto join option to dendrite config (#2255)
* add auto join option to dendrite config

* added   auto_join_rooms: variable

* added "configuring dendrite" entry

* created dendite configuration documentation

* fixed config path

* Update docs/configuring-playbook-dendrite.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update docs/configuring-playbook-dendrite.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update docs/configuring-playbook-dendrite.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update docs/configuring-playbook-dendrite.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update docs/configuring-playbook-dendrite.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update roles/custom/matrix-dendrite/defaults/main.yml

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* correction

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2022-11-20 10:11:21 +02:00
Slavi Pantaleev
ce8e9be6a8 Document Conduit installation
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2076
2022-10-27 09:56:16 +03:00
Felix Stupp
a7dc9a406d
docs/configuring-playbook: Add link to etherpad configuration 2022-10-15 20:17:58 +00:00
Julian-Samuel Gebühr
cd21525b4b Merge branch 'braid/matrix-ldap-registration-proxy' of https://github.com/TheOneWithTheBraid/matrix-docker-ansible-deploy into matrix-ldap-registration-proxy 2022-09-16 19:40:00 +02:00
Julian-Samuel Gebühr
db705aff4f Add documentation to readme/list of services
Signed-off-by: Julian-Samuel Gebühr <julian-samuel@gebuehr.net>
2022-09-16 19:15:33 +02:00
Julian-Samuel Gebühr
5825a0c919
Cactus comments (#2089)
* Add construct for cactus comments role

* Adjust config files

* Add docker self build to defaults

* Adjust tasks

* Fix smaller syntax errors

* Fix env argument

* Add tmp path to allow container writing there

Background why I did this: https://docs.gunicorn.org/en/stable/settings.html#worker-tmp-dir

* Change port back to 5000 as not configurable in container

* Try to add appservice config file for synapse to use

* Inject appservice file

* Correct copied variable name

* Comment out unused app service file injection

would need mounting the appservice file to the synapse container i guess

* Move role before synapse to be able to inject during runtime

* Remove unused parts

* Change default user id to mirror official docs

* Add docs

* Update roles/matrix-cactus-comments/tasks/setup_install.yml

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Update roles/matrix-cactus-comments/templates/cactus_appservice.yaml.j2

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Generate secrets if necessary, adjust docs

* Rename cactusbot userid

* Shorten salt strings

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Use tmpfs instead of persistent mount

* Remove proxy option as it is nonsense

* Add download and serving of cc-client files

* Add documentation on client

* Clarify docs a bit

* Add nginx proxy to required services

Signed-off-by: Julian-Samuel Gebühr <julian-samuel@gebuehr.net>

* Use container address

Signed-off-by: Julian-Samuel Gebühr <julian-samuel@gebuehr.net>

* Correct comment of user id

Signed-off-by: Julian-Samuel Gebühr <julian-samuel@gebuehr.net>

* Use releases or local distributed client

Signed-off-by: Julian-Samuel Gebühr <julian-samuel@gebuehr.net>

* Move homeserver url to defaults

Signed-off-by: Julian-Samuel Gebühr <julian-samuel@gebuehr.net>

* Correct truth value

Signed-off-by: Julian-Samuel Gebühr <julian-samuel@gebuehr.net>

* Add documentation of variables

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Tabs vs. spaces

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Make nginx root configurable

Signed-off-by: Julian-Samuel Gebühr <julian-samuel@gebuehr.net>

* Complete ake nginx root configurable

Signed-off-by: Julian-Samuel Gebühr <julian-samuel@gebuehr.net>

* Fix file permission

Signed-off-by: Julian-Samuel Gebühr <julian-samuel@gebuehr.net>

* Fix lint errors

Signed-off-by: Julian-Samuel Gebühr <julian-samuel@gebuehr.net>

Signed-off-by: Julian-Samuel Gebühr <julian-samuel@gebuehr.net>
Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2022-09-09 14:37:52 +03:00
Slavi Pantaleev
eaf13264e6 Announce Postmoogle email bridge bot
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2043
2022-08-23 14:16:10 +03:00
Slavi Pantaleev
429d0b323b
Merge pull request #1974 from MdotAmaan/master
Add Mautrix Discord Bridge
2022-07-29 08:05:52 +03:00
Slavi Pantaleev
d65096cd82
Merge pull request #1978 from spantaleev/appservice-kakaotalk
Add matrix-appservice-kakaotalk support
2022-07-27 09:42:18 +03:00
mcnesium
72309ed0a1
run the playbook on multiple hosts with different credentials (#1980)
* run the playbook on multiple hosts with different credentials with this script

* fix: add yaml missing document start "---"

* fix: *now really* allow this script to be run from any directory

* add about-note to examples/host.yml

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* improve ansible-all-hosts.sh related docs/configuring-playbook.md

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* fix typos :)

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2022-07-26 16:34:55 +03:00
Slavi Pantaleev
e46ba5deba Add matrix-appservice-kakaotalk support
Adds support for: https://src.miscworks.net/fair/matrix-appservice-kakaotalk

This is pretty similar to
https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/1977
which just appeared, but has mostly been done independently.

I've taken some inspiration and did some fixups based on that PR.
Thanks to https://github.com/hnarjis for taking the time to contribute!

Notable differences between this branch compared to that PR:

- better naming and documentation around the "configuration" variables
- no unnecessary (5 sec.) intentional delay when starting `matrix-appservice-kakaotalk-node.service`
- stores configuration in `config/`, not in `data/`
- passes configuration as read-only and starts the bridge with (`--no-update`) to ensure no changes are made to it
- starts containers more securely - with `matrix:matrix` user:group (not `root`) and
  reduced capabilities (`--cap-drop=ALL`)
- uses `tcp` for communication between the "node" and the appservice (simpler than sharing unix sockets)
- `registration.yaml` which is closer to the one generated by `matrix-appservice-kakaotalk` (no `de.sorunome.msc2409.push_ephemeral` stuff, etc.)
- `registration.yaml` which is more customizable (customizable bot username and prefix for puppets - see `matrix_appservice_kakaotalk_appservice_bot_username` and `matrix_appservice_kakaotalk_user_prefix`)
- less fragile and more extensible bridge permissions configuration via `matrix_appservice_kakaotalk_bridge_permissions`. Doing `{% if matrix_admin %}` in the bridge configuration sometimes causes syntax problems (I hit some myself) and is not ideal. Other bridges should be redone as well.
- configurable command prefix for the bridge, instead of hardcoding `!kt` (see `matrix_appservice_kakaotalk_command_prefix`)
- logging that is more consistent with the rest of the playbook (console / journald only, no logging to files), as well as configurable log level (via `matrix_appservice_kakaotalk_logging_level`)
- somewhat more detailed documentation (`docs/configuring-playbook-bridge-appservice-kakaotalk.md`)
- removed some dead code (data relocation tasks from `tasks/setup_install.yml`, as well as likely unnecessary SQLite -> Postgres migration)
2022-07-25 16:01:15 +03:00
Onisokien Ayonoadu
50ae4d2422
Minor typo update 2022-07-22 13:11:38 -06:00
MdotAmaan
8621ff1379 Add Mautrix Discord Bridge 2022-07-22 18:55:44 +04:00
Slavi Pantaleev
1f2d100d91
Merge pull request #1894 from moan0s/maubot_moanos
Maubot moanos
2022-07-20 10:10:14 +03:00
alexhartley
015952b37d Update recommended Skype bridge 2022-07-15 17:49:47 +01:00
Slavi Pantaleev
e94ec75e1a Remove matrix-bridge-mx-puppet-skype role 2022-07-14 18:09:19 +03:00
Julian-Samuel Gebühr
29b336f0a8 Add docs
Unrelated to the original branch I added the matrix-registration bot as it was missing in the readme
2022-07-11 13:28:23 +02:00
Julian Foad
85b12b74a7 matrix-ntfy: documentation 2022-07-04 15:32:07 +01:00
Slavi Pantaleev
5e9e8f9e29 Announce go-skype-bridge support 2022-06-13 08:02:31 +03:00
Vladimir Panteleev
a3d19ad318
Add Go Skype Bridge
Based on mautrix-whatsapp, as that's what the bridge software is based on.
2022-06-12 21:29:43 +00:00
Slavi Pantaleev
1163e9880f Link to Buscarron bot from configuring docs page
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/1782
2022-04-25 10:37:35 +03:00
Julian-Samuel Gebühr
90a142439a
Add matrix-registration-bot (#1771)
* Add matrix-registration-bot

This adds an install and uninstall task plus helpers. The bot is disabled by default.
This commit does not include documentation, yet. In short, the bot can be enabled by adding
matrix_bot_matrix_registration_bot_enabled: true
matrix_bot_matrix_registration_bot_matrix_user_password: "verysecret"
matrix_bot_matrix_registration_bot_matrix_admin_token: "supersecret"
to the host_vars

* Change bot username to bot.matrix-registration-bot following convention

* Address smaller remarks, fix local docker build

* Switch to an env file

* Add environment variables extension for additional config

* Add documentation for the matrix-registration-bot

* Add screenshot on how to obtain admin access token

* Use bot as admin to only have one access token (bot and admin api)

* Use cleaner setting of matrix_synapse_registration_requires_token

* Use config file for cleaner more secure usage

* Delete unneeded env

* Rename vars to make usage clear

* Fix typos/wording and add notice about logging out

* Convert configuration to use |to_json

* Reorder role includes

Nothing should be after `matrix-common-after`.

`matrix-bot-matrix-registration-bot` can probably be anywhere, but it makes sense to put it next to the other `matrix-bot-*` roles.

* Minor group_vars/matrix_servers touchups

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2022-04-21 11:07:47 +03:00
Slavi Pantaleev
295ef29fe0 Announce borg backup support
Related to:

- https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/1727
- https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/1754
- https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/1755
- https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/467
2022-04-19 19:29:41 +03:00
Slavi Pantaleev
958d089b68 Do not install the ma1sd identity server by default
As mentioned in the changelog, this is a breaking change.
2022-03-17 18:00:09 +02:00
Slavi Pantaleev
e6c2dd204d Update changelog and configuring-playbook.md
This announces matrix-hookshot support that got added in
https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/1505
2022-02-01 14:07:43 +02:00
rakshazi
407e8c4940
added honoroit 2022-01-06 20:30:10 +02:00