gitops
gitops copied to clipboard
Set up Dendrite-based IRC bridge
Thoughts for consideration:
- Should we use
hashbang.sh
for this orirc.hashbang.sh
?- If we use
irc.hashbang.sh
for this, how can we set uphashbang.sh
in a way where IRC won't lose out on messages created on a potentialhashbang.sh
matrix server - If we don't use
irc.hashbang.sh
, we need a good way to set up either SRV records or well-known, with the former being defined in admin-tools and the latter probably being done via an Ingress. I believe we can have separate Ingress on the same domain name defined across namespaces, so this should be a valid option
- If we use
- Should this be tested to see if we can use a temporary database?
- Should we use Dendrite in monolith or polylith mode? Polylith mode probably won't give us any advantage, and given this only needs to scale to the size of the IRC server, I think the IRC server will fall over first.
One of the considerations was to ensure that users from the Matrix side can still create and administrate channels on the IRC side. As far as I know, this is completely working with matrix-appservice-irc. I tested this by joining #_oftc_#testingchannelhello:matrix.org
and was able to get admin permissions for that room.
I do not know how well actually registering the channel from the IRC side works using this method. I think it requires a manual message to ChanServ.
I would like to point out that the primary reason I'm comfortable moving to a second-gen solution is because this would act as a gateway from Matrix to our IRC server. The primary point of interacting with the community since I've been in Hashbang has been the IRC server and I'd like to keep that intact and never alienate that audience, but we're growing such a large Matrix audience at this point that I feel like a bridge that is directly incorporated into the protocol is now necessary so we're not abandoning Matrix users either.
Currently blocked on having to make a env => YAML replacement engine. I will try this next weekend.
Currently blocked on having to make a env => YAML replacement engine. I will try this next weekend.
Should be easy with yq
.
https://github.com/matrix-org/dendrite/issues/2591