Fractal - der Matrix Client für GNOME erfindet sich neu

Mo, 26. April 2021, Ralf Hersel

Fractal ist eine in Rust geschriebene Matrix-Messaging-App für den GNOME-Desktop. Die Oberfläche ist für die Zusammenarbeit in grossen Gruppen optimiert. Die Anwendung läuft zwar, ist jedoch weit entfernt von einer funktionalen Vollständigkeit. Deshalb wurde die Initiative 'Fractal-next' gestartet. Ziel ist es, diesen Matrix-Client mit allen Funktionen auszustatten und ein wiederverwendbares Framework zu schaffen, auf dem andere Matrix-Clients aufsetzen können.

Zu der Initiative schreibt das Team:

Wir arbeiten daran, Fractal von Grund auf neu zu schreiben, indem wir GTK4 und das Matrix-Rust-SDK verwenden. Dieser Aufwand wird fractal-next genannt.

Wir haben in der Vergangenheit schon mehrmals darüber gesprochen, die Anwendung neu zu schreiben, aber aus verschiedenen Gründen haben wir es nicht getan. Jetzt, wo das matrix-rust-sdk existiert, das einen Grossteil der Arbeit für uns erledigt, haben wir einen guten Ausgangspunkt, um Fractal zu bauen, ohne jede einzelne Funktion der Matrix-API implementieren zu müssen. Schliesslich müssten wir mit der Veröffentlichung von GTK4 ohnehin den grössten Teil des Codes von Fractal überarbeiten. Daher macht es einfach Sinn, von vorne anzufangen und Fractal mit allen Features (z.B. Ende-zu-Ende-Verschlüsselung) zu bauen, die wir im Sinn haben.

Der wichtigste Meilenstein, den das Team zu erreichen versucht, ist die Unterstützung aller Funktionen, die das aktuelle Fractal hat, sodass man von Fractal auf Fractal-next als Hauptcodebasis umsteigen kann. Im Einzelnen müssen die folgenden Features implementiert werden:

  • Basisfunktionalität: Fractal-next erlaubt es einem Benutzer, sich in seinen Account einzuloggen und Räume und die Raumhistorie einzusehen.
  • Raum-Details: Der Benutzer kann Raumeinstellungen (Sichtbarkeit des Raums, Rollen und Berechtigungen usw.) anzeigen und ändern und Raummitglieder anzeigen.
  • Raumverwaltung: Der Benutzer kann Räume erstellen, ihnen beitreten und sie verlassen.
  • Raumkategorien: Der Benutzer kann Räume in verschiedene Kategorien einteilen.
  • Raum-Historiensuche: Der Benutzer kann die Raumhistorie durchsuchen.
  • Benachrichtigungseinstellungen: Der Benutzer kann globale Benachrichtigungseinstellungen und Benachrichtigungseinstellungen pro Raum festlegen.
  • Kontoeinstellungen: Der Benutzer kann sein eigenes Profil anzeigen und ändern und angemeldete Geräte verwalten.
  • Unterstützung verschiedener Nachrichtentypen: Der Raumverlauf zeigt verschiedene Nachrichtentypen an, z. B. Emotes, Sticker, Bilder, Videos.
  • Ende-zu-Ende-Verschlüsselung: Fractal-next kann Verschlüsselungsschlüssel verwalten und verschlüsselte Nachrichten lesen/schreiben.
  • Raum-Suche: Der Benutzer kann nach öffentlichen Räumen suchen und ihnen beitreten.
  • Benachrichtigungs-Viewer: Fractal-next hat einen Viewer für alle wichtigen Benachrichtigungen, die in einem Bereich gesammelt werden.
  • Multi-Account-Unterstützung: Es werden mehrere Matrix-Konten unterstützt.
  • Drittanbieter-Kennungen: Der Benutzer kann sich über E-Mail-Adresse oder Telefonnummer anmelden.

Wer Fractal heute schon ausprobieren möchte, kann die Anwendung als Flatpak installieren. Hier gibt es einen ausführlichen Bericht über die Hintergründe.

Quellen:

https://gitlab.gnome.org/GNOME/fractal/

https://blogs.gnome.org/jsparber/2021/04/23/getting-fractal-up-to-speed/