Finally on XMPP - via Matrix

I was hesitant to even set up an XMPP account since even Matrix is barely getting any traction. And I really don’t like unnecessary fragmentation. However, the software from XMPP ecosystem is way more lightweight than Matrix so my first steps were to set up Ejabberd and check out what it’s all about. I know it’s not the most lightweight of XMPP servers, but it seemed to have the most features and docker images available by upstream. The remaining task is to connect it to Matrix of course.

matrix-bifrost

Github repo

I love Nordic mythology, so this was immediately intriguing to me. This bridge is supposed to allow XMPP contacts communicate with Matrix contacts and vice versa. Some room bridging works too. In fact, you don’t even need to self-host it, there are already many users in Matrix rooms who are bridged over. The developers of this bridge even say that one shouldn’t use it in production yet, at least for self-hosting, as it’s mainly used on their aria-net.org service. But I tried it anyway, and it worked well enough. I am however not going to be using it as it is not doing exactly what I wanted. It won’t allow me to use only XMPP client and kick out the terrible heavy Element-based clients which was my motivation behind trying XMPP in the first place. The reason is that I’d have to add each contact manually and individually and I wouldn’t be getting messages from new contacts automatically. This is probably not in the scope of the software anyway, at least for the near term.

mx-puppet-xmpp

Github repo

To no surprise, somebody already made a puppeting bridge for XMPP. So, I’ll stick with my current Matrix setup and just connect to XMPP from there. It works in the same way as other puppetting bridges. What I found lacking is that the project is unfinished and has some quirks, but I fixed what I could and made a merge request. What I don’t dare to implement is OMEMO encryption, and that’s the only missing feature important to me.