Matrix Live

Dept of Status of Matrix 🌑️

Josh Simmons announces

Have you seen the Stack Overflow Developer Survey results for 2023?!

Of the 83,830 folks surveyed, Matrix was the #1 chat tool in terms of current users' satisfaction. It was also rated as the most desirable among the open source tools with open governance, but there is a lot of room for improvement in awareness. We’re excited to build on this 2024! πŸš€

Dept of Bridges πŸŒ‰

EmΔ«lija announces

Matrix-Zulip bridge

I have made a bridge for Zulip.

It can:

  • Send text messages
  • Use Matrix puppeting
  • Translate between Zulip topics and Matrix threads
  • Bridge multiple organizations and streams
  • Bridge all topics from a stream to a single room

More details on GitHub

Dept of Clients πŸ“±

SchildiChat (website)

SchildiChat is a fork of Element that focuses on UI changes such as message bubbles and a unified chat list for both direct messages and groups, which is a more familiar approach to users of other popular instant messengers.

SpiritCroc says

It's been a while since I last posted here, so it's about time I tell you more about the current state of SchildiChat for Android!

Last year was rather eventless when it comes to new features. Since Element switched to maintenance mode for our upstream codebase, it didn't make much sense to keep developing new features for it, since we'll want to benefit from Element X's performance improvements and the advantages of using Jetpack Compose as UI toolkit as well. On the other hand, for most of last year, Element X didn't feature enough basic functionality to start tweaking it to our likes.

This situation has changed towards the end of last year, and work has started on SchildiChat Next, a SchildiChat fork of Element X for Android. It's still very much work-in-progress (it even still welcomes you to "Element" during onboarding) and misses lots of our original features found in the old codebase. Not all of these features will come back, but we may add some new ones in return. Like usually, we focus on whatever makes sense to us and that we wished that Element had that's in our scope to implement.

Now, since everybody will ask anyway what changes exactly we make, I'll try to maintain an updated list here. Some highlights of what has been done so far, apart from some mandatory theme and design changes to better match our taste:

  • Floating date header while scrolling messages
  • Sort room list by unread rooms first
  • Render media captions in accordance to MSC2530
  • Render server-reported unread counts, including support for MSC2654 (if both your homeserver and your sliding-sync proxy support this MSC)

Furthermore, I'm currently working on filtering the room list by spaces, since this feature has become a must-have for me, but upstream space support is not expected to land soon. I already added some basic implementation for hierarchical space filtering as experimental feature in current test builds. However, there's still work remaining, like properly reporting the filtered room list to the sliding window for sliding sync, respecting the user-chosen space sort order, and fixing remaining bugs.

If you already want to try out SchildiChat Next before it's ready for a stable release, it's currently available in my F-Droid testing repository. For discussion, you can visit our matrix room at #android:schildi.chat .

Fractal (website)

Matrix messaging app for GNOME written in Rust.

KΓ©vin Commaille says

Fractal 6 is up and ready!

That's right, barely 2 months after Fractal 5, we feel there have been enough improvements to grant a new stable release. You have probably noticed that we have adopted a version scheme similar to GNOME and will bump the major version with each new release.

The list of goodies:

  • Fractal can open Matrix URIs, it is even registered as a handler for the matrix scheme
  • The verification flow was rewritten, hopefully solving most verification issues
  • Room members can be kicked, banned or ignored from their profile
  • More notifications settings, global or per-room, were added
  • Times follow the format (12h or 24h) from the system settings
  • Tab auto-completion also works for mentioning public rooms, just start your query with #

It is available right now on Flathub.

This version is fully translated into 6 languages πŸ™ŒοΈ and we hope to get even more πŸ“ˆ for the next one! Head over to Damned Lies if you want to give a hand.

We would also like to thank our new and returning contributors and our upstream projects.

For our next iteration, we already have a bunch of accessibility improvements waiting, and we plan to continue improving the room settings and the moderation features. Any extra work from you 🫡️ will be highly valued!

Element X Android (website)

Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose

benoit announces

  • We have released the version 0.4.1, more details about what's new in the release notes. Will be in production next week.
  • Also working to publish the application to F-Droid, with support for push with UnifiedPush.

Dept of SDKs and Frameworks 🧰

Matrix Rust SDK

bnjbvr reports

  • Support for notifications in invited rooms has been added, thanks to zecakeh.
  • Failing to toggle a reaction will now properly report the error to the caller.
  • Many fixes and improvements in the crypto crates, notably for better Web support with indexeddb.
  • Read statuses for rooms are now properly computed client-side, giving better counts than homeservers can compute, viz. for encrypted rooms.
  • New commit and pull requests guidelines have been added to the contribution guidelines.

matrix-nio

Paarth Shah says

New release of matrix-nio! Most notable change is that some minimum dependencies have been bumped (for compatibility/security purposes), and as a result python3.12 is now fully supported and tested! Full changelog here

Trixnity (website)

Multiplatform Kotlin SDK for Matrix

Benedict reports

Trixnity v4.2.0 has been released with some polishing.

features/improvements:

  • loginWith automatically gets profile information, which makes custom login easier
  • allow gracefully stopping ongoing sync request
  • BREAKING: cleaner hierarchy of RoomMessageEventContent
  • introduced FileBasedInfo
  • ActiveVerifications as interface to allow mocking
  • don't force type in MessageBuilder extensions

Dept of Ops πŸ› 

Dendrite-Admin-Interface (website)

jjj333_p (any pronouns) announces

Dendrite-Admin-Interface is in its third release, v0.0.3, and what I consider useful to some public/group instances of Dendrite.

What this includes: Along with the evacuate user/room command previously announced, there is now a convenient reset password command as well as a deactivate user command. The deactivate user command is particularly useful as this feature does not exist natively in the Dendrite admin api, and it is able to set the user display name and profile image to something sanatized and indicative of a deactivated user for clarity--on par with industry standard chat platforms. Oh and I finally wrote up proper documentation for setting it up lol.

What is to come?

  • Media moderation - audo deletion, as well as manual deletion of users. when added to deactivate user command, this should comply with as close to a gdpr delete as we will get on the matrix platform.
  • Regex based user listing and deactivation - as per popular demand, one of the soon coming features for the interface to be able to fetch active users from the database (read only) and then perform mass actions on those, useful in situations such as spam bot attacks.

Remember to drop by our Github and throw your feature requests into an issue!

matrix-docker-ansible-deploy (website)

Matrix server setup using Ansible and Docker

Slavi announces

After an insane amount of work, which we had been procrastinating on since matrix-docker-ansible-deploy's initial migration to Traefik last year, we're finally saying goodbye to the matrix-nginx-proxy component.

This change represents a huge refactoring, not only in how services get exposed publicly (reverse-proxy-wise), but also in cross-container networking, Prometheus-metrics exposure, and other areas.

matrix-nginx-proxy has been very central to the Ansible playbook during its 7 years of life, performing at least 7 different roles and thus going against the UNIX philosophy of "doing one thing and doing it well". We're happy to have untangled that whole mess and to finally see it gone! May it rest in peace! πŸͺ¦

Dept of Bots πŸ€–

Draupnir (website)

Gnuxie πŸ’œπŸ announces

Draupnir, which is a moderation bot that Matrix communities use to collaboratively protect each other, is now licensed under the AFL-3.0 which is an OSI approved license. Previously Draupnir was licensed under the Cooperative Software License, details for the license change can be found here. Docker images are now built with Node 20, though using Draupnir with Node 18 from source is still supported and will be for the foreseeable future. Both these changes come with the release of Draupnir 1.86.0, the full details of which can be found here.

You have probably noticed that it has been three months since the last release, and this is because I have been extracting and rearchitecting the core of Draupnir (and Mjolnir) into a TypeScript library which Draupnir will depend upon in an upcoming release. This library is called the matrix-protection-suite and is being developed specifically to express Draupnir's core concepts concisely. In my view, it has become necessary to create this library because it has been very difficult to maintain or consider adding features which lay on a foundation that is limiting, and it is simpler to attempt to remedy that before addressing the bigger issues that Draupnir and Mjolnir have. Each change to Draupnir can (and often does) exacerbate or complicate existing issues, and this is mostly natural to software as it ages.

With that, you can come find us in https://matrix.to/#/#draupnir:matrix.org. I also want to thank everyone who has been providing support for others using Draupnir both within https://matrix.to/#/#draupnir:matrix.org and elsewhere.

Dept of Events and Talks πŸ—£οΈ

HarHarLinks announces

It is This Week in Matrix 2024-01-19, and that means it is only 2 more TWIMs until FOSDEM 2024!

This is a reminder that on Friday (2024-02-02) afternoon leading up to FOSDEM, the Matrix Foundation and Community will host a FOSDEM Fringe event called #fosdem2024-foundation-community-meetup:matrix.org at and with the support of Hackerspace Brussels!

Further, there will be a booth on the floor and a main track talk on Sunday morning followed by a whole afternoon of Matrix presentations in the Matrix devroom.

So, in case you haven't yet, this is your reminder to book your journey and accommodation, and meet you in Brussels!

Read Thib's blog post for all the details at https://matrix.org/blog/2024/01/matrix-presence-fosdem/.

Dept of Guides 🧭

Matrix Client Tutorial

uhoreg reports

I've completed the initial draft of the Megolm encryption section of my client tutorial. In contrast to the previous section I wrote on Megolm encryption, this section is higher-level, and shows how outbound Megolm sessions are managed and sent. Up next will be a section on properly handling m.room.encryption events, and a simple example bot that handles encryption.

Matrix Federation Stats

Aine announces

collected by MatrixRooms.info - an MRS instance by etke.cc

As of today, 8492 Matrix federateable servers have been discovered by matrixrooms.info, 2323 (27.4%) of them are publishing their rooms directory over federation. The published directories contain 167178 rooms.

How to add your server | How to remove your server

Dept of Ping

Here we reveal, rank, and applaud the homeservers with the lowest ping, as measured by pingbot, a maubot that you can host on your own server.

#ping:maunium.net

Join #ping:maunium.net to experience the fun live, and to find out how to add YOUR server to the game.

RankHostnameMedian MS
1envs.net221.5
2nerdhouse.io294
3plocki.org324
4fostered.uk348
5ilmari.org514.5
6sulian.eu543
7shema.lv752
8matrix.sp-codes.de802
9rom4nik.pl922
10herkinf.de932

#ping-no-synapse:maunium.net

Join #ping-no-synapse:maunium.net to experience the fun live, and to find out how to add YOUR server to the game.

RankHostnameMedian MS
1nerdhouse.io127.5
2dendrite.s3cr3t.me159
3matrix.its-tps.fr182
4matrix.maymundere.org219
5dendrite.matrix.org305.5
6inu.is310
7neshweb.chat324
8darkness.services531
9herkinf.de936.5
10jpeg.city1011.5

That's all I know

See you next week, and be sure to stop by #twim:matrix.org with your updates!

The Foundation needs you

The Matrix.org Foundation is a non-profit and only relies on donations to operate. Its core mission is to maintain the Matrix Specification, but it does much more than that.

It maintains the matrix.org homeserver and hosts several bridges for free. It fights for our collective rights to digital privacy and dignity.

Support us