Hi all,
I want to host my own matrix server, so that i can run bridges to all the other (stupid) messaging apps.
I am looking for any advice or experience in choosing which server to run, and if you know of any good tutorials, run throughs, etc. i typically would like a lighter instance, as i expect about 3 users, with 2 of us needing bridging.
- dendrite
- synapse
- conduit
- construct
and then the addition of bridges, (Signal, WA, Messenger and hopefully SMS).
I am fairly self sufficient when it comes to self hosting, and i run everything on linux, in docker, proxied by Nginx proxy manager. but typically prefer stuff that works more or less out of the box.
Thanks all!
Im using the ansible matrix playbook with synapse for 3 users and a bunch of bridges. I choose this because I used to setup my docker container and everything myself up but i absolutely dont want any downtime on my communications just because a config is not perfectly setup. If im out and about i want to still be reached. The playbook makes it really simple and takes care of everything i want. Even things like sliding sync are setup with one line added to the config. https://github.com/spantaleev/matrix-docker-ansible-deploy
This is the way! I also have a synapse with this ansible playboy up and running and it works like a charm.
Do not use Dendrite for multi-user setups if you plan to run bridges. Contacts handled by the bridges are visible by the whole server, which means that it leaks many information on your contacts (names, phone number, …). I’m also not sure that multi-user puppeting is supported with dendrite.
I would advise you to run Synapse because of that.
thanks, i am hoping to get conduit up and running, and the default docker-compose seems to be going ok, just need the rest of the plumbing, then the bridges and i will be sweet :D
I run my own Synapse server with bridges to WhatsApp and Telegram, along with a few other services, using Yunohost. I haven’t observed any huge resource usage, and I like the centralized management/update. One possible downside is that you won’t get the latest versions immediately, the Yunohost maintainers take time to test those. I prefer the stability that gives me but if you want to be on the edge a docker setup will be better.
I run my own Dendrite server and have had it work pretty well.
Initially I chose Dendrite over Synapse as I heard about Synapse being quite heavy in terms of load, and my overall experience with Dendrite has been pretty good!
I run the server just for myself, but have it setup with Signal and Messenger bridges that work flawlessly (apart from one time when Facebook thought my account was hacked and had to reauth!)
how difficult was the setup? i am hoping for lug-n-play type of thing.
I would rate it 8/10 for ease of install, especially with the docker setup it is pretty easy.
Only slightly annoying setup task was getting the matrix bridges setup as you need to mess with some config and I had some issues getting it to work initially.
But once it was all setup, pretty solid for me ever since!
Do you need/like matrix so much that you want to self-host it in place of more admin-friendly alternatives? The client/user side of matrix is okayish, but everything else is terrible. The protocol is inefficient by design and that’s not something faster languages will solve so expect your available resources to sink, all implementations suck in different ways, are highly incompatible, constantly changing and have you in a permanent stressful state of chasing the latest/breaking/testing stuff. The team in charge is in denial about a great many things, and lacks the deeply needed amount of focus and reality check to get things done (which I imagine has been a large contributor to more and more “institutional actors” dropping them recently, like France several months ago).
I could go on and on, but in short, I was at your place some time ago and the mess, disappointment and overall stress I found with matrix only compelled me to give XMPP a close look. Now I (and my users) are super happy with ejabberd and modern clients like Conversation/dino/movim make the while thing a very pleasant experience. Not all features of matrix are there, but I take reliability/predictability and simplicity over them any single day.
Ultimately, i want something that is able to work outside of its own walls. I dont want 10 messenger apps, and i dont want to limit the messenging app that i host to just us (ie, it would be good if my account can talk to others, by my sons can only talk with us).
XMPP i have heard nothing but good things about - i will do some reading on it.
Do you have any links for the french dropping matrix?
Ultimately, i want something that is able to work outside of its own walls. I dont want 10 messenger apps, and i dont want to limit the messenging app that i host to just us (ie, it would be good if my account can talk to others, by my sons can only talk with us).
The funny thing about XMPP is that this is exactly where it started at, when AIM, ICQ, MSN, Yahoo and co. were all the rage in the late 90’s, the geeks became annoyed of needing as many clients as there were protocols, and XMPP was meant to bridge over to all of them. Fast forward, we since learned that bridging to other protocols generally sucks (or isn’t to be recommended to the average folks), and just to make sure, Matrix tried again 15 years later with the same outcome. But if you need it, the capability is still very much there and some still pursue the effort to this day.
Do you have any links for the french dropping matrix?
I only have a (private) IRC chatlog which I’m not sure it is ethical to post in the open, so I sent it to you by private message instead. I don’t think it is a secret at this point so there might be other sources out there to corroborate this.
My experience has been that dendrite and synapse totally maxxed out the server I ran it on (100% cpu utilization for days on end), so I run conduit.
The one downside of conduit is it’s a bit behind, so it doesn’t support all the latest rooms, and it doesn’t support spaces yet, and it has minimal admin tools so you’ll want to create all the accounts you need then close logins because bad actors will try to create logins and get you banned from half of Matrix. That said, I can tell you that even on my piddly little server (an Intel Atom D2550), it runs Conduit, ejabberd, nostr, and lotide, and the server basically sits idle. I can’t speak of bridges, unfortunately, because I don’t really use them.
This is the guide I used, it worked well to set things up:
thanks - the dendrite and synapse experience is what i am worried about - it seems to be the massive implementation that will scale to millions.
i was looking at conduit, but realy dont know what the issues i will come against with it. but it seems to be the most visible of the non-major implementations.
Besides lacking spaces and some rooms not letting you join, (and the lack of admin tools) the only big issue I find is that you plan to run something other than Element as the interface, you’ll have to test it because many matrix clients expect synapse or dendrite and won’t start with anything else. I’ve run fluffychat, I think kchat(whatever the kde matrix client is), and nheko, they all worked well with conduit.
as you saying that element doesn’t work?
No, I’m saying it does work, but other clients might not.
ah, yep - that is cool. I expect that i will use Element and potentially another simpler client.
I am also curious about how element X will go, which requires the sliding API/proxy thingo. but that is future palitu’s problem.