F-Droid: Appstore für freie und quelloffene Apps
F-Droid ist ein Appstore für Handys mit Android-Betriebssystem, der in seiner Haupt-Paketquelle ausschließlich freie und quelloffene Software (FOSS: Free and Open Source Software bzw. FLOSS: Free/Libre and Open Source Software) anbietet, wobei die geprüften Android-Apps strenge Aufnahmekriterien erfüllen müssen. Das gemeinschaftlich betriebene Projekt wird von vielen Mitwirkenden entwickelt und gepflegt.
F-Droid gibt die Anzahl der verfügbaren Apps in ihrer Haupt-Paketquelle mit 4495 an, weitere Paketquellen, wie die microG F-Droid repo oder das Guardian Project Archive, können manuell hinzugefügt werden. Obwohl jede App FLOSS sein muss, können manche verfügbaren Apps trotzdem unerwünschte Merkmale aufweisen (dazu später mehr). Neben der Geschichte und einigen technischen Details wird im Weiteren auch auf das Auswahlverfahren und Drittanbieter-Paketquellen, wofür F-Droid keine Verantwortung übernimmt, eingegangen.
Die Geschichte von F-Droid
F-Droid-Logo
Bild: gitlab.com/fdroid
Das F-Droid-Projekt wurde 2010 vom Briten Ciaran Gultnieks gegründet. Der Quellcode der App ist ein Fork (also eine Abspaltung) von Aptoide, einem quelloffenen Marktplatz für Android-Apps. Ursprünglich wurde das Projekt von der Non-Profit-Organisation F-Droid limited betrieben, die aber 2021 ihre Geschäftstätigkeit einstellte. Seit 2012 betreibt das 2009 gegründete Guardian Project, das unter anderem mehrere Apps mit mehreren Millionen Downloads entwickelt hat, eine eigene F-Droid Paketquelle. Bekannte Apps des Guardian Projects sind Orbot, Orfox (eingestellt) und Tor Browser for Android.
Nur ein Jahr Später, 2013, sorgte das Entfernen des populären Werbeblockers AdAway aus dem Google Play Store für einen raschen Anstieg von Suchen nach und Installationen von F-Droid. Die F-Droid-App selbst ist übrigens ebenfalls nicht in Googles Appstore verfügbar, da sie Googles Konkurrent und der Play Store proprietär ist. Als vorinstallierter Standard-Appstore ist F-Droid unter anderem im Betriebssystem CalyxOS zu finden.
Vor- und Nachteile von F-Droid
Die Paketquellen von F-Droid enthalten mehrere Tausend Apps, wohingegen Google Play mehr als drei Millionen Apps anbietet. Während man also bei Google Play fast garantiert immer eine App zum gewünschten Thema findet, kann sich das bei F-Droid schwieriger gestalten. Was Kategorien angeht, so sind vor allem Banken- oder Messenger-Apps auf F-Droid kaum oder gar nicht verfügbar. Eine Suche nach den beliebtesten Messengern - WhatsApp, Threema, Signal, Telegram und Viber - brachte nur bei Telegram ein positives Ergebnis mit dem Hinweis, dass es sich um einen reinen FLOSS-Fork handelt. Weitere beliebte Apps, die bei F-Droid nicht gefunden werden können, sind beispielsweise Instagram, Snapchat, ICQ, TikTok und Facebook. Was WhatsApp und Facebook angeht werden zwar einige Ergebnisse angezeigt, dabei handelt es sich aber nicht um eine FLOSS-Version der jeweiligen Original-App, wie sie z. B. im Play Store verfügbar ist.
Auf der anderen Seite bietet F-Droid einige FLOSS-Apps, die es so nicht im Play Store gibt und für die sich eine Installation von F-Droid lohnt. Unter anderem sind das neben AdAway und F-Droid selbst die Appstores Aurora Store, Aurora Droid, Aptoide und Yalp Store (eingestellt) sowie NewPipe, WebTube (beides YouTube-Frontends) und SimpleRT (Reverse Tethering). Dazu kommen vor allem Diagnose- und System-Werkzeuge wie Magisk (root) und microG-Bestandteile. Die große Verbreitung von Android bzw. dem Google Play Store sorgt dafür, dass viele Apps nicht nur in F-Droid, sondern in beiden Appstores vorhanden sind. Ist dies für die gewünschte App der Fall, kann der Nutzer dementsprechend entscheiden, ob er lieber auf eine FLOSS-Version zurückgreift oder die Original Play-Store-Version wählt. Neben Apps, die tatsächlich ausschließlich bei F-Droid zu finden sind, ist eine FLOSS-Alternative für Play-Store-Apps durchaus zu begrüßen.
Freie und quelloffene Software
Free Software Foundation Logo
Bild: gnu.org
Sowohl die App F-Droid selbst als auch die in der F-Droid-Hauptpaketquelle verfügbaren Apps sind alle FOSS bzw. FLOSS wobei es zwischen diesen beiden feine Unterschiede gibt. Daher ist hier eine möglichst eindeutige Definition vonnöten.
Das "F" in beiden Akronymen steht für Free/Frei. Eine Software kann dann als frei bezeichnet werden, wenn dem Benutzer die vier Freiheiten gewährt werden. Diese Definition und die vier Freiheiten wurden von Richard Stallman, Gründer der Free Software Foundation (FSF) und des GNU-Projekts, formuliert und von der FSF veröffentlicht. Für die Freiheiten 1 und 3 ist ein veröffentlichter Quellcode erforderlich.
- Freiheit 0: Die Freiheit, das Programm so auszuführen wie der Nutzer es möchte, und zwar egal für welchen Zweck.
- Freiheit 1: Die Freiheit zu analysieren, wie das Programm funktioniert und es so zu verändern, dass es nach den Wünschen des Benutzers Daten verarbeitet.
- Freiheit 2: Die Freiheit, Kopien dieses Programms weiterzuverteilen und somit anderen zu helfen.
- Freiheit 3: Die Freiheit, Kopien des selbst modifizierten Programms weiterzuverteilen.
Open Source Initiative Logo
Bild: opensource.org
Das "L" in FLOSS wiederum steht für "Libre" (franz./span., auf Deutsch: frei), hat also ausschließlich die Bedeutung von frei im Sinn von Freiheit und nicht auch gleichzeitig für gratis/kostenlos, wodurch dieses Wort genauer bzw. eindeutiger ist. Freie Software muss also nicht zwangsläufig kostenlos sein, und im Umkehrschluss ist natürlich nicht jede kostenlose Software auch "frei", was die zusätzliche Benutzung von "/Libre" verdeutlichen soll. Die Kontroverse, ob nun FOSS oder FLOSS korrekter oder genauer ist, zu der sich auch Stallman äußerte, dauert bis heute an. F-Droid entschied sich für die Verwendung von FLOSS.
Zu guter Letzt bedeutet das "OSS" in beiden Akronymen Open Source Software, also quelloffene Software. Kurz gesagt bedeutet quelloffen, dass der Quelltext einer Software veröffentlicht wurde und von jedem eingesehen, geändert und genutzt werden kann. Eine genaue Definition, die heute in der Gemeinschaft allgemein anerkannt ist, veröffentlichte die Open Source Initiative (OSI), in Person von Bruce Perens, mit ihrer The Open Source Definition, die ihrerseits von den Debian Free Software Guidelines (DFSG) abgeleitet wurde.
Unerwünschte Merkmale
Apps mit unerwünschten Merkmalen
Screenshot: teltarif.de
Software, die zwar FLOSS ist, sich aber Praktiken bedient, die von einigen, den meisten oder sogar allen Nutzern unerwünscht sind, wird trotzdem - soweit realisierbar - in die Paketquelle aufgenommen. Allerdings ist diese dann eindeutig mit "Unerwünschte Merkmale" ("Anti-Features") gekennzeichnet. Diese sind: Werbung, Überwachung, proprietäre Netzwerkdienste, proprietäre Erweiterungen, proprietäre Abhängigkeiten, "NSFW" (not safe for work), kein freier Quellcode, proprietäre Güter, bekannte Schwachstellen, untauglicher Algorithmus und Quelltexte, die nicht mehr verfügbar sind.
Werbung hingegen ist nicht per se verboten. Jedoch sind die meisten Apps, die Werbung enthalten, keine freie Software, weil sie für die Werbung proprietäre Software (wie z. B. AdMob) enthalten. Dementsprechend werden diese nicht aufgenommen. Apps, die Werbung ohne proprietäre Software enthalten, sind dagegen erlaubt. In der Dokumentation von F-Droid sind weitere Details zu unerwünschten Merkmalen beschrieben.
Aufnahmekriterien für Apps
Immer wenn es um Software geht, sind auch Lizenzen zu beachten, denn sie spielen eine entscheidende Rolle. Eine Softwarelizenz ist ein Dokument, das verbindliche Richtlinien für die Nutzung und Verbreitung von Software enthält. Bei FOSS bzw. FLOSS werden Nutzungsrechte pauschal jedem Nutzer eingeräumt. Bei der Auswahl von akzeptierten Lizenzen beruft sich F-Droid auf vertrauenswürdige Organisationen und Standards wie insbesondere die DFSG, die FSF, das GNU-Projekt und die OSI. Besonders wichtige und häufig genutzte Lizenzen sind die GNU General Public License (GNU GPL), vor allem in der 2007 veröffentlichten und empfohlenen Version 3 (GNU GPLv3), und die Apache-2.0-Lizenz. Zu beachten ist hierbei, dass für verschiedene nicht funktionale Bestandteile der App - z. B. künstlerische Darstellungen - auch weniger freizügige Lizenzen akzeptabel sind, solange sie in irgendeiner Form einer Lizenz unterliegen und keine Urheberrechte verletzen.
Ebenso muss eine Software, um FLOSS zu sein, in ihrer Gesamtheit FLOSS sein, also einschließlich aller Abhängigkeiten und Bibliotheken, sowie allein mit FLOSS-Instrumenten herstellbar sein. Darüber hinaus kann F-Droid keine Apps erstellen, die Googles proprietäre "Play Services" nutzen, die proprietäre Überwachungs- bzw. Analyseinstrumente nutzen wie Crashlytics oder Firebase, die proprietäre Werbebibliotheken nutzen oder die unfreie Build-Werkzeuge benutzen wie Oracles JDK oder Ähnliches. Schließlich gibt es noch eine Reihe weiterer technischer Kriterien, die hier nur kurz zusammenfassend skizziert werden können, da sie sehr detailliert beschrieben werden. Dazu gehört eine adäquate Veröffentlichung und Pflege des Quelltexts, die Sicherheit, dass keine zusätzlichen ausführbaren Binärdateien heruntergeladen werden, eine eigene einzigartige Android-„Application ID“ der entsprechenden App und eine eigene ID von Forks dieser App, keine Verletzung von Markenzeichen, Einhaltung sämtlicher juristischer Vorgaben und das Ersetzen von Binärdatei-Abhängigkeiten (wie z. B. JAR-Dateien) durch quelltexterstellte Versionen, falls sie nicht aus vertrauenswürdigen Repositorys bezogen werden. Idealerweise sollten die Apps durch Schlagworte oder andere Methoden eindeutig gekennzeichnet werden. Eine detaillierte Auflistung samt genauen Erklärungen ist hier zu finden.
So sieht F-Droid aus
Bild: f-droid.org
Aufnahmeverfahren für Apps
Wie im vorigen Abschnitt beschrieben, gibt es strenge Aufnahmekriterien. Nun soll näher beschrieben werden, wie neue Apps in die Hauptpaketquelle aufgenommen werden, um eine Vorstellung von der Arbeitsweise von F-Droid zu erlangen. Am Anfang steht zunächst der Vorschlag, eine neue App aufzunehmen. Jeder kann neue Apps vorschlagen, nicht nur Entwickler oder Maintainer. Es gibt zwei Methoden für einen Vorschlag: Entweder werden alle notwendigen Informationen über die App an die "Submission Queue" gesendet oder es kann die gesamte Metadaten-Datei selbst geschrieben, getestet und direkt im fdroiddata Git-Repository vorgeschlagen werden. Letztere Methode (Merge-Anfrage) ist nur für Fortgeschrittene geeignet.
Bei der Submission-Queue-Methode wird ein Ticket erstellt, wie man es von einigen anderen Bereichen ebenso kennt, woraufhin dann eine Maske erscheint, in die alle notwendigen Details und Minimalbedingungen eingetragen werden. Anschließend prüft das Team von F-Droid eingehend die App und unternimmt alle weiteren Schritte, bis die App dann schließlich verfügbar ist. Diese Methode ist wegen der intensiven Prüfung die langsamere, allerdings auch die einfachere.
Bei der zweiten Methode wird eine Git-Merge-Anfrage in der Metadaten-Paketquelle der F-Droid-Anwendung (fdroiddata GitLab-Repository) ausgefüllt, wodurch eine viel schnellere Aufnahme der App möglich ist: Die Metadaten-Datei ist bereits vorhanden, sodass die Arbeitsbelastung der Prüfer bei Durchsicht der Metadaten erheblich reduziert wird. Die Einreichung einer korrekten Metadaten-Datei wird vorausgesetzt. Weiterhin sollte der Benutzer über einige spezielle Kenntnisse verfügen und der FLOSS-Bewegung gegenüber aufgeschlossen sein.
Alles in allem scheint das Projekt einiges zu bieten. Zu sämtlichen hier erwähnten Themen stehen auf der Website genügend weiterreichende und -führende Informationen in der umfangreichen Dokumentation zur Verfügung. Interessierte werden hier also unter Garantie fündig.
Meldungen zu F-Droid
-
08.07.23TestGoogle Play Alternative Neo Store im TestErste Anlaufstelle zum Download von Apps ist unter Android der Google Play Store. Open Source Apps finden sich hingegen bei F-Droid. Eine optisch attraktivere Variante ist der Neo Store. zur Meldung
-
25.12.22Smartphone-OSCalyx, Lineage & Co.: Neue Software fürs alte Android-HandySmartphones werden immer leistungsstärker. Davon profitiert man auf Strecke aber eher selten: Oft setzt veraltete oder unsichere Software dem Geräteleben ein vorzeitiges Ende. Es sei denn... zur Meldung
-
05.07.22AppstoreF-Droid: Appstore für freie und quelloffene AppsMit dem alternativen Appstore F-Droid steht Android-Benutzern ein Appstore zur Verfügung, der ausschließlich freie und quelloffene Apps (FLOSS) anbietet. Wir stellen Ihnen den Appstore kurz vor. zur Meldung
-
29.05.22Android-AlternativeCalyxOS: Ein alternatives Android-BetriebssystemDas freie und quelloffene mobile Android-Betriebssystem CalyxOS wirbt mit seinem "Privacy-by-Design"-Ansatz. Wir zeigen Ihnen, was sich dahinter verbirgt und alles weitere Wichtige über das Betriebssystem. zur Meldung