Hi. I have a group of 6 people using Discord to chat. Recently Discord changed a lot and we’re looking for an alternative. We have a few requirements:
- Good client on multiple platforms
- Easy to use search
- Self hosted
- Permanently saved chat history & attachments on server (no expiration)
- Easy image upload (Ctrl+V to post image from clipboard)
IRC isn’t an option as chat history is saved on the client, and there’s no good integrated way to share files and preview images. Matrix would be an overkill as we’re a small group not interested in federation, and the available clients had a few bugs. Mattermost lacks a good mobile app (their current one had bunch of bugs). XMPP appears to be the best as it is extensible and has many clients available.
However, I tried configuring prosody on my FreeBSD server and it seems like it doesn’t permanently save chat history or attachment files. Does anyone know if these can be solved? Or is there any better alternative than XMPP?
Thanks.
You can have non-federated Matrix. And XMPP is federated as well.
XMPP is probably fine. I haven’t used it but people say it’s good.
Yes, but Matrix a plague of questionable open-source and a metadata disaster.
Matrix is developed by a for profit entity, a group of venture capitalists and having a spec doesn’t mean everything. The way Matrix is designed is to force people into jumping through hoops and kind of drawing all attention to Matrix itself instead of the end result.
https://techcrunch.com/2023/11/06/decentralized-communication-protocol-matrix-shifts-to-less-permissive-agpl-open-source-license/
Stop recommending questionable open-source like Matrix. XMPP is the true and the OG federated and truly open solution that is very extensible. XMPP is tested, reliable, secure and above all a truly open standard and decentralized it just lacks some investment in better mobile clients.
What people fail to see is that XMPP is the only solution that treats messaging and video like email: just provide an address and the servers and clients will cooperate with each other in order to maintain a conversation and it can be configured to be secure and private. Everything else is just an attempt at yet another vendor lock-in. Here a quick overview of the architecture.
Matrix does not “leak” metadata. It HAS metadata.
You’re right that XMPP is federated as well and Matrix can be non-federated but I’ve heard some people had trouble with the Synapse server chugging resources despite not using federation.
I’ve been self-hosting Matrix Synapse for more than two years to chat friends and family and it has been rock-solid and it’s on a VPS that os hosting a Nextcloud and Lemmy instance as well. It is definitely not really resource hungry for small groups of people.
If you want to try again this route, just make sure that everybody saves a backup of their keys as the messages are all encrypted and while you can authenticate a new client installation from another client that the same user is logged in, some people - like my mother - only use one, on her phone, which is understandable.
So in summary, I’m very happy with it! :)
How much CPU, RAM and storage does it consume for you?
That is a good point… on average it’s around 500Mb of RAM usage, between 0.5% and 1% of CPU (it’s a 2.4Mhz four cores).
Space is 5Gb, mainly media files accumulated over two years.
So overall, not bad.