You could use matrix and host your own instance.
post
You could use Matrix but it is very finicky and complicated.
You could use XMPP but they don't have any nice clients.
You could use Zulip but it's confusing as fuck to navigate.
You could use Mattermost but it's tied to a corporation that seems intent on removing features from the open source version to convince you to buy a license.
You could use Quiet (not self-hosted but p2p) but it's very new and very Alpha.
You can use NextCloud Talk but that's probably more than you need, and it seems to be very difficult to maintain for many.
I won't engage in any arguments, these are just my opinions, and options for OP.
You could use XMPP but they don’t have any nice clients
[citation needed]
There's at least three good clients for Desktop (multiplatform) and two for Android.
Plus, XMPP is the best thing to run service-wise. Relatively cheap, runs on a potato, not a nu-protocol that requires a server cluster and friggin' npm.
XMPP for my attempt just worked, voice and video calling too. The Android clients Monocles, Cheogram and Conversations are great, as for desktop they all look like 90's messaging clients haha
I ultimately switched to Matrix because the encryption key sharing is much more friendly, at least for helping non-enthusiasts use it, and I didn't realise I could decrypt old XMPP messages for new clients by transferring them manually, but at least Element Web is nice. It has flaws, definitely - on Android I find myself using Element Classic for creating unencrypted rooms and voice/video calling using my TURN server, and Element X for general messaging, caption and Markdown support. That's another thing - for me the Element clients are the closest to being usable, the few others are borked.
In short XMPP is ugly but functional, and the client devs try their best, and Matrix is enticing but, as you said, finicky. Element is pretty but their new client that promises full e2ee for calling hasn't reached a level I would consider out of Beta yet.
I've had a little snikket (prosody docker, xmpp) sever running for a year. monacles or cheogram are just fine, playing games with the fam in the chats is really cool.
dino or gajim on desktop.
calls work well, but android doesn't treat it as an actual phone call (home assistant automations based on phone state won't work)
and I've just now gotten direct messaging tied into home assistant, so i can use it for general notifications. it'd be awesome to get encryption though.
omemo is a bit of a pain, but they've all caught on.
but yeah i mean, very little hassle
I wish Rocket Chat got more attention
I bailed on rocketchat a few years ago for Mattermost and never looked back. Rocketchats update cycle was insane, sometimes two releases in a week but often several a month. A few pdates required full database dumps and manual tweaking. It just wasn't for me.
I have run it for years, and I wish they weren't so limiting and heavy-handed in trying to force people into a paid subscription.
There are many solutions. I have chosen xmpp/ejabberd/conversations/monal.
You know, I'm really curious about xmpp, kinda wanna check it out, but then every time I am reminded that it exists it comes with a new and different chain of dependencies? other apps? whatever the other things are anyways that people list with it. And then I don't bother researching because suddenly it seems like the more complicated option. Not intending to insult, just lamenting.
Irc with convos or the lounge as a web interface.
And yes, that's what I am running.
Didn't they start some crypto nonsense a while back?
Why no-one has mentioned Delta Chat yet? https://runtimeterror.dev/self-hosted-chatmail-relay-for-delta-chat/
IRC, though you'll want to use it over TLS.
XMPP, which someone else listed, is also good if you want a more instant-message-like interface.
due to it missing ideal features
what features do you want? kindly elaborate
XMPP with Snikket could be an easy solution. If you don't want to talk to the wider web make sure to disable federation.
Matrix would probably be one of the better options, but xmpp is a pretty good choice as well.
Matrix, also PeerSuite if you don't wanna leave a paper trail as PeerSuite discards your sessions by default.
What is "ideal" for you? I use xmpp but some people want stickers and shit and use Matrix instead, it's much more heavy weight but also has these extra features. There's also rocket.chat that has all the extra stuff but is not built for federation.
I’m in a same boat, honestly.
Matrix has decent clients but managing a matrix instance is a world of pain, especially if you federate. And its resource use is really bad then: a single user instance can easily demand 4gb ram if you are in a couple popular chatrooms. Key propagation is oftentimes broken. Clients all have mixed support of features.
Xmpp is a joy to host, but there are no decent clients for iOS.
IRC is easy to host, but the IRCv3 coverage for clients is also meh.
I was looking for something that I could throw at casual people with relative ease and there's just not a thing. Even the "techy" chat is in discord nowadays.
I personally use Matrix for this. Artyom kinda summarizes issues of all chats pretty well. If you use Yunohost installing Matrix is at least easy. Matrix/Element is good enough and even my non tech wife is able to use it.
top 39 comments