10 ms·
Conduit: Simple, fast and reliable chat server powered by Matrix
- ryanolsonx 3y agoHow does this compare with Conduit? [1] [1] https://demo.realworld.io https://demo.realworld.io
- ashton314 3y agoI’ve run a self-hosted Conduit instance for some years now. Pros: easy to install and use. Cons: it’s beta software! That said, it’s been really good for me. Reliable chat between my and a few friends, plus some big-ish rooms that I participate in. The author also works on Veloren[1]—another fun Rust project! [1]: https://veloren.net https://veloren.net
- socceroos 3y agoI've been using Conduit for quite a while now and have found it to be very good. For ages though it has been missing support for spaces, but support has just landed in the development builds and it is great. I've already updated my service and it has worked as expected.
- _8j50 3y agoI wish there was a similar client that has full feature support but that's the problem with matrix, too many features, signal, discord, slack, zoom and teams all meshed into one thing. Would be nice if they had a secure chat only sub-protocol.
- smoldesu 3y ago> The author also works on Veloren That game is fucking cool. A couple years ago me and some friends compiled it for kicks and giggles to see what it was all about. To our surprise, the game ran silky smooth on my GTX 1050 Ti. We get into a lobby. We play for a half hour. We're just exploring (the map is barebones but has cool landmarks) when I realize that you can scroll to zoom out from your character. In a psychadelic twist, you can just keep zooming out past normal ARPG levels and into a minimap-scale world, then above the clouds, all without dropping a frame. I don't know how well-maintained the project is today, but it's got the bones for a badass RPG. One of these days I'll hop back on...
- freeCandy 3y agoThe game is very actively developed and there are lots of devlogs https://veloren.net/devblogs https://veloren.net/devblogs If the last time you played was a few years ago, they've pushed out a huge amount of features since then. Very impressive for a fully open source game.
- sph 3y agoFrom Veloren's home page: "Veloren is a multiplayer voxel RPG written in Rust. It is inspired by games such as Cube World, Legend of Zelda: Breath of the Wild, Dwarf Fortress and Minecraft." I love how pointing out that it's written in Rust is more important that describing what the game is about or inspired by. Classic open source project unsure of who's the intended audience.
- deleted 3y ago[deleted]
- lightbritefight 3y agoSeems like they know that the audience for an open source game is going to be FOSS nerds first, gamers second. Leading with Rust makes a lot of sense in the list of descriptions.
- smoldesu 3y agoThe expectation is probably more for contributors to read that, not players.
- vmfunction 3y agoYeah seems like a good alternative to run the dentrite (go) server. That seems to be in development forever. At this point, the python server is taking too much resources, nice to see an alternative to go the server.
- Arkanosis 3y agoI've been running it for 10 months now. Very smooth experience (both installation and usage). I'm the only user on my server and I've not joined any very active room, but so far its impact on my small VPS performance has been negligible.
- dang 3y agoRelated: Conduit Beta – Matrix chat server - https://news.ycombinator.com/item?id=28385840 https://news.ycombinator.com/item?id=28385840 - Sept 2021 (69 comments)
- infogulch 3y agoConduit is a very cool project, but unfortunately it seems difficult to follow the status and progress short of reading all commits and issues. I'm excited for the recent progress on the built-in Sliding Sync feature because it's much easier to deploy.
- hparadiz 3y agoIs there a way to migrate from Synapse to this? I don't know if I can justify destroying 6 years of conversation history.
- nani8ot 3y agoNot yet. There're plans to build migration tool for Synapse to Dendrite, but support for Conduit would need to be built in as well. Either way, it's unknown how long it'll take. The tracking issue for Synapse -> Dendrite migration is all I've found. https://github.com/matrix-org/dendrite/issues/1705 https://github.com/matrix-org/dendrite/issues/1705
- teruakohatu 3y agoWhat would be the minimum Digital Ocean droplet that could run this server for maybe 10 people?
- Black616Angel 3y agoI didn't know Digital Ocean before, but it seems like they are more focused on CPU than on disk space. This is bad, since you will need to store some data on the server, if you send any images at all. We have a matrix-server running for 4 people since maybe 2019 and it's at 60gb disk usage right now. So in that regard, 10 memers will need at least a 100gb so 24$ a month, but you can get a lot cheaper than that, using some other server hosters, which are more focused on giving you a lot of space instead. Specs: The server we use has 4 cores (barely uses 1) and 8 gigs of RAM, 2.5 of which are currently used and 120gb of disk space, that will probably suffice for another 2-3 years.
- pkulak 3y agoYou can always mount in an S3 bucket and use that instead of the local drive.
- tgv_hk 3y agoHi, I been running Conduit in a "Allways free" droplet at Oracle Cloud. Its been working without problems for a single user setup (no VoIP though). I hope you get an idea of the minimum resources needed.
- nani8ot 3y agoMatrix does not need much resources per user or room But if any user joins a large room with thousands of people, the server will need to keep up with all those state events. So 100s of users wouldn't be much of an issue if they're mostly in the same room.
- lannisterstark 3y agoIt's still broken for bridges when compared to synapse. Bots rarely register, and sometimes you have to manually log into the account etc. On the other hand, their dev matrix channel is very active. Props to that. Still...beta software.
- devy 3y agoHas anyone implemented Conduit with other backend services via the Matrix API? https://spec.matrix.org/latest/ https://spec.matrix.org/latest/ Any reason why it's not a good idea to integration the API with server side (aka E2E or distributed drawbacks?)
- nyanpasu64 3y agoOn the topic of Matrix, does anyone know what causes messages to sometimes decrypt the last message until a new last message is sent (and fails to decrypt), or a single message to fail to decrypt while surrounding ones work successfully?
- Arkanosis 3y agoMy understanding is still imperfect, but I'll try to provide some info: Not all messages are encrypted with the same key, so if all of your clients are not connected at the same time, and the same is true for the sender, they can't exchange their keys. When that happens, each client can only decrypt the subset of the messages for which it has the keys. Also note that clients only exchange their keys with other verified clients. If you look at the “session_id” attribute of the JSON source of the messages, you'll see that for a given session (ie. when the sender is logged in a client), all the messages are decrypted (which means you have the key for that session) or none of them are (which means you haven't received the key for that session yet).
- timokoesters 3y agoHello, I'm Timo and I started the Conduit project a few years ago. Feel free to ask some questions.
- Corsome 3y agoDo you use Conduit daily yourself? I'm wondering if it's stable for daily use.
- timokoesters 3y agoYes, I use my Conduit instance for all my development work and also host a big Discord bridge on it (for https://veloren.net https://veloren.net, which was mentioned in another comment).
- 3np 3y agoVery nice! Sounds like AppService/bridge support is on par with Synapse at this point (and maybe has been for quite a while?) - any gaps to be aware of in that department?
- timokoesters 3y agoMost bridges should just work, some require messing around a bit, also see https://news.ycombinator.com/item?id=36939480 https://news.ycombinator.com/item?id=36939480, I haven't debugged this yet. You can find some bridge documentation here: https://gitlab.com/famedly/conduit/-/blob/next/APPSERVICES.md https://gitlab.com/famedly/conduit/-/blob/next/APPSERVICES.m...
- nani8ot 3y agoI've used Conduit for about a year now with bridges and it works flawlessly. It doesn't have all features but a recent release added Spaces and end-to-bridge encryption (not as big of a deal when selfhosting server + bridges, but great nonetheless), so I'm not even sure what is still missing.
- 3y ago
- blacklight 3y agoI have tried Conduit in a small test installation, I liked what I saw, and I keep following its developments. However, I also spent a lot of time configuring my Synapse server with tons of bridges, so even though I totally get the need for more "lightweight servers" (especially in order to break the Synapse de facto monopoly on Matrix implementations), I'm unlikely to use it as a primary driver unless some killer feature (like native Fediverse integration, at least via Fedi authentication) is implemented.
- libraryatnight 3y agoSynapse is kind of a pain, I think I'll give this a shot.
- mgaunard 3y agoHow does it compare to a simple IRC server?
- rkagerer 3y agoAre there any accessible deep-dives on Matrix speaking to how trustworthy / effective the privacy claims are, reliability of the code, etc?
- parski 3y agoI use Conduit with Element clients and from time to time I will have problems decrypting messages. Sometimed they'll stay unencrypted for a week. I only talk to people in a room on the official matrix.org server. They're all registered there. Does anyone else get that issue ever?
- Arkanosis 3y agoMy (imperfect) understanding is that this is because of how end-to-end encryption works: you not only need to receive the messages (which are stored on the server, so you don't have to worry about them as you can retrieve them when you want), but also the keys to decrypt these messages (which are only stored on the clients, so whether or not they are available depends on you). Possibly, one of your clients has the keys needed to decrypt one of the messages, but you're using another client which doesn't. Things go back to normal when both are connected at the same time and can share the keys, or when the client of the sender is connected and still has the keys. If you don't keep your clients connected all the time, you can use a secure backup on the server, so the clients can retrieve the encrypted keys from the server and decrypt them locally. Not having the keys happens more often if one the parties uses short-lived sessions (like logging exclusively in a private browser window, for example). This article helped me with understanding a little: https://gerstner.it/2021/02/matrix-and-e2e-encryption-or-how-not-to-lose-your-messages/ https://gerstner.it/2021/02/matrix-and-e2e-encryption-or-how...
- matrixlan 3y agoDoes this work over LAN? I have never managed to self-host a Matrix server for my home because they all demand a domain name like matrix.something.com. I can't use a local address like 192.168.1.100.
- derealized 3y agoSupposedly it needs some name (any name) for the userID so I don't think so. You can add a domain that points to your internal IPs though.
- syntaxing 3y agoI have a local only synapse instance with some bridges. You can use a local domain (server hostname.localdomain) and it works. Caveat is that using element with your browser does not work. Element desktop app and phone app works fine though.
- robobro 3y agoOne thing I didn't like about Matrix: I had a single server with 3 or 4 other users. In a few months, the database ballooned to, like, 80GB. User-uploaded content, including text, was in the ballpark of 2 or 3GB. Is there any way to clear out the cache of data received from old servers, say, anything more than 2 weeks old, and re-retrieve it if needed?
- COGlory 3y agoYes, it's room/concersation states taking up all the space, and you can compress them. https://levans.fr/shrink-synapse-database.html https://levans.fr/shrink-synapse-database.html https://github.com/matrix-org/rust-synapse-compress-state https://github.com/matrix-org/rust-synapse-compress-state
- lightedman 3y agoThat it generates that much cruft for something so simple is disappointing. How long does the compression bandaid work for?
- COGlory 3y agoFrom the first link: >I shrunk my homeserver database from 100GB to a little under 8GB, during a long maintenance cleanup. I run the compressor on a cron job. I've been running for 5 years with ~ a dozen people on my server, all federated, in multiple large rooms, didn't run into space issues until this year. On Linode $10 and then Hetzner 4 CPU. One thing to watch out for: disable registration. Otherwise spambots will register accounts, join the largest matrix.org rooms to spam, and then you'll have to store all that crap for all those rooms.
- jeltz 3y agoI feel registration is something which should come disabled by default and need to be explicitly enabled.
- 3y ago
- rjvs 3y agoHow does this relate to Synapse? Dendrite tests against https://github.com/matrix-org/sytest https://github.com/matrix-org/sytest and has issues for “are we synapse yet” — I can’t see any discussion of this for Conduit (not even a discussion on why they don’t want to be like Synapse).
- CameronNemo 3y agoLooks like SyTest is primarily oriented towards use with Synapse, and the dendrite folks are wrapping it up for their own CI integration. Perhaps Conduit could reuse some of their work, although IIRC Conduit is using GitLab and Dendrite is using GitHub Actions. Separately, it seems that Conduit is not orienting itself as a drop in replacement for Synapse. At least at the current moment. There are a number of notable feature gaps that I recall being mentioned last time I was in the Matrix room.
- Arathorn 3y agoSytest is designed to test any Matrix server. The only reason it’s called Sytest is because that Matrix was briefly originally called Synapse (before we came up with the much better name Matrix, and chose to keep Synapse around for the first implementation).
- TheCycoONE 3y agoConduit is a 3rd party implementation of the matrix server spec in Rust. Synapse and Dendrite are both first party where Dendrite was originally intended to replace Synapse. The selling features are lightweight and simple to setup, implying that Synapse is not. It is more importantly a validation of the matrix server specs and over the years they have done quite a bit to get ambiguities clarified.
- wkat4242 3y agoOriginally intended? So dendrite is not slated to replace synapse anymore? I know the 'eventually' has become a bit of a running joke but I thought this was still the plan. It's a shame there's no upgrade path though. With retention of history.
- est 3y agohow does it compare to Zulip?
- dsr_ 3y agoZulip isn't a Matrix server. Zulip doesn't federate. If you want a private, non-federated chat server -- for your organization, basically -- Zulip is awesome. If you want federated chat, Zulip doesn't do that.
- somenewaccount1 3y agoSince every matrix server requires you create its own user id, I never understood the benefit of being federated.
- CameronNemo 3y agoHN needs a federation megathread. It gets widely debated every other week lol. Anytime Mastodon, Email, Matrix, or XMPP get brought up, the old culture war gets revived.
- vkbjlnjknbj 3y agoit works the same way email does. you can use a mozilla.com user id to talk to someone with a matrix.org user id, or a kde.org user id all servers are equal participants in rooms, so a room doesn't live on a specific server aside from servers being able to create friendly names pointing to them, but nothing stops #foo:kde.org from pointing to the exact same room as #bar:mozilla.org -- both servers are participating equally and have their own shortcut name to the room
- jazzyjackson 3y agoI can federate message across hosts, fine, but I can't move my username to another host, so it doesn't work like email, because with email the namespace is defined at the DNS level, and I just forward requests to whatever email host I want to use. Being able to leave one server and join another while maintaining an identity (say, a public key for instance) is on Matrix's to do list, they haven't decided how to do it yet afaik.
- gbraad 3y agoI might have missed something, but the page is very simplistic and assumes you know what Matrix is and how to use this; a lot of time is spent on the installation through different means, but none how to use the server itself, either by use of a client?
- Freie_Messenger 3y ago> ...assumes you know what Matrix is ... Matrix is a chat protocol. It works like chatting over GIT (distributed databases) and is more like a team messenger like Mattermost or Zulip. Conduit is a server software and not for end users. More information about Matrix: https://www.freie-messenger.de/en/matrix https://www.freie-messenger.de/en/matrix
- kitkat_new 3y ago> and is more like a team messenger like Mattermost or Zulip. if at all, Element is this. Matrix doesn't really care about what type of users the clients target
- gbraad 3y agoAnd that is my point. While I use Matrix, it is confusing by itself as you need the client, which was hosted as riot.im, now element, etc. For a newcomer this page is just as confusing whle it could be a great entry as it being so lightweight compared to the actual Matrix server. Some additional notes will help a lot.
- CameronNemo 3y agoI also lost contact with a Matrix user during the riot.im -> element.io switch, so I empathize. But I think the flexibility and interoperability of Matrix is worth the additional complexity. Allowing different clients can be a major boon to accessibility, as blind or sight impaired users can use their own specialized client. Not to mention adapting to device form factor. Traditional workstation, tablet, phone all have different needs.
- shortrounddev2 3y agoWhen I tried Matrix I found a lot of super right wing tech people using it. The main reason I could ascertain most of them were using Matrix was because they had been banned by other chat platforms for their opinions
- erinnh 3y agoI use it regularly. There probably are those communities you are talking about, but I haven’t personally seen them, so my advice would be to ignore them and join those that more align with what you’d like to see. I’ve found many nice and welcoming communities on matrix.
- freeopinion 3y agoI've heard a lot of super right wing tech people also use email, cell phones, Twitter, and TikTok. I heard some of them drive Fords, too.
- panick21_ 3y agoLike Mozilla and GNOME. And the left wing CCC. They were all banned everywhere.
- DoItToMe81 3y agoI have never at any point encountered "super right wing" people on any main Matrix server. I've seen a lot of the opposite, to the point where it seemed administration was unfairly strict on people they considered part of them, while letting the other side run rampant. I somehow doubt this. The only time I've encountered anything of this description is when I was looking into why a server had been defederated, and then found out it was mostly neo nazis and weirdos obsessed with anime children. I had to actively seek them out to discover this.
- camdenlock 3y agoThat says more about those “other chat platforms” than anything else.
- deleted 3y ago[deleted]
- ruslan 3y agoCan someone please explain, why use Matrix while there's XMPP ?
- pmlnr 3y agoPreference, I guess. It appeals to the masses who are growing up on discord and slack. I also prefer XMPP.
- soulmerge 3y agoFor me it's about federation. I have my own server and chat with my family there. And I also have friends with accounts elsewhere and I can message them as well. And I'm looking forward to integrations (Slack, Signal, ...) being more user-friendly, and easier to install, configure and maintain, so I can message others, too.
- CameronNemo 3y agoXMPP is federated and has some integrations (among them, SMS/MMS and phone call support).
- pkulak 3y agoMatrix is more like a state synchronization service than a way to send messages. If I join a room on another Matrix server, my server will begin maintaining a copy of that other sever for me to use how I like. If I shut my server down for a day, it will sync back up when it comes back. I’m not sure if XMPP works like that, but I always thought it was more like email: send a message, maybe retry a bit, but that’s about it. Not sure how transient things like presence, read receipts, and typing notifications work either, across servers.
- Freie_Messenger 3y agoMatrix is like chatting via GIT (distributed databases) and tends to be a team messenger like Mattermost or Zulip - XMPP is structurally like email (but with options like online status, currently typing, last online, ...) and is often used by large messenger services (e.g. WhatsApp uses its own variant of XMPP). XMPP is the only system that can and may(!) be used wherever email is in use. XMPP is just as "modern" as Matrix, but has a _different _ data storage/distribution idea. Comparison: https://www.freie-messenger.de/en/systemvergleich/xmpp-matrix/ https://www.freie-messenger.de/en/systemvergleich/xmpp-matri...