Schlagwort: Flathub

  • Ist das die Zukunft? Fedora Silverblue im Alltagstest

    Ist das die Zukunft? Fedora Silverblue im Alltagstest

    Gestern erschien Fedora 35 offiziell. Während die neuen Features überschaubar sind, nutzte ich die Chance, mit der neuen Version ein Experiment einzugehen: Der Wechsel von der klassischen Workstation-Variante auf Fedora Silverblue. Diese Ausgabe soll laut eigener Vorstellung die Zukunft von Fedora darstellen.

    Silverblue und Kinoite

    Parallel zu Silverblue gibt es seit kurzem auch Kinoite mit dem gleichen Konzept, nur die Desktopumgebung ist dann KDE statt GNOME. Das Konzept wurde auf Linuxnews auch bereits ausführlicher erklärt: Sowohl Silverblue als auch Kinoite gehören zu den unveränderbaren (immutable) Betriebssystemen. Das erklärt sich dadurch, dass ihr Root-Dateisystem nur lesbar ist. Alle Änderungen werden außerhalb des Root-Dateisystems auf einer separaten Ebene gespeichert. Updates werden als komplettes Abbild ausgeliefert und lassen sich somit zurückrollen auf einen vorherigen Stand.

    Für Software-Installationen gibt es drei Wege, der »klassische« Weg über den Paketmanager dnf entfällt dabei allerdings. Stattdessen soll die Anwendungsinstallation bevorzugt über Flatpaks stattfinden. Entwicklerwerkzeuge lassen sich über die »Toolbox« installieren, die Container-basiert ist. Über RPM/OSTree lassen sich aber schließlich auch noch klassische RPMs installieren.

    Warum der Aufwand? Auch die neuen Versionen sollen sich anfühlen und verhalten wie eine normale Distribution, aber zugleich das Betriebssystem stabil und unveränderlich machen durch die strikte Trennung zwischen System und Anwendung. Das erinnert an die mobilen Betriebssysteme. Für die kommende Zeit möchte ich diese Zukunft ausprobieren und von meinen Erfahrungen als »klassischer« Anwender berichten.

    Instalation mit Troubleshooting

    Auch für die Installation soll gelten, dass diese wie bei einer normalem Distribution aussieht und sich so verhält. Dafür wird der klassische Installationsmanager von Fedora genutzt. Allerdings unterscheidet sich die Installation bei mir in einem wesentlichen Punkt: Sie bricht bei mir mit Fehlermeldungen ab. Der Fehler ist auf EFI-Systemen bekannt, wenn weitere Betriebssysteme installiert sind. Workarounds werden angeboten, funktionieren bei mir aber nicht wirklich. Anstelle von allzu umfangreichem Troubleshooting entschließe ich mich daher, Silverblue meine ganze Platte zu geben und mein Dualboot damit aufzulösen.

    Einrichten: Viele Flatpaks

    Silverblue wird sehr spartanisch ausgeliefert, es richtet sich schließlich gegenwärtig noch an erfahrene Nutzer. Auch der Software-Store (GNOME Software) ist zu Beginn noch recht überschaubar ausgestattet. Erstaunlich ist, dass man beim Starten zwar gefragt wird, ob man auch Flathub.org als Software-Quelle hinzufügen möchte, dies aber scheinbar nur für ausgewählte Pakete für Flathub gilt. Das ist wenig transparent, letztlich lässt sich aber auf gewohntem Wege Flathub freischalten.


    Dank Flathub steigt die Auswahl an Software auch spürbar an, bislang vermisse ich keine Anwendung. So wirklich gut gelöst ist die Softwareinstallation über GNOME Software allerdings nicht. Im Gegensatz zu Fedora 34 ist das Programm für mich immerhin praktisch nutzbar, wenngleich sich mir manche Ladevorgänge noch immer nicht erschließen. Außerdem wird etwa der Firefox mit zwei separaten Einträgen in GNOME Software gelistet und mir werden insgesamt drei Installationswege angeboten: Vorinstalliert ist ein RPM, außerdem habe ich die Möglichkeit als Flatpak über Flathub oder als Flatpak über Fedora. Die konkrete Quelle herauszufinden gelingt mal auf den ersten Blick, mal nur in den tieferen Informationen beim Durchklicken. Das ist suboptimal gelöst, vor allem die Tatsache, dass Fedora ein eigenes Flatpak-Repository pflegt, statt in Flathub einzupflegen, läuft der Idee von Flatpaks ein Stückchen zu wider.


    Grundsätzlich sind Flatpaks ein Thema für sich, da gibt es unterschiedliche, aber gleichsam legitime Meinungen. Ich persönlich habe kein Problem mit Flatpaks, nur hätte ich sie gerne aus einer zentralen Quelle, die eine gute Qualitätssicherung hat. Beides ist in meinen Augen im Augenblick nicht gegeben: Weder ist es bislang zentral auf Flathub, noch ist dort besonders transparent, ob dort eine Qualitätssicherung stattfindet. Dem kann man natürlich entgegenhalten, dass dies bei klassischen Dritt-Quellen ebenfalls nicht der Fall ist und auch in den Repositorys oft veraltete Software liegt.


    Die Verwendung der Flatpak-Applikationen funktioniert im Alltag bei mir gut. Ich habe keine Latenzen. Lediglich muss einem bewusst sein, dass Flatpaks gelegentlich Restriktionen haben, beispielsweise wenn man auf Dateien abseits des Home-Verzeichnisses zurückgreifen möchte. Diese Restriktionen wurden allerdings bewusst eingefügt und lassen sich auch umkonfigurieren bei Bedarf.

    Manipulation am System möglich, aber nervig

    Allerdings gibt es auch Pakete, die keine Flatpaks sind. So waren es bei mir die Druckertreiber, Multimedia-Codecs und tlp, da bei mir die neuen Energie-Optionen aus GNOME 41 leider nicht als Alternative reichten. Was sonst alles durch die Kommandozeile fix erledigt ist, funktioniert mit Silverblue so nicht mehr. Immerhin, ist das Paket in Paketquellen hinterlegt, so funktioniert die Installation mittels rpm-ostree install. Danach ist nur noch ein Neustart erforderlich. Die Anzahl an notwendigen Neustarts kann man auch noch erhöhen: Für Multimediacodecs müssen unter Fedora Repositorys freigeschaltet werden, die ebenfalls erst nach einem Neustart funktionieren. Anschließend wird nach der Installation noch einmal ein Neustart durchgeführt.


    Nervig wird es auch, wenn man vom Hersteller ein Paket für beispielsweise Treiber bekommt. Denn dann gilt auch hier: Abhängigkeiten installieren, Neustart, Paket installieren, Neustart.
    Sicherlich, es ist ja eben Sinn und Zweck von Silverblue, Manipulationen am System so stark wie möglich zu reduzieren. Dennoch macht es in meinem Falle die Einrichtung meines Systems erst mal deutlich langwieriger, als wenn ich schnell meine eigene Checkliste abarbeite und mit Copy & Paste altbewährte Befehle nutze.

    Die Zukunft?

    Ist das nun die Zukunft? An Fedora schätze ich eigentlich, dass ich bei jedem Release ein weitestgehend rundes Paket bekomme, welches ich schnell installieren und dann nur noch kurz einrichten muss, wenn es um das Nachrüsten von Codecs, tlp und dem Druckertreiber geht. Dieser Prozess hat jetzt erst mal länger gedauert. Und auch die gesamte Installation wurde durch bekannte Bugs gestört.


    Ist man bei den alltäglichen Aufgaben, so fühlt sich Silverblue an wie jedes andere Linux-System mit GNOME. Da bin ich bislang auf keine Probleme getroffen. Die Ansätze für ein anwenderfreundlicheres Betriebssystem sind klar erkennbar: Alte Linux-Hasen nutzen gerne die Kommandozeile und das auch vollkommen zu Recht. Allerdings wird gerne mal vergessen, dass dies wenig technikaffinen Anwendern schnell zum Verhängnis wird, weil sie bei für manch ein Programm nicht umhinkommen, das Terminal zu nutzen oder bei dem Copy & Paste aus Internetanleitungen sich das System zerschießen. Ein funktionierender Software-Store, der auf Flatpaks zurückgreift und OSTree können diese Probleme lösen. Während für diese Anwender Silverblue noch aus Kinderkrankheiten herauswachsen muss, werden bei mir die kommenden Wochen zeigen, wie praktikabel das System im Alltagseinsatz sein wird und ob ich mit der »Toolbox« etwas anzufangen weiß.

  • Flatpak 1.10 mit neuem Repository-Format

    Flatpak 1.10
    Bild: Flatpak.org

    Alex Larsson hat nach drei Beta-Versionen Flatpak 1.10 offiziell freigegeben. Wichtigste Änderung ist die Einführung eines neuen Repository-Formats, das Aktualisierungen beschleunigen und die heruntergeladene Datenmenge reduzieren soll. Das neue Format, das auch bereits in Flathub integriert ist, ermöglicht zudem die Isolierung von Metadaten basierend auf der Architektur des Prozessors, wodurch im gleichen Repository Pakete für verschiedene Architekturen besser bereitgestellt werden können.

    Flathub ist ein OSTree-Repository

    Larsson stellte das neue Format bereits im letzten Jahr im GNOME-Blog ausführlich vor. Dort erläutert er, dass Flathub sich beim Verteilen von Flatpaks auf OSTree stützt und somit praktisch ein OSTree-Repository sei. Der Kern eines OSTree-Repositorys ist die Summary-Datei, die den Inhalt des Repositorys beschreibt. Dies ist ähnlich wie die Metadaten, die apt update bei Debian herunterlädt.

    Summary verkleinert

    War diese Zusammenfassung bisher entpackt rund 6.6 MByte groß, konnte sie mit dem neuen Format in Flatpak 1.10 durch die Aufteilung auf einzelne Architekturen für x86 beispielsweise auf 2.7 MByte reduziert werden. Da diese Zusammenfassung bei jeder Flatpak-Installation heruntergeladen wird, reduziert dies insgesamt den Netzwerkverkehr. Damit wird zudem die Erweiterung um neue Architekturen vereinfacht, die jeweils die Menge der vorhandenen Apps multiplizieren. Ein neu eingeführtes inkrementelles Delta-Update tut ein Übriges.

    Weitere Verbesserungen

    Des Weiteren bringt Flatpak 1.10 Unterstützung für die GCC (GNU Compiler Collection) 11 Serie, ein neues flatpak pin Kommando zum Pinnen von Laufzeitumgebungen sowie neue APIs zur Erweiterung der Funktionalität von Flatpak. Sandboxen mit Netzwerkzugang haben jetzt Zugriff auf systemd-resolved und somit auf DNS-Lookups. Flatpak 1.10 kann während Flatpak-Updates nun auch automatisch nicht mehr unterstützte Laufzeitumgebungen deinstallieren.

  • Linux Audio-Anwendungen als Flatpak

    Foto: Alexey Ruban auf Unsplash

    Linux Audio-Anwendungen wie Ardour, Hydrogen, LMMs oder Audacity benötigen Plugins mit Instrumenten und Effekten zur Erweiterung ihrer Fähigkeiten. Diese liegen in freien Formaten wie LADSPA, DSSI und LV2 sowie als proprietäre Erweiterungen VST2 und VST3 vor. Die von Steinberg entwickelten VST2 und VST3 lassen sich dank relativ offener Implementierungen auch als Open Source in Linux nutzen.

    Probleme mit Erweiterungen

    Beim Bereitstellen von Linux Audio-Anwendungen als Flatpak erwies sich das bisher als Problem, da man nicht einfach ein Plugin als Binärdatei in ein Flatpak integrieren kann. Dem kanadischen GNOME-Entwickler Hubert Figuiere ist es gelungen, dieses Problem zu lösen.

    Wie er in seinem Blog schreibt, will er auf die technischen Hintergründe in einem separaten Beitrag eingehen. Im Ergebnis unterstützen einige Musik-Anwendungen wie Muse3, LMMS, Hydrogen, Ardour, Mixxx und Gsequencer in Form von Flatpak verpackt nun Plugins. An der Umsetzung für Audacity arbeitet Figuiere noch.

    Plugins auf Flathub verfügbar

    Eine steigende Anzahl dieser Plugins ist auch im offiziellen Flatpak-Repository Flathub zu finden. Leider ist es bisher nicht möglich, diese Erweiterungen auf der Flathub-Seite selbst oder in GNOME Software über die Suche zu finden. Hierzu hilft der Befehl $ flatpak search LinuxAudio im Terminal, der rund 25 Plugins zu Tage fördert.

    Video-Editoren und GIMP

    Auch einige Video-Editoren wie Kdenlive, Flowblade oder Shotcut unterstützen Audio-Plugins im LADSPA-Format und können nun die paketierten Erweiterungen nutzen. Das gleiche Prinzip wandte der Entwickler auch bei GIMP an, dem in der Flatpak-Version bisher ebenfalls Plugins fehlten. So lassen sich nun unter anderem Erweiterungen wie GMic, LensFun, Resynthesizer, Liquid Rescale und BIMP in der Flatpak-Version von GIMP einsetzen.

  • Alex Larsson über die Flatpak-Revolution

    Die Flatpak-Revolution
    By: Matthias ClasenCC BY-SA 4.0

     

    Flatpak 1.0 ist seit einigen Tagen als produktiv einsetzbare Version des alternativen Paketsystems verfügbar. Entwickler Alex Larsson vermutet, dass sich nach drei Jahren intensiver Entwicklung die Schlagzahl der Änderungen nun verlangsamen wird. Der Fokus soll sich jetzt mehr auf die umgebende Infrastruktur konzentrieren. Dazu gehört es unter anderem, Flathub für weiteres Wachstum zu rüsten und Flatpak 1.0 in die Distributionen zu bekommen. Darüber hinaus soll an den Laufzeitumgebungen und Portals  gearbeitet werden.

    Larssons Revolution

    Derweil hat sich Red-Hat-Mitarbeiter Larsson dazu geäußert, warum er die Entwicklung zu Flatpak überhaupt begonnen hat. Er hofft auf nichts weniger als auf eine Revolution – eine Revolution des Linux-Paketsystems, dass er als »fundamental kaputt« empfindet. App-Entwickler haben laut Larsson keine sinnvolle Möglichkeit, ihre Arbeit zeitnah an die Anwender zu verteilen.

    Entwickler ohne Kontrolle

    So müssten Entwickler theoretisch Pakete für verschiedenste Distributionen selbst zur Verfügung stellen, wenn sie die Kontrolle über die Aktualität  behalten wollen. Tun sie das nicht – was alleine zeitlich oft nicht möglich ist, ergeben sich weitere Probleme.  Nicht alle Distributionen paketieren alle Apps oder warten oft, bis die Anwendung bekannter ist, was zu einem typischen Henne-Ei-Problem für neue Apps führt. Und wenn die Anwendung dann paketiert ist, hat der Entwickler keine Kontrolle mehr über die angebotene Version und deren Updates, so Larsson.

    Maintainer in der Mitte

    Diese Entscheidungen obliegen dem Paketbetreuer der jeweiligen Distribution. Viele dieser Maintainer machen einen ganz prima Job. So war etwa Flatpak 1.0 in Debian Unstable bereits rund 12 Stunden nach Veröffentlichung verfügbar. Distributionen wie Arch Linux. KDE Neon oder KaOS bieten immer sehr aktuelle Pakete an.

    Bugreports ins Leere

    Auf der anderen Seite stehen Distributionen wie Debian Stable, wo viele Pakete bereits veraltet sind, wenn eine neue Version der Distribution veröffentlicht wird. Einerseits machen die abgehangenen Pakete einen Großteil der Stabilität von Debian aus, andererseits hat der Entwickler die dort verteilten Versionen bereits längst vergessen. Die Anwender schreiben aber im Bedarfsfall Bugreports gegen diese Versionen. Die Fehler sind dann oft längst mit neuen Versionen behoben, die der Anwender aber nicht installieren kann. Im Idealfall portiert der Maintainer die Fixes zurück in die ältere Version. Somit sind Entwickler und Endanwender getrennt, in der Mitte steht – zum Wohl oder Übel – der Maintainer.

    Entwickler am Drücker

    Hier kommen neue Paketsysteme wie Flatpak gerade recht. Sie erlauben auch bei eher unbeweglichen Distributionen die Verwendung aktueller Bibliotheken, gebündelt in verschiedenen Laufzeitumgebungen. Damit können dann auch aktuelle Software-Versionen genutzt und aktualisiert werden.  Ziel ist, dass der Upstream-Entwickler die Kontrolle über die Updates hat.

    Schulterschluss mit den Usern

    Wenn der Entwickler einen wichtigen Fehler behebt, wird im Fall von Flatpak eine neue stabile Version veröffentlicht, die die Anwender verschiedenster Distributionen sofort nutzen kann. Alle Fehler werden gegen die neueste stabile Version eingereicht, so dass sie nicht veraltet sind, und sobald der Fehlerbericht geschlossen wird, erhält der Benutzer die Korrektur. Das bedeutet, dass das Melden von Fehlern für den Benutzer greifbar Sinn macht. Diese Art von virtuosem Zyklus trägt laut Larsson dazu bei, sowohl die Entwicklungsgeschwindigkeit als auch die Softwarequalität zu verbessern.

  • Flathub-Webseite im neuen Gewand

     

    Flathub-Webseite
    Quelle: NeONBRAND auf Unsplash

     

    Vor einem halben Jahr haben wir die Flathub-Webseite als zentrale Stelle zum Sammeln von Flatpaks verschiedener Herkunft vorgestellt. Flatpak ist ein Paketformat ähnlich wie Snap bei Ubuntu, das sich unter allen Distributionen installieren lässt. Flathub dient dabei sozusagen als Flatpak-App-Store. Allerdings ließ im September das Design der Seite noch sehr zu wünschen übrig. Das hat sich nun mit einem durchgehehenden Neudesign grundlegend geändert.

    Neue Flathub-Webseite

    Das Suchen und Stöbern, das Installieren oder das Hochladen eigener Flatpaks ist dank des neuen übersichtlichen Designs wesentlich intuitiver und einfacher geworden. Eine Leiste am linken Rand der Seite unterteilt den Bestand an Apps in Kategorien. Zuoberst lädt eine Unterteilung in die Sparten Popular, New & Updated, Editor’s Choice und Editor’s Choice Games zum Entdecken ein.

    1-Klick-Installation

    Darunter lädt eine Einteilung in zehn Kategorien zum gezielteren Suchen ein. Soll festgestellt werden, ob sich eine bestimmte Anwendung bereits im Flatpak-Format im Shop findet, steht oben rechts das Suchfeld zur Verfügung. Ist eine interessante App ausgemacht, so führt ein Klick darauf zu einer ausführlichen Beschreibung des Objekts der Begierde. Ein Install-Button lädt dann zur 1-Klick-Installation ein.

    [su_slider source=“media: 4770,4771″ link=“image“ width=“700″ height=“460″ mousewheel=“no“ autoplay=“0″ speed=“0″]
    Als Voraussetzung, damit das gelingt,  muss die Flatpak-Software auf dem Rechner installiert sein. Diese ist zumindest bei Fedora, Arch, Mageia und OpenSUSE bereits vorinstalliert. Bei Debian und Ubuntu muss noch ein wenig nachgeholfen werden. Bei Debian reicht ein beherztes apt install flatpak aus. Unter Ubuntu lautet der Befehl apt install flatpak gnome-software-plugin-flatpak. Dabei wird auch gleich Unterstützung für Flatpak in der Anwendung Gnome-Software installiert. In beiden Fällen muss Flathub dem System als Quell-Repository bekannt gemacht werden. Dafür sorgt der Befehl
    flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

    Unter Ubuntu 17.10 funktioniert die Installation per Klick von der Flathub-Webseite nicht, hier kann die Anwendung GNOME-Software oder die Kommandozeile benutzt werden. So installiert etwa als User der Befehl

    flatpak install com.spotify.Client.flatpakref


    den Spotify-Client. Selbst erstellte Flatpaks können ebenfalls recht einfach auf Flathub hochgeladen werden. Hinter dem Button Publish findet sich eine ausführliche Anleitung. Nähere Informationen zum Flatpak-Paketformat bietet dieser Artikel.