Project

General

Profile

Actions

communication #134624

open

openSUSE's Matrix instance and its bridges

Added by luc14n0 10 months ago. Updated 10 months ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
IRC and Matrix
Target version:
-
Start date:
2023-08-25
Due date:
% Done:

0%

Estimated time:

Description

Hello everybody,

I'd like to propose a few things and ask for opinions/insights around our Matrix instance and its bridges.

Matrix Bridge

As some/many of us know Libera.Chat has asked EMS to shutdown their Matrix<->IRC bridge 2 permanently temporarily 1 due to outstanding issues that have been going on for a long time, but EMS wasn't able to address them properly -- or in a timely manner. And they did 3. Both EMS employees and Libera.Chat staff members are suppose to team up composing a join task force in order to (try) to resolve the aforementioned issues in that Libera.Chat news article.

Today it makes around two weeks since the bridge has been shutdown and there are no words/whispers about what's going on. And to be honest I would expect it to take a while for them to sort out their stuff. In the mean time, I'd like to propose a temporary solution.

Nowadays Libera.Chat allows third party bridges. And currently we have two stable bridge implementations available 4, matrix-appservice and Heisenbridge. So we could experiment a bit and see how it goes. I know Jacob took a look at Heisenbridge before and there were missing features (that might have been implemented already). However, at the moment we should take a look at them and see whether they are good enough for at least as a temporary solution.

Matrix Server

The other proposition I have is:

To experiment with Conduit, an alternative to Synapse, but written in Rust.

Synapse have scalability issues and the open source community is brewing interesting projects, which is a good thing. Again, Jacob has kept an eye on this particular homeserver implementation, but there were unmet expectations for a migration to happen, expectations that might have been met lately with its 0.6.0 release.

I'd say we take a closer look at this, because let's say Conduit is good enough for our needs, then this would be a good time to plan a migration IMO, as part of our communication has already been disrupted by the bridge shutdown. Sadly, at the moment there might not be a sweet smooth migration path from Synapse to Conduit I'm afraid, only after reaching the 1.0 release milestone the Conduit developer(s) are willing to put efforts into such a thing.

Besides those propositions and hope for discussions, I'm willing do most of the work, if that's what it takes to reestablish communications between IRC and Matrix/Discord/Telegram users.

Actions #1

Updated by luc14n0 10 months ago

  • Private changed from Yes to No
Actions #2

Updated by crameleon 10 months ago

I would like to add my proposal to this, because I think it would complement it well: bridging Libera IRC with our own small IRC server (doesn't necessarily have to be public), for example using Matterbridge, and then to bridge from there to our Matrix homeserver. The benefit is that "internal" communication between openSUSE members on the two communication platforms will not depend on the loaded Matrix over the internet, and federation issues will only affect people on remote homeservers.
Of course, the second point might not apply anymore if we run our own bridge and do not have to go through matrix.to.

I know a big problem was the lack of moderation. I do not think any bridging solution, especially given our integration of Discord and Telegram, can cover moderation in all connected platforms. For this a better solution would be an administrative bot, which authorized users can query to issue moderative action against users on remote platforms.

In any case, happy to help if needed.
For running new servers it might make sense to wait for the new datacenter to avoid having to migrate more services, though if the deployment can be easily reproduced via Salt it shouldn't be a blocker. :-)

Actions #3

Updated by luc14n0 10 months ago

crameleon wrote in #note-2:

I would like to add my proposal to this, because I think it would complement it well: bridging Libera IRC with our own small IRC server (doesn't necessarily have to be public), for example using Matterbridge, and then to bridge from there to our Matrix homeserver. The benefit is that "internal" communication between openSUSE members on the two communication platforms will not depend on the loaded Matrix over the internet, and federation issues will only affect people on remote homeservers.
Of course, the second point might not apply anymore if we run our own bridge and do not have to go through matrix.to.

Thanks for the feedback.

Let me draw some (fool-proof, so I don't trip over my own words) schemes. That should gives us a clearer picture of how (approximately) things are/were (someone correct me if something's wrong).

This is how things should look before the Matrix/IRC bridge was shut down:

IRC [1] <-> Libera Matrix [2] <-> openSUSE Matrix [3] <-> Third party platforms [4]

  1. That's Libera.Chat, obviously;
  2. Libera.Chat's Matrix instance bridged using matrix-appservice-irc;
  3. Our Matrix instance, where federation is relied upon.
  4. Bridged third-party platforms, like Discord (using matrix-appservice-discord) and Telegram (using mautrix-telegram?).

Your proposition would look like this:

IRC <-> openSUSE IRC [1] <-> openSUSE Matrix [2] <-> Third party platforms

  1. Small (private) IRC server bridged possibly through matterbridge;
  2. Our Matrix instance, but bridged possibly through heisenbridge;

My proposition would look like this, at least for now with Libera.Chat/EMS's bridge shut down:

IRC <-> openSUSE Matrix [1] <-> Third party platforms

  1. We bridge our Matrix instance directly to our rooms in Libera.Chat with either heisenbridge or the defective matrix-appservice-irc.

With that out of our way, honestly I can't say if your proposition of having a small IRC server would be more beneficial then us bridging our Matrix instance directly to Libera.Chat's IRC. Perhaps that would depend on how trivial is for Libera.Chat staff handle their stuff when one sets up bridges. I'm not familiar with the procedures around that, unfortunately. But one advantage I see is more freedom and convenience to experiment.

Note that both our propositions would result in having to ask EMS to delete the openSUSE rooms in their Libera.Chat Matrix instance, meaning no more third-party middlemen between Libera.Chat and our Matrix instance would be necessary.

I know a big problem was the lack of moderation. I do not think any bridging solution, especially given our integration of Discord and Telegram, can cover moderation in all connected platforms. For this a better solution would be an administrative bot, which authorized users can query to issue moderative action against users on remote platforms.

Yes, there's no One Ring to rule them all here. Anyway I'm not particularly worried about that right now.

In any case, happy to help if needed.
For running new servers it might make sense to wait for the new datacenter to avoid having to migrate more services, though if the deployment can be easily reproduced via Salt it shouldn't be a blocker. :-)

I missed the discussion on the Heroes meeting of this month. I read the meeting minutes, so I have some idea of what's going on. Right now I'm not sure about how easy would be to reproduce setups via Salt :~)

Actions

Also available in: Atom PDF