Skip to content

Set up own Matrix Homeserver for F-Droid related stuff

With the time, Matrix became kind-of the second half-official way to talk about F-Droid. While in the past, IRC was and still today is mainly used for this, the good thing about Matrix is that one can bridge a Matrix chat to an IRC chat.

For a long time, the bridge's rooms (e.g. #freenode_#fdroid:matrix.org) were used, but as Matrix became more and more popular for this, the community decided to move to easier to remind and more officially looking room aliases. Sadly, someone hoarded a lot of room aliases, including #fdroid and #f-droid. We now went with #fdroid-official:matrix.org and could maybe ask matrix.org's admins to give us the firstly mentioned aliases, but we might should go the decentralized way.

If we had a Matrix Homeserver running at f-droid.org, nobody except F-Droid team members with respecting privileges could handle room aliases on this domain. We could then create rooms for #fdroid and #fdroid-dev there, link them to the respecting IRC channels and give them official room aliases, e.g. #fdroid:f-droid.org. Also, core members of F-Droid could create user accounts there and would not have to sign up at the flagship instance on matrix.org.

Coming to the technical part. To date, there's only one mature Matrix Homeserver called Synapse. It's pretty easy to set up on Debian using their package repo. A homeserver has one federation port, being 8448 by default, for server to server communication and a client port, being 443 by default, for server to client communication.

I think our goal is having IDs for the domain f-droid.org. For this, synapse does not have to run on the same machine like the website, but with help of SRV records it can run on any other machine under a different domain:

_matrix._tcp.f-droid.org. 3600    IN      SRV     10 0 8448 synapse.f-droid.org.

I'm running my own homeserver for quite some time now and think I could run another beside the forum I'm already administrating. The only thing we have to decide now as the F-Droid community:

  • Do we want to run our own Matrix Homeserver?
  • Where do we want to run it?

Compared to a XMPP server, synapse is using quite some more resources, but I think the forum machine should still be able to handle it. @eighthave What do you think about using that machine?

Ping @Bubu @Matrixcoffee

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information