Chum

Neue Quelle für Apps

Im Juli 2021 stellte Jolla ein neues Repository für die Verteilung von Sailfish-Anwendungen vor. Sailfishos:chum zielt darauf ab, das Community-Repository zu sein, das innerhalb des Community OBS (Open Build Server) Systems für alle Sailfish-Entwickler verfügbar ist.

Chum unterscheidet sich von OpenRepos und Jolla Store durch die Bereitstellung reproduzierbarer Builds, vom Quellcode, für alle verfügbaren SailfishOS-Versionen und alle verfügbaren Architekturen. Indem Jolla die Software in einem einzigen automatisierten Build-System sammelt, kann mit der Zusammenarbeit zwischen den Entwicklern durch gemeinsame Paketierung der erforderlichen Bibliotheken, doppelte Arbeit reduziert werden, indem diese Pakete auf dem neuesten Stand gehalten werden, und einfach Überblick über fehlende Software erhalten.

Das SailfishOS:Chum Community Repository bietet eine Sammlung von Anwendungen, Tools und Bibliotheken, die für verschiedene Hardware-Architekturen und Sailfish OS-Versionen kompiliert wurden.

Das Ziel ist es (lt. Adam Pigg), die wichtigste Software-Vertriebsplattform für Sailfish OS zu werden.

Im Gegensatz zum Software-Vertriebsmodell des Jolla Store oder OpenRepos, bei dem Binärpakete von Entwicklern hochgeladen werden, wird bei SailfishOS:Chum Software direkt aus dem Quellcode kompiliert und in RPMs verpackt, die reproduzierbar sind. Der für die Kompilierung und Paketierung verwendete Quellcode wird von den Entwicklern an OBS (Open Build Service) übermittelt, der mehrere RPM-Dateien für verschiedene Kombinationen von Hardware-Architekturen und Sailfish OS-Versionen erzeugt.

Das SailfishOS:Chum Repository befindet sich auf dem Sailfish OS OBS: https://build.sailfishos.org/project/show/sailfishos:chum

Es gibt bereits Apps für welche die neueste Version (zum Zeitpunkt der Erstellung dieses Artikels) nur via Chum in der neuesten Version verfügbar sind (z.B. Advanced Camera und PureMaps). Wobei ich mit avaRisk auch eine App gefunden habe, die im Jolla Store (Harbour) aktueller war als im Chum-Repository!

User Guide

Es gibt zwei verschiedene Möglichkeiten, das SailfishOS:Chum Repository zu nutzen:

mit der SailfishOS:Chum GUI-Anwendung
mit den üblichen Kommandozeilen-Tools für die Paketverwaltung, pkcon oder zypper

Wie installiert man die SailfishOS:Chum GUI-Anwendung?

Aktiviert unter “System → Sicherheit → Nicht vertrauenswürdige Software → Nicht vertrauenswürdige Software zulassen” in der Einstellungen-App auf Eurem Sailfish OS-Gerät. Die Client-Anwendung (GUI) für SailfishOS:Chum ist zur einfachen Installation unter chumrpm.netlify.app verfügbar und die einzelnen RPMs werden auch im SailfishOS:Chum-Repository bereitgestellt. Nach der Auswahl der Sailfish Version und der Architektur lädt man die .rpm Datei herunter, das Öffnen der Datei führt dann zum Installationsdialog.

Wie man die Konfiguration für Kommandozeilen-Tools einsetzt:

Für die Nutzung des SailfishOS:Chum-Repositorys per Kommandozeilen-Tools steht ein sailfishos-chum-Helper-RPM zur einfachen Installation unter chumrpm.netlify.app (und zusätzlich im SailfishOS:Chum-Repository selbst) zur Verfügung, das lediglich eine geeignete lokale Repository-Konfiguration für die Nutzung des SailfishOS:Chum-Repositorys bereitstellt.

Beachtet dabei, dass die Installation der SailfishOS:Chum GUI-Anwendung die gleiche lokale Repository-Konfiguration verwendet, so dass Euer Gerät bereits für die Verwendung des SailfishOS:Chum-Repository mit den üblichen Kommandozeilen-Tools für die Paketverwaltung eingerichtet ist.

Um das SailfishOS:Chum-Repository mit Kommandozeilen-Tools auf Ihrem Gerät zu nutzen, müsst Ihr…

eines der oben erwähnten Pakete sailfishos-chum oder sailfishos-chum-gui herunterladen.
installiert es mit einem Dateimanager oder als Root-Benutzer, indem Ihr pkcon install-local sailfishos-chum[-gui]-<version>.rpm oder zypper in sailfishos-chum[-gui]-<version>.rpm ausführt.
Aktualisiert den Software-Cache auf Eurem Gerät als root-Benutzer per pkcon refresh oder zypper ref.
installiert beliebige Softwarepakete aus dem SailfishOS:Chum-Repository als Root-User per pkcon install <Paketname> oder zypper in <Paketname>.

Da bei allen Softwarepaketen auf SailfishOS:Chum der Hersteller auf chum eingestellt ist, ist es einfach festzustellen, welche Pakete aus dem SailfishOS:Chum-Repository installiert sind, indem Ihr folgendes ausführt:

rpm -qa --queryformat '%{vendor}:%{name}\n' | fgrep chum

“Chum” beschreibt übrigens eine bestimmte Art des Fischfangs, die hier nachzulesen ist: https://en.wikipedia.org/wiki/Chumming


Siehe auch: Readme-Datei auf GitHub – sailfishos-chum/maind

Offene Punkte im Zusammenwirken mit OpenRepos

In einem Beitrag im Sailfish Form schrieb Rinigus, einer der beiden Hauptinitiatoren von Chum: “Von Entwicklerseite wäre es großartig, wenn Entwickler eine Anwendung/Bibliothek bei OpenRepos registrieren und irgendwie angeben könnten, dass sie von Chum unterstützt werden soll. Als Teil dieser Spezifikation würde der Entwickler den Namen des Pakets in Chum angeben (RPM-Name). Wenn es von Chum unterstützt wird, muss der Entwickler keine RPMs hochladen, aber der Rest der Registrierung bleibt gleich. Bei Paketaktualisierungen in Chum würde OpenRepos erkennen, dass das Paket aktualisiert wurde und dies in seinem Feed anzeigen.

Es bleibt also spannend wie es weitergeht!

Dit vind je misschien ook leuk...