Riot.im 1.0 Released

OK, so a week or so old now, but still, this is pretty big news. Riot.im is the cross-platform and web client for the reference implementation of Matrix, a new messaging protocol. Riot supports some cool stuff, like bridges to IRC, Slack, and Discord, end-to-end encryption, one-on-one video and audio calling (although group is through a proprietary Jitsi server) and it also looks quite good (yes it’s electron, sorry).

The mobile update hasn’t released yet, but it should within the next month or so. Synapse, the reference Matrix server is also quite easy to host, and took me about 20 minutes to get working in Docker. There’s also a Golang server in the works as well.

Overall, this is a pretty decent alternative to Discord for those that are put off by Discord’s closed ecosystem and somewhat shady business practices, including their banning of rooms over political disagreements.

It might be cool to make a L1T Matrix room.

3 Likes

What would you say are the big changes from the pre 1.0 versions?

Im looking forward to the go server implementation.

There already is, but its underused as matrix isn’t very popular here.

https://matrix.to/#/!MHgyejlVRDNQkUqUUA:matrix.org?via=matrix.org

#level1:matrix.org

Community page as well but I’ve not done anything with it https://matrix.to/#/+l1t:matrix.org

2 Likes

I’ve been looking at Matrix for quite a while but never quite understood how to make it work. I wanted to host a server on my Pi to replace Mumble but I never understood how to make it work. I know a thing or two about the terminal but I can’t figure Matrix out. Got any step by step guide I can follow?

If it’s too much offtopic I’ll delete my comment.

Thanks!

I thought jitsi was open source

Well, first and foremost, completely redesigned UI. It looks much more modern and pleasant. They also completely went over the configuration menus and rewrote them to be a lot more intuitive, so it’s easier to break into and the settings make more sense. Everything is a lot more intuitive.

The other big change was the automatic key backup. So if you’re like me and have 3 computers and a phone that you use Riot with, it can be a massive pain to constantly verify all those devices, so they added automatic key backup that uses a passphrase to encrypt and back them up to your homeserver. So that solved the problem of not being able to see messages on a new device that were previously encrypted.

That’s a shame, because it makes much more sense than Discord. Hopefully we can popularize it in light of the 1.0 release. I went ahead and joined it! Maybe we could host our own so we can use the Discord bridge.

I used the docker-compose version. It wasn’t that much trouble, but I’m also pretty used to Docker:

 #Synapse
  synapse:
    container_name: synapse
    depends_on:
      - synapse_db
    environment:
      - SYNAPSE_SERVER_NAME=chat.mywebsite.com
      - SYNAPSE_REPORT_STATS=yes
      - SYNAPSE_ENABLE_REGISTRATION=yes
      - SYNAPSE_MAX_UPLOAD_SIZE=50M
      - SYNAPSE_SMTP_HOST=smtp.mailgun.org
      - SYNAPSE_SMTP_PORT=25
      - [email protected]
      - SYNAPSE_SMTP_PASSWORD=password
      - POSTGRES_PASSWORD=password
      - POSTGRES_HOST=synapse_db
    image: docker.io/matrixdotorg/synapse:latest
    labels:
      - traefik.enable=true
      - traefik.frontend.rule=Host:mywebsite.com
      - traefik.frontend.redirect=entryPoint.https
      - traefik.port=8008
    networks:
      - traefik
      - backend
    restart: unless-stopped
    volumes:
      - /etc/dockers/matrix/synapse:/data

 #Synapse Database
  synapse_db:
    container_name: synapse_db
    environment:
      - POSTGRES_USER=user
      - POSTGRES_PASSWORD=password
      - POSTGRES_HOST=synapse_db
    image: docker.io/postgres:10-alpine
    labels:
      - traefik.enable=false
    networks:
      - backend
    restart: unless-stopped
    volumes:
      - /etc/dockers/matrix/synapse_db:/var/lib/postgresql/data

And then I’m running Traefik as a reverse proxy in front. But you could do it with nginx or HAProxy or even Apache, since Traefik isn’t the most well documented thing in the world.

There’s also this guide, but it’s not using the official image:


I can’t imagine it’d be very different though. But yeah there’s not a lot of great guides at the moment.

Yeah, you’re right. What I meant to say was that it’s not a self-hosted Jitsi implementation, it’s using some other server.

1 Like