What is the current state of Matrix?
from majoru@feddit.org to selfhosted@lemmy.world on 08 Sep 19:46
https://feddit.org/post/18553564
from majoru@feddit.org to selfhosted@lemmy.world on 08 Sep 19:46
https://feddit.org/post/18553564
Some years ago, I hosted my own matrix server for a few months. I’m an experienced self-hoster, but I remeber that Matrix was paticularly hard to host, requiring weird proxy rules, DNS adjustments, federation never worked reliably and push notifications never worked at all. I ditched the project soon because I also had no real use for it. However, I recently had some ideas where a Matrix server would be useful again. Has anyone attempted to install it recently and can tell me whether the situation has improved? Also, which server do you recommend? There still is synapse but I found it paticularly complicated to host. Dendrite is now archived and the current fork seems to be tuwunel which doesn’t seem to be under very active development.
threaded - newest
I installed synapse some weeks ago. Pretty easy, straightforward. Even managed to install some bridges.
After the last matrix.org incident and some info about the failing message retention, I just killed the server again. I’m not comfy with the service being so greedy/resource hungry and also the usability sucks at certain points.
My matrix server is nearing 5 years old. I have federation disabled, because I don’t need that - we are using it as a family chat. sqlite database I’m using is now 2GB, but other than that it is working great.
I do acknowledge that I’m not leveraging the things matrix is designed for (federation, e2e encryption), but to be honest, it’s not really good at that.
it’s perfectly fine at e2e encryption, especially if you’re not federating.
I host synapse as docker container behind traefik and it works pretty well. I have two users on my instance, have setup the mautrix-whatsapp bridge and federate with the instance of a friend.
The setup was straight forward: Pointing the sub-domain via traefik to the service and in the homeserver.yml enable well-known which announce port https with port 443 instead of 8448.
IRC and XMPP are infinitely less painful, honestly, and both were designed around federation from the ground up, long before it was cool.
IRC does not have any federation, and XMPP does it in a completely different way from Matrix that has unique pros and cons.
IRC is designed for you to connect to a specific server, with an account on that server, to talk to other people on that server. There is no federation, you cannot talk to oftc from libera.chat. Alongside that, with mobile devices being so common, you’d need to get people to host their own bouncer, or host one for nearly everyone on your network.
XMPP federation conceptually has one major difference compared to Matrix: XMPP rooms are owned by the server that created them, whereas Matrix rooms are equally “owned” by everyone participating in it, with the only deciding factor being which users have administrator permissions.
This makes for better (and easier) scaling on XMPP, so rooms with 50k people isn’t that big of an issue for any users in that room. However, if the server owning the room goes down, the whole room is down, and nobody can chat. See Google Talk dropping XMPP federation after making a mess of most client and server implementations.
On Matrix, scaling is a much bigger issue, as everyone connects with everyone else. Your single-person homeserver has to talk with every other homeserver you interact with. If you join a lot of big rooms, this adds up, and takes a lot of resources. However, when a homeserver goes down, only the people on that homeserver are affected, not the rooms. Just recently, matrix.org had some trouble with their database going down. Although it was a bit quieter than usual, I only properly noticed when it was explicitly mentioned in chat by someone else. My service was not interrupted, as I host my own homeserver.
The Matrix method of federation definitely comes with some issues, some conceptually, and some from the implementation. However, a single entity cannot take down the federated Matrix network, even when taking down the most used homeservers. XMPP is effectively killed off by doing the same.
You’re absolutely incorrect about IRC. Would you like to learn? Open IRC federation is basically never used anymore and the few networks that exist are very stable (if not completely calcified), but it is a core feature of the design, and in the old days, massive interconnected networks of IRC servers like EFnet and Undernet spanned the globe, there were even some servers that allowed open federation (EFnet is actually named for it – eris-free-net referring to the last server “eris” that supported free federation), and at some points Netsplits were a frustratingly daily occurrence. Like with any federation, abuse is the reason we can’t really have nice things anymore, but IRC absolutely supports federation. Not very well from a modern standpoint since it didn’t really keep up with the abuse arms race, but when it was first conceived it was way ahead of its time.
“Open IRC federation is basically never used anymore”
so you admit IRC isn’t federated, lmfao
hanez.org/document/why-matrix-sucks/
Use IRC.
I switched from IRC to matrix in 2018 specifically because I found mobile difficult.
I used the suggestion in your linked document by running irssi in a tmux session on a VPS I paid for, then using a bridge to an app on my phone. I found the experience to be cumbersome even for someone like myself (and even then irssi required reboots or else it would lose performance over time).
I wanted to use IRC for a family chat, but I couldn’t possibly convince my friends and family to go through the same client setup as I did.
In my opinion there are use cases that either IRC or Matrix would be preferred over the other (not to mention other self hosted communication software).
Just host thelounge, its a web based irc client with integrated bouncer.
If you want a conduwuit sucessor, I'd choose the continuwuity project over tuwunel. The legitimacy as the sucessor is mainly self-proclaimed, and continuwuity is a community effort. The entire thing is kind of a shitshow, though. If you want to do it like 99% of people, make friends with Synapse.
I think what you describe still holds true. You need a few correct DNS entries and an open port. Once you want VoIP, some more ports and a TURN server will be necessary. And that one took me some effort, but the server itself (including federation) was well within my comfort zone. And I run continuwuity these days because Synapse wastes way too much resources for what I do and their other efforts went nowhere. But I'm not sure about the future of those smaller Matrix server projects.
And if you don't like Matrix or can't get it to run, maybe try something like XMPP.
You realise that sounds insane, right?
Sure, I believe that is supposed to be uWu or maybe some kind of puppy talk. It's certainly originally started by June, who turned conduit (which is a sane name) into conduwuit.
I figured I've lost all shame anyway, back when we discussed nerd topics in the school bus or the 5 'o clock train, like Linux lore, anime, Star Trek concepts and technobabble. I mean people were staring and I'm aware of that, but I've really lost all F*'s to give. And that turns me into the person who I am today, and I'll happily write sentences like the one above. Or still talk about Star Trek in a crowded train. And these days it's the mycelial network and that really makes people question my sanity. 🫠
Why do you prefer continuwuity? Curious as I’m running tuwunel.
We've had the discussion a while back here in selfhosted. You can find it here: https://awful.systems/post/5029223
Main points: Continued drama around people, and tuwunel is tied to a single, (paid) developer and I figure once there's anything wrong with that, tuwunel might die instantly. While continuwuity is a community effort and maybe that's a bit more sustainable. Though I don't own any crystal ball and I don't know how things will turn out.
It’s still bad, and the foundation keeps digging itself into a deeper and deeper hole. Dead project.
Absolutely unbased take. Please ignore.
Matrix works fine, I have hosted a server on my own for several years through an ansible playbook here.
Way back in 2023, Matrix was the jack of all trades but the master of none. It wanted to replace Discord but the video messaging was not stable enough. It wanted to replace Slack but message searching didn't really work. It was still struggling to get a decent client and server implementation, and message loading times were a huge pain point.
Fast forward to today, most of the problems are still there. Give it a couple more years to cook.
I set it up during the outage last week.
Easy enough to just pull in the synapse docker container and run it on my home server. I wireguard it to my VPS that acts as a reverse proxy.
Both federation and push notifications work.
It’s been a solid tool for hosting just for myself to bridge all the different platforms/protocols that people want to talk to me using, but there is no way I would recommend it to anyone else. I don’t know if it will ever get to a point where it works well enough for me to recommend. If you do want to host a server though, I strongly recommend matrix docker ansible deploy to do so.
Agree, AFAIC it’s only good at bridging protocols. Most likely an ecosystem advantage more than a protocol one.
Damn. That sucks. (Edit: Referring to the comments saying Matrix is dead and dying.)
I get that IRC and XMPP are more stable and built around federation from the ground up, but… they’re not Discord replacements.
That was IMHO, the point of Matrix/Element.
Tell me if I’m wrong, but a significant part of a network’s resilience is the number of nodes and users.
Without a glowup or some kind of repackaging, IRC/XMPP are doomed to stay niche.
Well Discord started as a replacement for IRC and TeamSpeak/Mumble, then began to add more and more things and got used as a forum replacement and everything went down the hill. Why not going back to the roots? We had fucking IRC scripts for matchmaking in Q3CTF.
I wouldn’t mind going back to IRC roots if it could be made more user friendly and integrate voice and video chat.
Good UX/UI goes a long way to make it so non-technical people can join and strengthen the network.
Discord has quite a few good features that IRC doesn’t. I will agree that it being used as a replacement for a forum, while also being unsearchable, is amazingly stupid. However, it’s used by almost everyone for a reason, and to ignore that (if you were to develop and alternative) ensures you won’t succeed. Yeah, we don’t need every feature from Discord, but easy voice/text/video chats, image/file sharing, and all the other useful things are required. Yeah, we can probably lose the emotes and crap and be fine.
Xmpp supports group chat, 1:1 messaging, you’ve got webtrc support for voice/video, and its extensible.
Jingle even has screen sharing (and I think a WIP remote control function).
What is missing from xmpp?
Technically, nothing.
In practice, who do you know that’s using it and doesn’t run Arch, by the way?
My point isn’t that IRC/XMPP aren’t technically capable.
It’s that they’re not designed for non-technical users.
I want corporate social media to die. Mastodon and Piefed are far from killing the beast, but they’ve made the more progress than most projects have seen in a long time.
I want corporate messaging to die. Matrix is far from killing the beast, but for a little while, at least it was trying.
Well I mostly run Debian, but I do have arch on a machine so maybe I don’t count.
Have to agree there, it takes some effort if you’re setting it up for friends and family.
Snikket was easy to setup for my family.
I think judging something really depends on the requirements. No one said using technology was going to be simple and easy. We should make it as easy as we can do, but no more than that. There's still a lot of room for improvement. But in the end the commercial services are geared towards convenience. And they'll always outpace us. We have to set up servers and jump through a few hoops so it's us in control of the network. There is no other feasible way to do it.
Though I really wish we had some messenger that makes encryption foolproof. And rock solid, and with a resource footprint of IRC when concerned with text messages, but not limited to that.
Quicksy and Prav apps allow you to easily signup via SMS verification like WhatApp etc. Super easy and the app works like Whatsapp, completely usable for non technical users (much more so than any Matrix client).
And Snikket is an super easy all in one solution for running a XMPP based small group server with invite based onboarding. Also completely non-technical user compatible.
threads and spaces as far as I am aware
I had the same experience as OP when I tried Matrix a few years ago. No hate on it but it was not easy and I gave up because I already had a simple IRC setup that’s working for me and my friends.
Some IRC clients are now web based and it’s been enough to keep a few of my friends there instead of Discord. We use The Lounge. It can keep a history, display images, videos, play mp3s, and show previews of most URLs. Like, we can simply copy/paste images into a channel and they are uploaded on the server and displayed in the chat. There’s also push notifications and it’s mobile friendly.
Convos also does something like this. Apparently it can also do video chat but I’ve never got it to work.
I’ve recently been thinking about giving Matrix another try but I’m pretty sure my friends are going to stay on “modern” IRC anyway.
Matrix works good. Two years ago Element should’ve been what element Next is today. But it is getting there. It still has great backers and lots of users. As long as there is no direct alternative, it’ll get there.
I don’t want american companies owning all my data and neither do companies want that.
It’s not the shiny new kid anymore but there is no other new shiny kid. Hence, it is still the brightest and newest kid.
I have synapse server running in docker on a VPS and it’s been pretty reliable. At my office I use it as sort of a self-hosted Slack replacement. For our use case, I don’t have federation enabled, so no experience on that front. It’s a small office and everyone here uses either Element or FuzzyChat on desktop and mobile. It runs behind an nginx reverse proxy and I’ve got SSO set up with Authentik and that’s worked very well. Happy to share some configs if that would be useful.
damn, was not expecting to see so much hate towards matrix.
it sure was annoying to set up, but once I got it up the way I wanted, it kind of just worked from that moment on. I’ve had it for some 5 months now and it works as intended with no issues, aside from some small glitches here and there which get fixed very fast (on the mobile app).
my use case was getting off Discord with a bunch of friends, so we needed a reliable way to have multiple chats, channels/rooms and good voice chat with screen sharing. element call does those well. my federation is of course also closed. for me e2ee is just a bonus
I think that if that’s your use case, it’s good for that. synapse does seem a bit inefficient but I guess you can’t do much about it
My experience is the same as yours, but I think the people complaining are the ones who are federated and are in large communities. Matrix apparently doesnt handle large rooms very well.
fair enough, that’s true. it was one of the reasons I turned off federation, even on a beefy server synapse still lagged and timed out when I would join medium sized rooms.
Tbh I had no issues with synapse.
The problems that persist: Very rare issues with decrypting (as I rarely encounter it, while being in encrypted chats with 150+ users, it’s not an issue for me), apart from after you changed clients, slow image loading (a bit annoying, but ok if you multitask anyway) and clients all having different feature sets (some of which you can also hackily make work in others).
I recently shut down my server because it’s a high traffic, high risk software. You should have an eye on it, I’d say at least half an hour every week…
I use https://github.com/spantaleev/matrix-docker-ansible-deploy which makes it pretty painless to self host on a vpc with Synapse as the server.
I don't have federation setup, since I just use it with friends. So besides running the update command once a week, I don't even think about maintaince.
As the end use my biggest gripe with Matrix is with voice communications, it’s almost as if you sneeze wrong you’ll lose connection to the voice group, screen sharing is horrible, no audio and the window is not adjustable, cant even make it full screen.
Now they’re reducing people’s usage by putting in a subscription and locking certain features, at least on the home server.
While I am disappointed they did at least take my advice and prevent Windows Recall from capturing people’s messages.
I didn't like synapse or dendrite at all, but conduit has been great.
I did synapse about a year ago but kind of wish I had done conduit, it seems so much simpler. That being said, all of the bridges and add-ons assume you’re running synapse
I agree, I amselfhosting conduit too and its working great.
I’ve been wanting to get matrix up for my family and friends to chat with my 6 year old on her tablet. I found nextcloud talk to do all the things I wanted with none of the hassle. My daughter is a ridiculous texter.
I use conduit. And really happy with it. Since I use 3 bridges the compose.yml is a mess. It works really nice. The sliding feature boosts all media files. But there is always something broken or misconfigured. Actually my WhatsApp bridge blocks all mediafiles and I was too busy to fix it already.
Conduit is long dead. Upgrade to tuwunnel, its successor, while its still binary compatible…
All bridges works fine here.
Continuwuity developer here - Conduit is reviving itself, and you can no longer move from Conduit to tuwunel or Continuwuity. You haven’t been able to for as long as either project has existed. You might be confusing conduwuit with Conduit.
Conduwuit has another child? What the difference between continuwuity and tuwunnel?
continuwuity.org or forgejo.ellis.link/continuwuation/continuwuity
As for the difference: lemmy.world/post/33271240
Thanks.
I am currently on tuwunnel, might consider a continuwuity migration in the short term future maybe.
Ibwant to stay clear of any drama but stay on a future proof solution if possible.
Hard choices.
Unable to decrypt message. Please try again.
Ha!
While I appreciate the joke, I have not seen that problem in quite some time :D
I’ve last seen it last month. And I have an old chat, where FluffyChat and (“old”) Element show all messages by now, but Element X can’t decrypt many and both Elements report that they can’t guarantee the authenticity of many messages (even my own). For a long time, my chat partner could only read messages I sent via FluffyChat but not those sent by Element. I have not checked if that is still the case.
Some months ago, I had UTD issues with Element X too. My hs has been up for some years, and the devs claimed they had done a lot to fix UTDs.
I was about to bring the server down, but as a last resort decided to log out all but one Element web session which was able to decrypt the messages and try resetting the key backup. Haven’t had any UTD issues since then.
Maybe worth a try.
“can’t guarantee the authenticity of this message” just means it was restored from backup. In the same vein, if you can decrypt a message in any client, it should upload the keys to the message backup so it can be decrypted on other clients, even ones that haven’t logged in.
definetly report the problem. there’s a function for it in the app, 3 points menu on the chat list menu, use it after making those errors show up. tick the contact me box. ceo recommends to also notify himself directly: gist.github.com/…/190ad712965d0f06e17f508d1a45b55…
I’ve only seen this message in the last months where different servers are having network issues and can’t talk
This is quite annoying. When will devs learn to tell people to resolve the problem instead of just showing a pointless error messages?
afaik those errors can’t really be solved by users. I mean other than using an up to date client and server.
If users cannot do anything because all encryption keys are lost, then they need to know that and also how to avoid the situation in the future.
I think it’s not a bug. It’s simply no one online who can share a decryption key.
Matrix encryption keys don’t need other people online - they get queued up as messages for each device you have.
matrix.org/docs/…/end-to-end-encryption/
That page seemed outdated, but: From further down that page:
This is the same situation where the key backup is accessible - which is not described on that page, but it’s a key store of all the megolm keys. This is what is now generally used instead of that as it doesn’t require devices to be online and allows recovering keys if all devices are lost.
its often a bug, because the clients who have the keys don’t know they should retry sending.
but also it’s all been fixed a year ago as I know. I don’t usually use dm rooms and public ones are not encrypted, so I wouldn’t know if I didn’t read about it.
I host my tuwunnel server and I am happy with it. The lack of a top level client is my turn down. Element X is good but still lacking, and fluffy chat is maybe better looking but more lacking.
My matrix use case is only WhatsApp and telegram backup using the bridges, actually… So YMMV.
My experience as well, though you might take a look at the recent fluffy chat 2.0 release. It is the closest to a usable client.
But I agree and it’s baffling to me how a project backed by so many organisations and a considerable amount of cash fails to deliver even a decent user experience.
The many small bugs make Matrix still bad - I wouldn’t recommend a non-tech user unless accompanied by a 24/7 admin. It is trying to improve but very slow because of reasons
I believe the machines are currently struggling against the humans
Matrix works perfectly for me, if you’re setting up a new server, I’d go with tuwunel. I’m stuck on synapse, when the tuwunel team makes a way to migrate, I’ll do it.
matthew the ceo addressed aot of the criticisms recently, check it out: www.youtube.com/watch?v=OyuqM7RbX5E
transcript with links: gist.github.com/…/190ad712965d0f06e17f508d1a45b55…
other than that, push notifications work fine for me with Ntfy. but as I heard matrix.org hs users have problems, possibly because of serverside firewall issues, investigation is stuck somehow
Synapse was too heavy on my resources. Moved to XMPP despite I like Matrix more.
Matrix seems to work well. I’m on a smallish non-profit server. I regard it as the premium open-source step forward from IRC.
The worst problem is that there are really no channels that I care to follow.
You might want to check out matrixrooms.info, which is good for a search around. Some project communities also have offtopic rooms that are good to chat in. Even very small rooms can be very active.
github.com/…/matrix-docker-ansible-deploy