staging.inyokaproject.org

6. Mai 2021

Open Source wird vor allem von Freiwilligen entwickelt. Die vorhandene Software und das Linux-Ökosystem sind somit eine gemeinschaftliche Leistung der Community und können deshalb nicht mit proprietärer Software verglichen werden. Aber ist dem so?

Ich setze mich in diesem Blog häufig kritisch mit Open Source auseinander. Nicht weil ich es nicht gerne nutze oder mit meinem Linux-System im Großen und Ganzen unzufrieden wäre, sondern weil ich die Wohlfühlblase, in die sich Teile der Open Source Community abgesetzt haben (inklusive mancher alternativer Wahrheiten) für gefährlich halte und meine Reichweite gerne für Denkanstöße nutze.

Mit ziemlich hoher Wahrscheinlichkeit kommt bei Vergleichen immer das Argument „Das machen Freiwillige, denen kann man nichts vorschreiben und das kann man nicht vergleichen“. Doch ist dem so oder handelt es sich hierbei nicht um einen schönen Mythos, hinter dem sich Teile der Community argumentativ verschanzen.

Schaut man auf den Kernel, ist schon seit Längerem bekannt, dass hier große Firmen mit ihren Mitarbeitern den Löwenanteil der Arbeit machen. Das löste immer mal wieder Kontroversen aus. Die letzte Aufschlüsselung stammt vom Entwicklungsyzklus der Version 5.10.

GNOME hat ebenfalls vor einiger Zeit transparent gemacht, wer hier die meiste Entwicklungsarbeit leistet. Überraschung: Red Hat. Gefolgt von einigen anderen Organisationen. KDE hat die Affiliation seiner Entwickler leider nicht offen gelegt, aber durch bekannte Förderungen z. B. durch blue systems kann man vermuten, dass hier auch nicht alle ehrenamtlich unterwegs sind.

LibreOffice hat im Zuge der Auseinandersetzung um die Betitelung „Community Edition“ ebenfalls Einblicke in die Verhältnisse gewährt. 73% der Beiträge zu LibreOffice stammen von den Partnern der TDF. Bekannt dürften hier besonders Collabora, Red Hat und CIB sein.

Bei Projekten wie Oracle VirtualBox oder Mozilla Firefox steht der Finanzier ja sogar schon im Namen. Für zahllose weitere Projekte könnte man das sicherlich auch problemlos durch deklinieren.

Bei den Distributionen gilt das sowieso. Red Hats Beteiligung an Fedora ist bekannt, Ubuntu Main wird natürlich von Canonical entwickelt. Als openSUSE-Nutzer kann man im Changelog die Bedeutung der Beiträge von SUSE-Mitarbeitern sehen. Manjaro ist inzwischen eine GmbH und auch bei Debian arbeiten viele bezahlt mit.

Natürlich gibt es auch ganz viel ehrenamtliche Arbeit und die Community leistet Großartiges. Je nach Projekt macht diese Arbeit auch einen großen Anteil aus. Viele kleinere Softwareprojekte werden auch ausschließlich in der Freizeit entwickelt. Das alles soll hier nicht in Abrede gestellt werden! Das gibt es nur bei Windows oder macOS auch. Die vielen Open Source/Freeware-Programme und die Supportforen und Support-Communitys werden dort auch nicht von hauptamtlichen Mitarbeitern gemacht.

Die Freiwilligkeit vieler Einzelentwickler als Argument für mangende Qualität oder komische Entwicklungsprozesse ist somit eine eher romantische Vorstellung von Open Source-Entwicklung und sollte nicht zu exzessiv als Argument vorgeschoben werden. Es wird auch nicht besser, wenn man die Größe der Entwicklerteams proprietärer Software in der Argumentation immer maßlos überschätzt.

Der Artikel Open Source-Entwicklung – Freiwillige oder Firmen? erschien zuerst auf [Mer]Curius

5. Mai 2021

Mozilla hat Firefox 88.0.1 veröffentlicht und behebt damit mehrere Probleme der Vorgängerversion.

Download Mozilla Firefox 88.0.1

Mit dem Update auf Firefox 88.0.1 behebt Mozilla ein durch ein Update von Google Widevine verursachtes Problem, welches dafür sorgte, dass diverse Streaming-Plattformen wie Amazon Prime Video nicht länger hochauflösende Inhalte bereitstellten.

Bei der Wiedergabe von Videos auf Twitter oder auch in WebRTC-Videotelefonaten konnte es zu Darstellungsproblemen für Nutzer mancher Grafikchips von Intel der sechsten Generation kommen. Dieses Problem gehört der Vergangenheit an, ebenso wie nicht sichtbare Elemente in den Firefox-Einstellungen bei Nutzung des Hochkontrastmodus.

Außerdem wurde mit Firefox 88.0.1 eine Sicherheitslücke in Zusammenhang mit WebRender behoben.

Der Beitrag Mozilla veröffentlicht Firefox 88.0.1 erschien zuerst auf soeren-hentzschel.at.

4. Mai 2021

Linux-Anwender rühmen sich ja immer der Vielfalt, die sich auf dem Desktop bietet. Aber ist es wirklich Vielfalt oder ist es die Unfähigkeit zum Kompromiss?

Michael Kofler hat vor einigen Tagen einen Blogartikel „Fluch und Segen von Gnome“ geschrieben. In diesem zieht er die Schlussfolgerung, dass die geringen Modifikationsmöglichkeiten von GNOME letztlich zur sinnlosen Auffächerung des Ökosystems beitragen:

Natürlich kann niemand kann den Gnome-Entwicklern vorschreiben, in welche Richtung sie ihr Projekt weiterentwickeln. Aber die oft überraschenden, eigenwilligen Design-Entscheidungen irritieren nicht mich alleine. Sie führen dazu, dass Ubuntu das Gnome-40-Update vorerst nicht mitmacht, dass jetzt auch Pop!OS den Desktop neu erfinden will, dass es mit Elementary, Cinnamon, Mate sowieso schon ein Dutzend Varianten gibt, die in Wirklichkeit (fast) keiner haben will. Deren Daseinsberechtigung sich durch einige Details ergibt, die sich außerhalb des Gnome-Universums offenbar einfacher realisieren lassen als innerhalb. Die in einem sinnlosen Ausmaß Entwickler-Ressourcen binden. Die nicht fertig werden. Zu denen es schon bald keine Updates mehr geben wird.

kofler.info – Fluch und Segen von Gnome

Mich hat dieser Artikel erinnert an einen Blogartikel, den ich vor einigen Jahren über die ausufernden Auswahl an Desktopumgebungen geschrieben hatte.

Seitdem hat sich mal wieder was getan. Mit Deepin und COSCMIC sind nun zwei weitere Kandidaten dazu gekommen. Kein einziges Projekt wurde eingestellt.

DesktopumgebungVeröffentlichtEinstellung
Xfce1997 
KDE Plasma1998 
GNOME1999 
LXDE2006 
Trinity2009 
RazorQt20102013
MATE2011 
Cinnamon2011 
Unity20112017
Pantheon2012 
Budgie2014 
LXQt2014 
Deepin2015 
COSMIC2021 

Seit der Pandemie lieben wir ja alle Diagramme. Um also die offensichtliche Entwicklung noch etwas dramatischer darzustellen:

Linux hat bei ungefähr gleichen Nutzungszahlen und ungefähr gleichen Entwicklerzahlen (GNOME und KDE haben das jeweils transparent gemacht) also eine tendenziell wachsende Anzahl an Desktopumgebungen. Die mobilen Umgebungen wurden hier dezidiert nicht berücksichtigt.

Die von Michael Kofler thematisierte „Schuld“ von GNOME ist offensichtlich. Die meisten Desktopumgebungen sind Derivate oder Forks von GNOME und zeitlich vor allem nach der Veröffentlichung von GNOME 3 entstanden.

Man mag nun denken, dass sei eben Linux, aber eigentlich stimmt das nicht. Linux bietet bei vielen wichtigen Sachen entweder keine oder lediglich ein paar Alternativen. Beginnend beim Kernel über so wichtige Sachen wie die Verschlüsselung (LUKS) oder sogar das Initsystem (so viele Alternativen neben systemd gibt es auch nicht). Das sieht bei den Desktopprogrammen nicht groß anders aus. Es gibt 4-5 Mailclients (Evolution, Kontact, Thunderbird, Clawsmail, mutt), zwei Browser (Firefox, Chromium), eigentlich nur eine Office-Suite usw. usf.

Das Problem der ausufernden Alternativen konzentriert sich also tatsächlich vor allem auf die Desktopumgebungen. Ursächlich scheint hier wirklich der Dogmatismus zu sein, der bei Desktopumgebungen Einzug gehalten hat. Es gibt keinerlei Bereitschaft, alternative Ansätze zu integrieren, sondern Abweichler werden quasi ins Exil gedrängt.

Das ist umso absurder, als es im Grunde genommen trotzdem immer das gleiche Konzept ist. Auch GNOME hat hier das Rad nicht neu erfunden, sondern im Kern ein klassisches Fensterkonzept mit (ausgeblendetem) Symboldock vorgelegt. So wie alle anderen Umgebungen eben auch. Bei vielen anderen Umgebungen ist sogar gänzlich unklar, warum es beide geben muss (z. B. MATE und Xfce).

Viele stehen hier auf dem Standpunkt, dass so etwas kein Problem ist, weil Linux durch seine Alternativen profitiert. Bei gleichbleibender Entwicklerzahl ist es aber eine massive Ressourcenverschwendung, wenn das Rad 12 Mal erfunden wird. Es gibt bei jedem Phänomen einen Kipppunkt, bei dem sich die Vorteile in Nachteile umkehren. Bei den Desktopumgebungen ist dieser sicher erreicht. Der Punkt, an dem die Anwender durch die Anzahl an Alternativen noch profitierten ist schon lange überschritten.

Die Befürworter der Alternativen haben dabei meist ein negatives Menschenbild. Sie glauben, die Entwickler der Alternativen würden sonst gar nichts beitragen. Meiner Meinung nach ist das ein Irrtum, vor allem bezüglich des großen Kreises der Entwickler, die „nur“ zum Projekt beitragen und keine Hauptentwickler sind. Diese würden sich bei weniger Auswahl einfach für eines der anderen Projekte entscheiden.

Das Feld wird sich hier hoffentlich demnächst lichten. Die Schwierigkeiten der großen Entwickerteams von GNOME und KDE bei der Migration zu Wayland lassen erahnen, dass die meisten anderen Projekte daran scheitern könnten.

Der Artikel Linux-Desktop – Vielfalt oder Kompromissunfähigkeit? erschien zuerst auf [Mer]Curius

3. Mai 2021

Die Linux-Gemeinschaft lässt sich grob in drei Lager unterteilen. Dabei nimmt ein Lager den Extremwert „stabil wie ein Fels“ mit z.B. Debian oldstable ein, während der andere Extremwert „bleeding edge“ durch Anhänger z. B. von Arch Linux besetzt wird. Das dritte Lager besetzt die Mitte, in der sich unzählige weitere Distributionen tummeln, die mehr zu dem einen oder dem anderen Extremwert hin tendieren.

Warum das so ist und welche Distribution einen, wie ich finde, ganz interessanten Mittelweg eingeschlagen hat, möchte ich in diesem Artikel beleuchten. Bierernst bin ich dabei allerdings nicht. Die ein oder andere Ausführung ist durchaus mit einem Augenzwinkern zu verstehen. ;-)

Stabil wie ein Fels

So soll eine Linux-Distribution aus Sicht vieler Systemadministratoren sein. Gut getestet, alle Komponenten perfekt aufeinander abgestimmt und über ihren Lebenszyklus nur wenigen — am besten gar keinen — Änderungen unterworfen. Einzig Sicherheitsaktualisierungen dürfen und sollen zeitnah geliefert werden.

Distributionen, die sich diesem Paradigma unterwerfen, versprechen geringe Wartungsaufwände und sind des Sysadmins Freund. In meinen Augen dürfen Debian, RHEL, SLES, etc. dieser Kategorie zugeordnet werden.

Doch bergen diese Distributionen paradigmenbedingt auch einige Nachteile. Da Kernel und Bibliotheken meist schon etwas älter sind — manche sagen dazu steinalt, andere gut abgehangen — wird neue Hardware evtl. nicht in vollem Umfang unterstützt. Oder die mitgelieferten Bibliotheken und Laufzeitumgebungen sind schlicht zu alt, um mit aktuellen Versionen verfügbarer Software noch kompatibel zu sein.

Um den Nachteilen zu begegnen, bleibt Sysadmins häufig nichts anderes übrig, als das wohlige Heim der Distribution zu verlassen und Laufzeitumgebungen aus Upstream- oder Drittanbieter-Repos zu installieren, Software selbst zu übersetzen oder sich Container in die heilige Halle zu stellen. Die Distributionen versuchen dem zu begegnen, in dem sie unter Umständen zu Minor-Releases neuere Software-Versionen als sogenannte Rebases oder Backports nachliefern. Das dies passiert ist jedoch keineswegs garantiert und stellt im Zweifel ein Risiko für die Stabilität dar.

Wenn die Distribution dann aber doch eine neue Softwareversion ausliefert, hat der Sysadmin meist keine Wahl. Entweder er bleibt auf der alten Version und erhält voraussichtlich keinerlei Sicherheitsupdates mehr für diese oder installiert die aktuelle Version und lernt die Neuerungen lieben bzw. damit zu leben.

Bleeding Edge

Mit diesem Beinamen werden häufig Distributionen bezeichnet, welche dem Rolling-Release-Modell folgen und Software mitliefern, die sehr nah am aktuellen Stand der Upstream-Entwicklung ist (the latest and greatest). In dieser Ecke findet man z. B. Distributionen wie Arch Linux, Manjaro, Fedora Rawhide, etc. wobei diese Liste keinen Anspruch auf Vollständigkeit erhebt.

Der Betrieb dieser Distributionen ist geprägt von häufigen Updates. Die stetige Weiterentwicklung birgt das Risiko, dass auch mal etwas kaputt geht und plötzlich nicht mehr funktioniert. Doch versprechen die Distributionen meist, dass gerade durch den schnellen Entwicklungszyklus gefundene Fehler auch schnell behoben werden. Wohingegen die Nutzer stabiler Version häufig Monate, wenn nicht Jahre oder gar vergebens auf einen Bugfix warten müssen.

Blöd wird es, wenn man Software betreiben muss, die nur für eine bestimmte Version einer Laufzeitumgebung, oder bestimmter Bibliotheken freigegeben ist und unterstützt wird. Wer solche Software betreibt, sollte sich jedoch von vornherein fragen, ob er bei rollenden Releases richtig aufgehoben ist.

Dann sind da auch noch jene unter uns, die für den Betrieb auf gewisse Zertifizierungen ihrer Betriebssysteme angewiesen sind. Hier sind die Zertifizierungsverfahren häufig länger, als die Lebensspanne eines Bleeding-Edge-Release.

Das Mittelfeld

Dieses Feld ist weitgespannt. Hier tummeln sich Distributionen wie Fedora, Ubuntu sowie viele weitere. Ihnen allen unterstelle ich, dass sie den besten Kompromiss suchen, um so stabil wie möglich und so aktuell wie nötig zu sein.

So habe auch ich in der Vergangenheit auf Ubuntu LTS gesetzt, da ich es für den besten Kompromiss hielt. Leider waren unsere Entwickler mit den mitgelieferten Software-Versionen nicht lange zufrieden und ließen sich nicht bis zum nächsten Release hinhalten. Also wurden auch hier wieder {Dritanbieter,Upstream}-Repos eingebunden und die Software von dort installiert. Eine Erfahrung die ich bisher unter jeder Distribution machen durfte.

Genauso gut kenne ich den umgekehrten Fall, wo Paket XY auf gar keinen Fall aktualisiert werden darf, da sonst ein Dienst unrettbar kaputt geht. Lasst euch gesagt sein, man hat es schon nicht leicht in der Systemadministration. ;-)

Appstreams und Module

Mit RHEL 8 hat Red Hat eine interessante Neuerung eingeführt, die sog. Module im Appstream-Repository. Nun ein Listing sagt vermutlich mehr, als viele Sätze:

$ sudo dnf module list nginx php postgresql
Updating Subscription Management repositories.
Last metadata expiration check: 0:27:21 ago on Mi 21 Apr 2021 05:41:58 CEST.
Extra Packages for Enterprise Linux Modular 8 - x86_64
Name            Stream        Profiles                        Summary                                 
nginx           mainline      common                          nginx webserver                         

Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
Name            Stream        Profiles                        Summary                                 
nginx           1.14 [d]      common [d]                      nginx webserver                         
nginx           1.16          common [d]                      nginx webserver                         
nginx           1.18          common [d]                      nginx webserver                         
php             7.2 [d]       common [d], devel, minimal      PHP scripting language                  
php             7.3           common [d], devel, minimal      PHP scripting language                  
php             7.4           common [d], devel, minimal      PHP scripting language                  
postgresql      9.6           client, server [d]              PostgreSQL server and client module     
postgresql      10 [d]        client, server [d]              PostgreSQL server and client module     
postgresql      12            client, server [d]              PostgreSQL server and client module     

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

Wie ihr sehen könnt, hat man damit die Auswahl aus mehreren Versionen ein und der selben Anwendung. Das kannte ich so bisher noch nicht, ohne zusätzliche Repos einbinden zu müssen, oder mich gar mit den berüchtigten Red Hat Software Collections beschäftigen zu müssen.

Als Sysadmin habe ich damit etwas Flexibilität dazugewonnen. Ich kann z. B. eine Altlast mit NGINX 1.14, PHP 7.2 und PostgreSQL 9.6 auf einem Host und eine aktuelle Anwendung mit NGINX 1.18, PHP 7.4 und PostgreSQL 12 auf einem anderen Host betreiben, dabei aber das gleiche stabile Release RHEL 8 nutzen.

Allerdings kann man nicht zwei verschiedene Versionen von z. B. PHP oder PostgreSQL parallel auf dem gleichen Host betreiben. Wer dies wünscht, kann die entsprechenden Anwendungen lokal in Podman-Containern ausführen. Auch hier stehen Images für die verschiedenen Versionen bereit.

Red Hat verspricht, neue Versionen von Anwendungen, Sprachen und Werkzeugen auf diesem Weg verfügbar zu machen. So sind in der Beta des kommenden RHEL 8.4 zum Beispiel PostgreSQL 13, Python 3.9 und Podman 3.0.1 enthalten. Zu beachten ist jedoch, dass die jeweiligen Streams ihre eigenen Life-Cycles besitzen, die es im Auge zu behalten gilt. Hier hilft ein Blick in die offizielle Dokumentation weiter:

Fazit

Ob diese Neuerung und die damit einhergehenden Vorteile in der Praxis von Relevanz sein werden, kann ich heute noch nicht sagen. Dafür fehlt mir noch etwas Erfahrung mit diesem neuen Konzept.

Ich persönlich glaube, dass sich Application Streams und das Konzept zur Verwendung von Containern nicht gegenseitig ausschließen, sondern sinnvoll ergänzen können. In meinen Augen gelingt es Red Hat mit Appstreams, seine stabile Distribution etwas in Richtung Aktualität zu schieben, ohne dabei Stabilität aufgeben zu müssen.

2. Mai 2021

Der Kauf proprietärer Software nur für eine Lizenz ist meist ein schlechtes Geschäft. Lange Jahre der Gewöhnung an schlechten Service bei Microsoft & Co haben fast vergessen lassen, dass es zusätzlich zum Recht, ein Programm zu nutzen, auch noch guten Support geben kann.

Ich verwende SoftMaker Office meistens mit freien ODT-Formaten. Die hauseigenen SoftMaker-Formate entfallen für mich, weil ich Vendor-Lock-in so gut es geht vermeide und für den Hausgebrauch nehme ich dann lieber ODT als DOCX. Die ODT-Unterstützung bei SoftMaker ist noch relativ jung und so bin ich vor einigen Wochen in einen Fehler rein gelaufen. Bei einer Konvertierung nach DOCX trat der Fehler nicht auf, aber ich hatte keine Lust auf einen Workaround und wollte ODT nutzen.

Der Fehler war ziemlich einfach und ziemlich nervig: In einem sehr langen Textdokument (~350 Seiten) konnte ich an einer Stelle eine kursive Formatierung im Fließtext einfach nicht speichern. Nach jedem Schließen und wieder Öffnen des Dokuments sprang es zurück auf die Standardschrift und -größe.

Also schrieb ich an den Support. Nach einigen Tagen kam die Bitte um ein Beispieldokument, was ich zusandte. Der Support bestätigte mir die Reproduzierbarkeit des Problems und die interne Weiterleitung an den technischen Support. Üblicherweise enden ja solche Dialoge genau an diesem Punkt. Nicht aber bei SoftMaker. Nur 6 Tage später erhielt ich einen Hotfix per Mail und die Information, dass die Fehlerbehebung Teil des nächsten Service Packs sein würde.

Ein solch guter Support als Inklusivleistung für eine Lizenz, die mich gerade mal 99,95€ gekostet hat und in der die sehr gute Software ja auch schon enthalten war, ist einfach phänomenal.

Da kann freie Software einfach nicht mithalten. Spenden für LibreOffice bringen mir ja keine Supportvorteile und die Bezahlvarianten von Collabora richten sich an Unternehmen. Die Pseudo-Angebote für macOS im App Store sind ebenso nur versteckte Spenden. Ob ich damit also die Arbeit an der Qualität der Software, das nächste coole Feature, das die Welt nicht braucht oder eine Entwicklerkonferenz finanziere, darauf habe ich keinen Einfluss.

Solche Sachen zeigen mir immer wieder, dass es eine gute Entscheidung war, die Bughölle LibreOffice hinter sich zu lassen. Ich kann jedem, der halbwegs ernsthaft mit Office-Produkten arbeiten muss, den Wechsel auf SoftMaker nur empfehlen. Für mich war das ein Quantensprung was die Alltagstauglichkeit von Linux angeht.

Ich glaube inzwischen eher an eine Zukunft von OnlyOffice auf dem Linux-Desktop als daran, dass LibreOffice nochmal aus der Sackgasse findet, in die TDF und Collabora mit ihren widerstreitenden Interessen die Software gefahren haben.

Der Artikel SoftMaker – Ein Beispiel für guten Support erschien zuerst auf [Mer]Curius

Seit August 2018 besitze ich eine Photovoltaik-Anlage auf dem Dach. Dazu hatte ich nach einem Jahr einen Blogpost geschrieben, wo es unter anderem um das Messen vom Strom des ganzen Haushalts geht.

Nun wollte ich noch ein wenig mehr Strom im Haushalt messen, allerdings dachte ich da mehr an einzelne Geräte bzw. an einzelne Steckdosen. Wichtig war für mich auch, dass ich die Daten kontinuierlich speichern kann und so den Stromverbrauch über einen gewissen Zeitraum erfassen kann. Außerdem wollte ich selbst Herr über die Daten sein und hatte auch kein Problem etwas zu frickeln. Da ich vor einem Jahr etwa dann auf den Blogpost von Kristian Köhntopp gestoßen bin, habe ich das einfach auch ausprobiert, allerdings mit einer anderen Datenhaltung. In diesem Blogpost gehe ich nicht auf die genauen einzelnen Schritte ein. Möchte viel mehr die Möglichkeiten auflisten, falls jemand ähnliches geplant hat.

Hardware in meinem Fall:

  • Gosund SP111
  • SparkFun Serial Basic Breakout - CH340G DEV-14050
  • eine Packung diverser Jumper Kabel

Aber nun der Reihe nach. Als Hardware kommen bei mir „Gosund SP111“ als „smarte“ Steckdosen zum Einsatz. Die bekommt man im 4er-Pack für 40€ bei einem großen bekannten Händler. Mit tuya-convert bekommt man dann kabellos Tasmota auf die Geräte, womit man die Open Source Software auf die Geräte spielt und von der Herstellersoftware befreit. Leider sieht es aktuell so aus, dass sich die aktuelle Geräte sich nicht mehr mit tuya-convert flashen lassen. Stattdessen muss man die Steckdosen Aufschrauben und per FTDI Kabel an den Rechner anschließen, um dann Tasmota flashen zu können. Ich benutzte dazu den oben genannten Serial Basic Breakout. Das musste ich für zwei der vier Steckdosen auch erledigen, da tuya-convert fehlgeschlagen war. Bei den aktuell erhältlichen Gosund SP111 v2 Steckdosen lässt sich das allerdings wohl nicht mehr so einfach öffnen, ohne die Steckdose zu zerstören.

Generell war das Aufschrauben auch eher ätzend und sehr frickelig, da man an die Kontakte nicht so einfach drankommt. Eine Anleitung wie die Verkabelung aussehen kann, findet sich in diesem Blogpost.

Nach dem Flashen von Tasmota kann über die Web-Oberfläche das Gerät mit dem WLAN verbunden werden. Anschließend kann das Gerät, ebenfalls über die Web-Oberfläche, konfiguriert werden. Die genauen Konfigurationsdetails finden sich ebenfalls im Blogpost von Kristian Köhntopp.

Bei mir sieht allerdings das Software-Setup für die Datenhaltung allerdings etwas anders aus.

Software-Setup:

Wie in meinem anderen Blogpost geschrieben, läuft bei mir alles in einem Kubernetes mit k3s auf meinem Homserver. Dort läuft entsprechend auch die oben genannte Software. Wie zuvor erwähnt, geh ich nicht auf die einzelnen Konfigurationsoptionen ran. Dazu am besten die Dokumentationen der einzelnen Tools zur Rate ziehen. Letztendlich sieht es so aus, dass die Steckdosen die Daten per MQTT an den MQTT Server schicken und ich mit mqtt2prometheus die Daten entgegennehme und es für Prometheus bereitstelle. Der Prometheus Server scrapet sich dann die Daten von dem Dienst. Theoretisch kann ich die Steckdosen auch über Home-Assistant steuern, um diese etwa zeitgesteuert an- oder auszuschalten. Da ich das allerdings nicht brauche, habe ich das auch nicht konfiguriert.

Das aktuelle Setup fahre ich erst wenige Wochen. Zuvor hatte ich eigenes Scripting im Einsatz gehabt, wo ich die Daten per HTTP von den Steckdosen abgegriffen habe und in eine InfluxDB gespeichert habe. Davon bin ich abgerückt, weil ich die Handhabung von verhältnismäßig temporären Daten über Prometheus einfacher zu verwalten finde und das über MQTT eh besser lösbar ist.

Die Steckdosen kommen bei mir an vier Stellen zum Einsatz:

  • an meinem Arbeitsplatz wo der Laptop, Bildschirm und sonstige Hardware hängt
  • an meiner Netzwerkecke, wo mein Server, Switch, WLAN AP, Telefon, Router, Raspberry Pi und sonstige Hardware hängt
  • in der Küche, wo im Wesentlichen ein Fernseher und ein paar kleinere Haushaltsgeräte hängen
  • im Wohnzimmer, wo der Fernseher mit Receivern, WLAN AP und sonstige TV-Hardware hängt

Das ganze Gefrickel habe ich ja aus zwei Gründen gemacht: Ich wollte einmal ein wenig mit Hardware frickeln und mich mit mehr Tools und Protokollen auseinandersetzen. Dinge wie MQTT, Tasmota und auch ein wenig mehr mit Prometheus spielen war jedenfalls auch mal interessant. Der zweite Grund war auch den Stromverbrauch überwachen zu können.

Dabei fielen mir genau zwei interessante Dinge auf, die ich hier eingehen werde. Die ist zum einen der Stromverbrauch am Fernseher und zum anderen (vermutlich) Amoklaufende Prozesse am Server.

Zunächst zum Fernseher. Der Graph der letzten 24 Stunden sieht so aus:

Stromverbrauch im Wohnzimmer

Was fällt auf: Ja, der Fernseher läuft hier ständig, aber da bin ich nicht Schuld und das ist hier auch nicht das Thema. Spannender ist es eher zu sehen, dass der Fernseher beim Ausschalten zunächst nicht direkt in das Standby geht, sondern noch mit knapp 20W relativ viel Strom zieht, bevor es dann wirklich in den Standby geht. Die 80W in Betrieb sind übrigens im Stromsparmodus der für die meisten Fälle bei uns völlig in Ordnung ist. Vor meinen Experimenten lief es nicht im Stromsparmodus, das führte zu locker 50% höheren Stromverbrauch, die ich vorher gar nicht betrachtet hatte.

Spannend war es allerdings diese Woche den Stromverbrauch an meiner Netzwerkecke zu betrachten, wo der Hauptstromabnehmer mein Homeserver ist. Hier ist der Screenshot von den letzten 7 Tagen:

Stromverbrauch in der Netzwerkecke

Der Homeserver zieht natürlich mehr Strom, wenn es unter höherer Last läuft. Warum es da allerdings alle paar Sekunden bzw. Minuten von normal 75-80W auf 120W springt, konnte ich mir nicht erklären. Das Debuggen war auch eher nicht zufriedenstellend. Das System-Monitoring mit Prometheus zeigte keine Amoklaufende Prozesse. Die Last sah soweit normal aus. Auch ein einfaches htop zeigte keine Auffälligkeiten die für einen solchen Stromverbrauch verantwortlich sein könnten.

Einfache Lösung war dann: Reboot und schauen was passiert. Es hat geholfen. Warum? Keine Ahnung.

Wie dem auch sei: Das Rumfrickeln hatte so neben dem Experimentierfaktor so auch einen kleinen Vorteil beim Stromverbrauch, der allerdings bei mir sowieso im Wesentlichen von der Photovoltaik-Anlage gedeckt wird.

Ich gehe übrigens davon aus, dass die Strommessung nicht wirklich genau ist. Wenn ich den Stromverbrauch aller vier Steckdosen messe und es mit dem Stromverbrauch des ganzen Hauses mit den Daten des Wechselrichters vergleiche, dann liegt häufig der Stromverbrauch der vier Steckdosen über denen des ganzen Hauses, was keinen Sinn ergibt. Aber als grobe Richtlinie ist das für mich in Ordnung.

1. Mai 2021

Das openSUSE Projekt hat den Release Candidate für die nächste Minor-Version von Leap veröffentlicht. Am 02. Juni wird laut Roadmap die finale Version veröffentlicht werden. Zeit also für einen Blick auf die Änderungen.

Bei der 15.3 handelt es sich um eine Minorversion des aktuellen Hauptreleases Leap 15. Umstürzende Veränderungen sind daher nicht zu erwarten, da diese Majorversionen vorbehalten sind.

Die größte Neuerung ist sowieso für den Anwender nicht zu sehen. Zum ersten Mal basiert openSUSE Leap tatsächlich auf einer Enterprise-Basis, da man im Rahmen des Projekts „Closing the Gap“ openSUSE Leap und SUSE Linux Enterprise stärker zusammen geführt hat.

Die Neuerungen bei Leap beschränken sich daher auch primär auf die Aktualisierungen aus dem SP3 für SLE 15. Der Kernel bleibt bei Version 5.3, obwohl hier wie bei RHEL und SLE üblich massiv Änderungen eingepflegt werden, um neuere Hardware zu unterstützen. Das Gleiche gilt für Mesa, das mit Version 20.2.4 ausgeliefert wird. Das zentrale systemd wird ebenfalls deutlich von Version 234 auf Version 246 aktualisiert und auch sonst gab es hier und da moderate Aktualisierungen.

Die zentralen Desktopumgebungen GNOME und KDE Plasma bleiben bei den Versionsständen aus 15.2. Bei KDE Plasma bedeutet dies 5.18 und bei GNOME 3.34. Gleiches gilt für viele Anwendungen. Hier wird verchiedentlich diskutiert, ob Aktualisierungen nicht wünschenswert wären, aber zumindest KDE hat nach 5.18 keine neue LTS-Version von Plasma veröffentlicht. LibreOffice wird hingegen erfreulicherweise in Version 7.1 ausgeliefert.

Damit ist man deutlich zurückhaltender bei den Veränderungen als beim Sprung von 15.1 auf 15.2, wo Kernel und Desktopumgebungen jeweils deutlich aktualisiert wurden. Es erinnert an das Vorgehen bei der Veröffentlichung von 42.3, bei der man ebenfalls auf größere Änderungen verzichtete.

Ob die moderaten Versionsanhebungen so geplant war und als Muster für kommende Leap-Releasezyklen gilt oder ob das der Umstellung auf die SLE-Basis geschuldet ist, bleibt dahingestellt.

Die kommende Version openSUSE Leap 15.3 ist für bestehende Nutzer von Leap 15 eine solide Aktualisierung, die keine Probleme verursachen dürfte. Die verhältnismäßig alten Versionsstände dürften allerdings keine Umsteiger anziehen.

Die weitere Entwicklung ist noch nicht klar. Das openSUSE Projekt hat angekündigt, dass es noch weitere Veröffentlichungen der 15-Reihe geben wird. Die Leap-Serie wird so den Supportzeiten von Ubuntu LTS angenähert und bekommt insgesamt 5 Jahre Unterstützung.

Der Artikel Ausblick auf openSUSE Leap 15.3 erschien zuerst auf [Mer]Curius

29. April 2021

Android hat keine eingebaute PGP-Unterstützung und die gängigen E-Mail-Apps bieten diese ebenfalls nicht an. Abhilfe schafft eine Kombination aus FairEmail und OpenKeychain.

Meinen letzten Blogbeitrag zum Stand der E-Mail haben einige zum Anlass genommen, mir ihre Kommentare als verschlüsselte Mail zu schicken. Das war eine nette Idee, führte mich zur Erkenntnis, dass die Optik in KMail inzwischen leicht verändert ist – aber vor allem stellte ich fest, dass ich bisher mein Android gar nicht mit PGP-Unterstützung versehen hatte.

Die Vorgehensweise hat sich zum Glück in den vergangenen Jahren kaum geändert. Zentral für die OpenPGP-Unterstützung in Android ist die App OpenKeychain. Diese lässt sich beispielsweise aus dem F-Droid Store installieren.

Anschließend überträgt man seine geheimen Schlüssel auf das Smartphone. Natürlich nicht über das Internet oder irgendeine Cloud. Wer keine Lust auf Kabelstecken hat, kann es ja auch mit KDE Connect (bzw. GSConnect) machen.

In der App wählt man über den Plus-Button „Aus Datei importieren“ und navigiert dann im Dateimanager zum geheimen Schlüssel.

OpenKeychain hat als Schlüsselserver den modernen Server keys.openpgp.org hinterlegt. Sofern man seinen öffentlichen Schlüssel bereits auf diesem Server abgelegt habt, kann man über das Dreipunktmenü oben rechts und den Button „Alle Schlüssel aktualisieren“ die Daten mit dem Keyserver abgleichen.

Anschließend kann man in FairEmail die verschlüsselte E-Mail öffnen. Hierzu klickt man in der E-Mail auf das kleine graue Schloss oben rechts.

Es folgt ggf. beim ersten Mal eine Abfrage, ob FairEmail sich mit OpenKeychain verbinden darf. Nun ist noch das Passwort für den Schlüssel einzugeben und anschließend kann man die Mail lesen.

Beim Mailversand kann man über das kleine Schlosssymbol oben rechts festlegen ob eine Mail unverschlüsselt, verschlüsselt oder nur signiert verschickt werden soll. Erscheint kein „P“ neben dem Symbol ist die Mail nicht verschlüsselt.

Der Artikel OpenPGP E-Mails mit Android erschien zuerst auf [Mer]Curius

Debian wollte immer das System für alles und alle sein. Die vielen Architekturen und die umfassenden Paketquellen sind vielleicht das Alleinstellungsmerkmal dieser Distribution. Die Unfähigkeit zu Entscheidungen hat aber auch ihre Schattenseiten.

Debian ist jetzt keine Distribution, auf der mein Fokus liegt. Ich habe hier aber noch eine virtuelle Maschine mit einer ziemlich alten Installation, die ich kürzlich auf die nächste Stable-Version 11 „Bullseye“ aktualisiert habe. Da openSUSE für Tumbleweed zur Zeit den Abschluss des usrmerge ankündigt, habe ich das Thema auf dem Schirm und fragte mich, wieso mein Alt-Debian noch die klassische Struktur hat. Neue Debian-Installation hingegen den usrmerge bereits hinter sich haben. Hintergrundinformationen zum usrmerge allgemein kann man in diesem Artikel von Ferdinand Thommes nachlesen.

Die Ursache ist relativ einfach. Debian hat sich nach langwierigen Debatten zwar für den usrmerge entschieden. Allerdings konnte man sich wohl nicht gegen alle Widerstände durchsetzen und hat deshalb Bestandsnutzern die Wahl gelassen.

Die Verfahrensweise erinnert an eine andere Debian-Dauerbaustelle: systemd. Auch hier möchte die Mehrheit in eine Richtung, Upstream sowieso, aber eine Minderheit blockt und erzwingt das Festhalten an Alternativen.

Nun kann man sich denken: Alternativen sind doch toll, warum nicht Alternativen für alles anbieten? Die Pflege von Alternativen benötigt aber Ressourcen. Nun kostet Entwicklung und Bereitstellung immer Ressourcen, aber Kosten/Nutzen sollte in einem Verhältnis stehen.

Ressourcen sind bei Debian ein Problem. Der Debian-Projektleiter konstatierte vergangenes Jahr, dass über 900 Entwickler und über 200 Maintainer zu wenig seien, um Debian voranzubringen. In den Kommentaren auf LinuxNews wurde zu recht darauf verwiesen, dass eine Distribution wie Fedora mit weniger Entwicklern eine deutlich höhere Schlagzahl hinbekommt.

In der Linux-Community besteht immer noch der Irrglaube, dass alle möglichen Alternativen doch toll sind, wenn es Freiwillige anzieht, die diese bereitstellen und die sonst nirgendwo mitarbeiten müssen. Das ist meistens jedoch falsch. Alternativen fordern die gesamte Struktur. Den unvollständigen usrmerge und die Alternativen zu systemd muss jeder Maintainer bei Debian berücksichtigen, egal wie sinnvoll oder sinnlos er es findet.

Manchmal muss man alte Zöpfe abschneiden und darf sich nicht von einer lautstarken Minderheit irritieren lassen. Wie oben geschrieben: Ich habe auch noch ein Debian-System ohne usrmerge. Nicht weil ich es so wollte, sondern weil es einfach an mir und meinem System vorübergezogen ist.

Mich schrecken solche Probleme ab und sie sind ein Grund, warum Debian auf keiner physischen Hardware mehr läuft. Das Debian-Projekt beschäftigt sich meiner Meinung nach zu sehr mit der Befriedigung radikaler Minderheiten und ideologischen Grabenkämpfen als das Projekt insgesamt weiter zu bringen.

Dass KDE-Software zumindest in Teilen noch in halbwegs aktueller Version in die kommende stabile Version einziehen durfte, grenzte ja schon an ein Wunder. Viele der Applications aus KDE Gear sind aber noch Stand August 2020. Ein Problem, das nicht auf KDE beschränkt ist. Von einer wirklichen qualitativen Pflege der Software nach dem Freeze mal ganz zu schweigen. Das sind reale Probleme für Anwender und nicht die Frage ob mit systemd ein paar Graubärte nicht leben können oder der usrmerge irgendeiner Unix-Religion widerspricht.

Ich habe mich ja schon gefragt, ob Ubuntu nicht vielleicht überflüssig ist. Aber so gibt es wenigstens eine nutzbare Debian-basierte Distribution ohne übermäßigen ideologischen Ballast.

Der Artikel Debian – Verzettelt in Alternativen erschien zuerst auf [Mer]Curius

28. April 2021

Im Sommer des vergangenen Jahres hat Mozilla sein eigenes VPN-Angebot gestartet. Ab heute steht das Mozilla VPN auch für Nutzer aus Deutschland und Frankreich zur Verfügung.

Mozilla VPN startet in Deutschland und Frankreich

Im Juli 2020 ist das Mozilla VPN offiziell gestartet. Nachdem dieses Angebot bislang nur in den USA, Kanada, Großbritannien, Neuseeland, Singapur und Malaysia verfügbar war, fiel vor wenigen Stunden der Startschuss für das Mozilla VPN in Deutschland sowie Frankreich.

Jetzt Mozilla VPN nutzen

Das Mozilla VPN kostet 9,99 Euro für einen Monat. Bei Bindung für sechs Monate beträgt der Monatspreis 6,99 Euro (30 Prozent Ersparnis), bei Bindung für ein Jahr werden 4,99 Euro pro Monat fällig (50 Prozent Ersparnis). Eine Rückerstattung ist innerhalb von 30 Tagen nach dem Kauf möglich.

Mozilla VPN Preise Deutschland

Das Mozilla VPN

Für das Mozilla VPN arbeitet Mozilla mit dem schwedischen VPN-Anbieter Mullvad zusammen und verspricht neben einer sehr einfachen Bedienung eine durch das moderne und schlanke WireGuard-Protokoll schnelle Performance, Sicherheit sowie Privatsphäre: Weder werden Nutzungsdaten geloggt noch mit einer externen Analysefirma zusammengearbeitet, um Nutzungsprofile zu erstellen.

Das Mozilla VPN besteht aus über 750 Servern in mehr als 30 Ländern, hat keine Bandbreiten-Beschränkung und erlaubt die Verbindung auf bis zu fünf Geräten. Es stehen Apps für Windows 10, Apple macOS, Ubuntu, Android sowie Apple iOS zur Verfügung.

Der Beitrag Mozilla VPN in Deutschland und Frankreich gestartet erschien zuerst auf soeren-hentzschel.at.

Es gibt sie noch, die spannenden Projekte im Linux-Bereich und das nun sogar für den Desktop. Natürlich noch nicht für den Produktiveinsatz, aber über die Alpha-Phase ist man sowohl bei Silverblue, als auch bei MicroOS inzwischen hinaus.

Beide Projekte haben eigentlich die gleiche Stoßrichtung. Man überträgt moderne Container-Konzepte auf die klassische Linux-Distribution und testweise sogar auf den Desktop.

Das eigentliche System wird schreibgeschützt eingehängt und mittels Transactional Updates aktualisiert. Fedora Silverblue als Nachfolger von Fedora Atomic hat schon länger eine breites Einsatzszenario im Visier, während bei SUSE bisher vor allem Nutzer der Servervariante von openSUSE/SLE im Fokus standen. Transaktionale Updates sind hier schon länger möglich. Nun nimmt man auch hier den Desktop ins Visier.

Die Funktionsweise unterscheidet sich bei beiden Systemen im Detail. OpenSUSE arbeitet bereits seit vielen Jahren mit Btrfs als Standarddateisystem und realisiert microOS mittels Btrfs-Snapshots. Fedora Silverblue setzt dagegen auf rpm-ostree. Das grundlegende Prinzip ist aber identisch: Bei Aktualisierungen wird im Hintergrund ein neuer Snapshot des Root-Systems angelegt und mit einem Neustart in dieses System gestartet. Gibt es Probleme, kann man einfach in den letzten Zustand zurückkehren.

Anwender von macOS kennen dieses System – vermutlich unwissentlich – schon länger, da Apple diese Vorgehensweise bereits mit Catalina erfolgreich einführte.

Desktop-Anwendungen sollen dann primär als Flatpaks installiert werden. Beide Systeme lassen es zwar auch eine andere Installation zu, aber machen dies dem Anwender nicht gerade leicht. Aus diesem Grund sind beide Systeme noch nicht ganz alltagstauglich, da zwar sehr viel Software auf Flathub zur Verfügung steht, aber eben nicht alle. Besonders wenn man proprietäre Software nutzt.

Diese Systemverwaltung hat das Potenzial, die Systeme sicherer zu machen. Sowohl gegenüber Angreifern als auch gegenüber Anwendern. Außerdem würde sie das überholt Distributionssystem, das nur stabil oder rollend kennt, aufbrechen und die leidige Dauerbaustelle „Upgrade“ beenden.

Der aktuelle Entwicklungsstand ist natürlich primär für leidensfähige Enthusiasten geeignet. Es gibt gegenwärtig noch einige Ecken und Kanten. Nichtsdestotrotz beobachte ich diese Entwicklung sehr interessiert, weil es meiner Meinung nach das Potenzial hat, den Linux-Dektop weiter zu bringen. Vielleicht nicht exakt in dieser Form wie Silverblue/microOS sie aktuell anbieten, aber in einer weiterentwickelten Variante davon.

Der Artikel Fedora Silverblue / openSUSE MicroOS – Die Zukunft? erschien zuerst auf [Mer]Curius

26. April 2021

Dies ist der letzte Artikel in meiner kleinen Reihe, über meinen Ausflug ins Container-Land, zur Bereitstellung der Anwendung Kanboard.

Wie meine Reise ins Container-Land begonnen hat, kann in „Kanboard im Container…“ nachgelesen werden. Wie man einen Reverse-Proxy vor einem Pod betreibt sowie mit dem Thema Backup und Restore habe ich mich inzwischen ebenso beschäftigt. Letzteres habe ich zum Glück implementiert und getestet, bevor ich mit der Dokumentation Datenverlust erlitten habe. Damit die Anwendung nach einem Neustart automatisch startet und für ein bisschen Komfort, habe ich Systemd-Service-Units generiert. In diesem Teil geht es nun um die Aktualisierung dieser Umgebung.

Umgebung

Aktuell läuft Kanboard 1.2.18 auf einer RHEL 8 VM. Zur Ausführung sind folgende Werkzeuge und Container-Images beteiligt.

$ podman --version
podman version 2.2.1
$ podman images
REPOSITORY                              TAG      IMAGE ID      CREATED        SIZE
registry.redhat.io/rhel8/postgresql-96  latest   4ce7daa6dc1d  7 weeks ago    451 MB
docker.io/kanboard/kanboard             v1.2.18  e7ee6403944b  3 months ago   58.6 MB
k8s.gcr.io/pause                        3.2      80d28bedfe5d  14 months ago  688 kB

Um mir die Erstellung eines Pods und das Einhängen von Podman-Volumes zu erleichtern, nutze ich folgendes kleines Skript:

#!/bin/bash
podman run -d --pod new:kanboardpod --name kanboard --privileged -p 127.0.0.1:8080:80 -v kanboard_datadir:/var/www/app/data:Z -v kanboard_pluginsdir:/var/www/app/plugins:Z kanboard/kanboard:v1.2.18

podman run -d --pod kanboardpod --name pgsql_db -e POSTGRESQL_USER=<USERNAME> -e POSTGRESQL_PASSWORD=<Verrate ich nicht> -e POSTGRESQL_DATABASE=kanboard -v pgsql_dbdir:/var/lib/pgsql/data:Z rhel8/postgresql-96:1-107

Mein Pod und die drei dazugehörigen Container werden während der folgenden Schritte noch normal ausgeführt.

Die Container selbst sind dabei zustandslos. Die persistent zu speichernden Daten werden in Podman-Volumes im lokalen Dateisystem der VM abgelegt.

Vorgehensweise

Ich verzichte in diesem Fall bewusst auf podman-auto-update(1), da ich mir erstmal einen Überblick verschaffen möchte, was denn generell zu tun ist und wie die einzelnen Schritte aussehen können. Die grundsätzliche Reihenfolge für ein Update sieht dabei wie folgt aus:

  1. Aktuelle Container-Images aus einer Registry holen (podman-pull(1))
  2. Laufende Pod-Instanz stoppen und entfernen (podman-pod(1))
  3. Neue Pod-Instanz mit angepasstem Wrapper-Skript erstellen
  4. Systemd-Service-Units erneut generieren (podman-generate-systemd(1))
  5. Pod-Instanz stoppen
  6. Generierte Systemd-Service-Unit starten

An dieser Stelle möchte ich vorweg nehmen, dass es genau so einfach war, wie es sich anhört. Die neuen Container-Images habe ich mit folgenden Kommandos heruntergeladen.

$ podman pull docker.io/kanboard/kanboard:v1.2.19
Trying to pull docker.io/kanboard/kanboard:v1.2.19...
Getting image source signatures
Copying blob 0c2b98bb5f7e done
Copying blob ca3cd42a7c95 done
Copying blob e994ab432c32 done
Copying blob 7b30337f40d2 done
Copying blob f58d66ecc40b done
Copying config 2cb48121b7 done
Writing manifest to image destination
Storing signatures
2cb48121b7437ba15cd984472754b300395026c3e09e7c659b4f9b62e5b5b4dd

$ podman pull registry.redhat.io/rhel8/postgresql-96:1-127
Trying to pull registry.redhat.io/rhel8/postgresql-96:1-127...
Getting image source signatures
Copying blob 64607cc74f9c done
Copying blob 320ae7fa06a7 done
Copying blob 13897c84ca57 done
Copying blob b3b2bbe848df done
Copying config 9c6ab01c14 done
Writing manifest to image destination
Storing signatures
9c6ab01c14748f7ff79483759122cb28e0f2c8b0310e5c8d9b5af8383e91f163

$ podman images
REPOSITORY                              TAG      IMAGE ID      CREATED        SIZE
docker.io/kanboard/kanboard             v1.2.19  2cb48121b743  4 days ago     61.3 MB
registry.redhat.io/rhel8/postgresql-96  1-127    9c6ab01c1474  2 weeks ago    449 MB
registry.redhat.io/rhel8/postgresql-96  latest   4ce7daa6dc1d  7 weeks ago    451 MB
docker.io/kanboard/kanboard             v1.2.18  e7ee6403944b  3 months ago   58.6 MB
k8s.gcr.io/pause                        3.2      80d28bedfe5d  14 months ago  688 kB

Mit den folgenden Befehlen werden Informationen zum laufenden Pod angezeigt, der Service wird gestoppt und der Pod inkl. seiner Container entfernt.

$ podman pod ls
POD ID        NAME         STATUS   CREATED      INFRA ID      # OF CONTAINERS
2f3aa7d07e6e  kanboardpod  Running  4 weeks ago  34e8479a2847  3

$ systemctl --user stop pod-kanboardpod.service

$ podman pod ls
POD ID        NAME         STATUS  CREATED      INFRA ID      # OF CONTAINERS
2f3aa7d07e6e  kanboardpod  Exited  4 weeks ago  34e8479a2847  3

$ podman pod rm kanboardpod
2f3aa7d07e6eb7d4c3a0c9927dac222be52b8992f95929c12af8ce4afafd4eb1

In mein Wrapper-Skript (siehe Abschnitt Umgebung) trage ich die neuen Versionsnummern bei den entsprechenden Aufrufen ein:

#!/bin/bash
podman run -d --pod new:kanboardpod --name kanboard --privileged -p 127.0.0.1:8080:80 -v kanboard_datadir:/var/www/app/data:Z -v kanboard_pluginsdir:/var/www/app/plugins:Z kanboard/kanboard:v1.2.19

podman run -d --pod kanboardpod --name pgsql_db -e POSTGRESQL_USER=<USERNAME> -e POSTGRESQL_PASSWORD=<Verrate ich nicht> -e POSTGRESQL_DATABASE=kanboard -v pgsql_dbdir:/var/lib/pgsql/data:Z rhel8/postgresql-96:1-127

Nachdem das obige Wrapper-Skript ausgeführt wurde, prüfe ich, ob die neue Pod-Instanz läuft, erstelle die Service-Units und aktiviere diese:

$ podman pod ls
POD ID        NAME         STATUS   CREATED             INFRA ID      # OF CONTAINERS
85273ee9bb82  kanboardpod  Running  About a minute ago  82f45a722dff  3

$ podman container ls
CONTAINER ID  IMAGE                                         COMMAND         CREATED             STATUS                 PORTS                   NAMES
6becc68a9c20  registry.redhat.io/rhel8/postgresql-96:1-127  run-postgresql  About a minute ago  Up About a minute ago  127.0.0.1:8080->80/tcp  pgsql_db
82f45a722dff  k8s.gcr.io/pause:3.2                                          About a minute ago  Up About a minute ago  127.0.0.1:8080->80/tcp  85273ee9bb82-infra
e72ca46110be  docker.io/kanboard/kanboard:v1.2.19                           About a minute ago  Up About a minute ago  127.0.0.1:8080->80/tcp  kanboard

$ podman generate systemd --files --name kanboardpod
/home/bob/pod-kanboardpod.service
/home/bob/container-kanboard.service
/home/bob/container-pgsql_db.service

$ mv *.service .config/systemd/user/

$ podman pod stop kanboardpod
85273ee9bb82e49e236ae37d9320fd95af1eb186d7d965d72b9e2a270ca5cedf

$ systemctl --user daemon-reload
$ systemctl --user start pod-kanboardpod.service

Fazit

Das war einfacher als gedacht. Oder anders formuliert, es hat tatsächlich so funktioniert, wie ich es erwartet habe.

Mein kleines Wochenend-Projekt skaliert sicher nicht gut und ist als Beispiel für Produktionsumgebungen vermutlich weniger geeignet. Doch um Software als rootless-Container auszuführen und in kleinem Umfang zu testen, scheint dieser Weg durchaus geeignet zu sein.

Vielleicht schiebe ich in Zukunft noch einen Artikel unter Verwendung von podman-auto-update(1) nach.

25. April 2021

Die Distribution elementary OS gehört zu den bekannteren Linux-Varianten. Insbesondere für macOS-Umsteiger wird sie immer wieder empfohlen. Aktuell steckt das Projekt wohl fest, auch wenn sich die Entwickler ausschweigen.

Planbarkeit gehört bei Open Source längst zum guten Ton. Den Status als nerdiges Hobby-Projekt haben viele Entwickler lange hinter sich gelassen und die Anwender verlassen sich zurecht darauf. KDE, GNOME, LibreOffice, Firefox – sie alle haben fest Roadmaps für die kommenden Versionen. Das gleiche gilt für die Distributionen – selbst Debians Veröffentlichungen sind in den vergangenen Jahren planbar geworden.

Ich habe elementary OS in der Vergangenheit sehr wohlwollend begleitet und im letzten Sommer auch experimentell auf einigen Systemen in den Produktiveinsatz gebracht. Für mich ist Pantheon einfach das bessere GNOME und zusammen mit dem GNOME-Stack eigentlich ein sehr gutes Desktopsystem.

Als Sponsor des Projekts kann man bereits seit Längerem auf die Entwicklungsschnappschüsse zugreifen. Die Entwickler bitten darum, daraus keine Testberichte zu machen, was ich deshalb bisher auch nicht getan habe. Die Daily-ISOs zeigen jedoch gravierende Probleme.

Das elementary-Projekt war sich nie so richtig im klaren, wohin die Reise gehen soll, auch wenn man das jetzt ganz stringent darstellt. Angefangen mit kleinen Mods, kam eine Desktop-Umgebung, ein Ubuntu-Derivat hinzu und zuletzt einen Haufen neuer Projekte.

Mit der neuen Version elementary OS 6 wollte man nicht nur ein eigenes Flatpak-Ökosystem etablieren – und arbeitete damit konträr zur Ubuntu-Basis – sondern zusätzlich auch noch einen eigenen Installer ausrollen. Dazu kommen Kooperationen, um elementary OS direkt auf Notebooks von kleineren Herstellern auszuliefern. Spoiler: Das Flatpak-System beschränkt sich gerade auf Epiphany und der Installer funktioniert mehr schlecht als recht.

Dazu wollte man die PIM-Suite von macOS kopieren. Ein eigener Mailclient, ein eigener Kalender, eine Aufgabenverwaltung und Kontaktverwaltung. Zumindest die Aufgabenverwaltung ist nett geworden und könnte mit dem CalDAV-Backend eine Lücke im Linux-Ökosystem schließen.

Ubuntu 20.04 ist jetzt vor circa einem Jahr erschienen. Wenn elementary OS 6 jemals fertig wird, ist die Basis schon ziemlich alt. Böse Zungen schreiben da gerne „verrottet“. Die Reise geht längst in Richtung der nächsten LTS 22.04, die bereits in einem Jahr erscheinen wird. Durch viele Eigenentwicklungen trifft das elementary OS nicht komplett, aber die meisten Anwender greifen auf diese oder jene App aus den Paketquellen zurück. Eine wenig Verzögerung ist bei diesen Projekten üblich, aber elementary OS 5 folgte nach lediglich 6 Monaten auf Ubuntu 18.04.

Die Frage, ob nicht eine andere Basis sinnvoll wäre, kam durchaus aus der Community und wurde ziemlich unwirsch abgebügelt. Die Hybris scheint sich also weniger auf so nahe liegende Probleme zu erstrecken.

Das ist durchaus ein Problem, da rund um elementary ein eigenes kleines App-Ökosystem entstanden ist. Hier ist aber seit einiger Zeit offenkundig die Luft raus. Vermutlich weil viele Entwickler kein Interesse mehr haben, für eine 18.04-Basis zu entwickeln.

Elementary-Anwender sitzen also weiter auf einer 18.04-Basis, bei der große Teile des universe-Bereichs zusammen mit den offiziellen Derivaten faktisch jetzt aus dem Support gefallen sind. Die Entwickler haben jetzt einen Relaunch des Stores vorgestellt. Eine Roadmap für die Version 6 wäre schöner gewesen.

Nachtrag 01.05.2021:

Etwas zu früh gemeckert: Heute hat das elementary Team wenigstens mal eine öffentliche Beta rausgebracht. Der Weg ist dennoch noch weit. Mindestens eine weitere Beta und eine RC und aus ersten Tests sehe ich da schon noch einige Showstopper. Eine Veröffentlichung wird es vermutlich frühestens im Sommer geben.

Der Artikel elementary OS – Hybris und ihre Folgen erschien zuerst auf [Mer]Curius

Update 15.8.21:

Folgende Anleitung funktioniert nicht mehr für Firefox 91 und neuere Versionen! Wenn einem Proton also nicht gefällt, muss man dann auf eine userChrome.css zurückgreifen.

Die Option browser.proton.enabled darf nicht auf false stehen, da es ansonsten zu Darstellungsfehlern in den Einstellungen kommt.


Der originale Artikel:

So ganz warm werde ich mit dem neuen Firefox-Design Proton nicht, auch wenn ich zugeben muss, dass es sich doch deutlich verbessert habe im Vergleich zu meinen ersten Tests des Designs und es sieht gar nicht mehr so schlimm aus.

Für alle, die das neue Design nicht kennen, ein Screenshot:

Bildschirmfoto des Proton-Designs

Trotz allem kann man es in der aktuellen Firefox-89-Beta und in der Nightly-Version, die schon auf dem Stand von Firefox 90 ist, recht einfach deaktivieren.

Man öffne die allwissende Konfigurationsseite von Firefox about:config und sucht nach “proton”. Hier werden einem einige Schalter vorgeschlagen und es reicht eigentlich den Schalter browser.proton.enabled auf false zu setzen und vieles erinnert dann doch wieder an das Photon-Design (also das jetzige bis einschließlich FF-88 verwendete).

Das sieht dann so aus:

Bildschirmfoto mit deaktiviertem Proton

Leider gibt es da allerdings noch viele Sachen, die eher suboptimal aussehen, was ja auch logisch ist, weil eigentlich ist Photon ja abgeschafft. Vielleicht kann man manches auch noch mit einer userChrome.css verändern. Wenn jemand eine Lösung dazu kennt, kann er sie mir ja zukommen lassen.

Ich selber werde mal sehen, ob ich dann mit dem regulären Update auf Firefox 89 mit Proton leben werde, es deaktivieren werde oder ganz auf MyBrowse umsteigen werden.

24. April 2021

Marketing-Sprech wird immer offensiver und immer nerviger. Die „Amazing“ und „Awesome“-Orgien bei Apples PR-Events sind ja inzwischen zig mal durch den Kakao gezogen worden. Bei freier Software hat man sich das leider abgeschaut. Auch wenn man nichts Neues zu berichten hat.

Warum arbeite ich mich so oft an KDE ab? Nun erstens natürlich, weil ich es nutze und was man nutzt, das betrifft einen direkt. Wenn also irgendwas nicht funktioniert oder sich in die falsche Richtung entwickelt, dann ärgert mich das und wozu habe ich einen Blog, wenn nicht um das zu thematisieren.

Das ist aber nur ein Teil der Wahrheit. Der andere ist, dass mich der PR-Sprech, der bei KDE eingezogen ist, extrem herausfordert.

Die wöchentlichen Entwicklungsberichte von Nate Graham sind voll davon. Da werden winzige Fortschritte so beschrieben „there is a truly massive amount of them“ oder so „Keep in mind that this blog only covers the tip of the iceberg! Tons of KDE apps whose development I don’t have time to follow aren’t represented here, and I also don’t mention backend refactoring, improved test coverage, and other changes that are generally not user-facing.“ (siehe hier) oder „This week I want to highlight something big: Elisa“ (siehe hier).

Nur das Blog eines Entwicklers? Die offiziellen Ankündigungen lesen sich kaum anders. Ein neuer Launcher (mit zig Bugs) ohne funktionale Neuerungen wird so beworben: „Find, reach and run your apps faster and easier than ever with Plasma’s new app launcher.“ (siehe hier) oder „These are but a few of the apps releasing new updates today. When combined with the KDE’s powerful Plasma desktop, they provide you with most, if not all, the tools you need to be productive in a versatile and flexible Linux environment.“ (siehe hier)

Ich finde das lächerlich. Dieser PR-Sprech ist schon bei Apple lächerlich, aber dort hat man wenigstens ab und an mal echt tolle Neuheiten vorgestellt.

Rund um Ostern habe ich ein paar Kubuntu 18.04 Systeme auf 20.04 aktualisiert. Das bedeutete Sprünge bei Plasma von 5.12 auf 5.18 und bei den Applicationen (die ja nun schon wieder anders heißen) von 17.12 auf 19.12. Das sind 2 Jahre Entwicklungsarbeit.

Neuerungen im wahrnehmbaren Bereich: Es gibt ein paar neu designte Icons. Das war es dann auch schon. Im Grunde genommen tut sich bei KDE nicht viel mehr als bei MATE oder Xfce.

Das ist kein Vorwurf. O-Ton der Anwender besagter Kubuntu-Systeme. „Ein großes Upgrade und alles läuft wie immer – so soll das sein“. Zufriedene Anwender sind doch toll, was will man mehr?

Es passt halt nur nicht zum PR-Sprech. Was für ein Vokabular möchte man denn benutzen, wenn man wirklich mal was anzukündigen hat?

Der Artikel Exzessiver PR-Sprech – Nun auch bei freier Software? erschien zuerst auf [Mer]Curius

Telemetrie-Datenerhebung sind schlecht beleumundet, Benutzerstudien sind aufwendig. Doch was ist die Alternative. Sicher nicht das, was KDE so macht. Dabei waren die Zeiten, wo man den Anwendern Funktionen wegnahm, weil man es vermeintlich besser wusste doch eigentlich vorbei.

In den letzten Monaten habe ich mich immer mal wieder über die Entwicklung bei Linux ausgelassen. Nach dem Rückkehr zu Linux als primäres Desktopsystem hat es eben ordentlich geruckelt. Die letzten Monate waren aber ruhiger, weil ich für mich persönlich wieder ein Setup gefunden hatte, das funktioniert. Oder zumindest dachte ich, es würde funktionieren – bis heute.

Es gibt eigentlich nur zwei Projekte, die sich ernsthaft Gedanken über UX auf dem Desktop machen. KDE und GNOME. Die anderen Projekte wie Xfce, MATE & Co konservieren alte Bedienkonzepte und haben das deshalb nicht nötig. Die Entscheidungen der GNOME-Entwickler sind manchmal heftig kritisiert worden, aber man kann mit GNOME relativ gut arbeiten, ohne Veränderungen in den Einstellungen vorzunehmen. Aus Sicht der Entwickler ist das Ziel damit vermutlich erreicht.

KDE hat so eine Phase des Konzeptionalismus auch mal. Während der Entstehung von KDE 4 entwarf man den perfekten Desktop. Man vergaß dabei nur den Anwender. Keine Desktopicons, Aktivitäten statt Arbeitsflächen – man glaubte vieles besser zu wissen. Nur sind die KDE-Anwender nicht wie die GNOME-Anwender. Sie wollen, dass sich der Desktop ihren Wünschen anpasst und nicht umgekehrt. KDE hat Jahre gebraucht um das zu begreifen und KDE 4 und später Plasma 5 zurück in die Spur zu bringen. Von den Experimenten sind heute nur noch Relikte übrig.

Irgendwie klebe ich trotz dieser frustrierenden Phasen an KDE. So richtig rational erklären kann ich es nicht. Denn heute war mal wieder einer dieser „Ich glaube ich kipp vom Stuhl“-Momente. Ich wollte mal wieder Wayland unter KDE Plasma probieren. Hintergrund dieses Unterfangens sind die tendenziell ruckeligen Effekte, bei denen ich wissen wollte, ob sie vielleicht an X11 liegen. Außerdem ist Wayland einfach die Zukunft. Die schöne Nachricht: Klappt inzwischen besser als noch vor ein paar Monaten und einige der Effekt-Probleme existieren unter Wayland wirklich nicht. Die schlechte Nachricht: Es gibt einen Rückfall in alte KDE-Abgründe.

Ich startete also die Wayland-Session und fand meine Plasma-Panels auf dem Notebooks-Display wieder. Dazu muss ich mein Arbeitssetup kurz erklären. Ich habe ein Notebook, das ich am Schreibtisch per Dock zu einem vollwertigen Desktop-Rechner erweitere. In dem Fall wird der externe Monitor zum Hauptmonitor und das Notebook-Display zum erweiterten Monitor links. Das ist super geeignet, wenn man mehr als einen Wohnsitz hat oder sonstwie sehr mobil unterwegs ist aber trotzdem gerne klassisch am Schreibtisch arbeitet. Das ist natürlich kein permanentes Zwei-Monitor-Setup, sondern über lange Zeiträume auch ein ganz normales Notebook.

Ich weiß, dass ich manchmal spezielle Arbeitsweisen habe, aber dieser Arbeitsmodus gehört nicht dazu! Ein Notebook im Dock ist wirklich ein absolut normales Business-Setup.

Aber nicht bei den KDE-Entwicklern.

Zuerst dachte ich mir, dass ich nur die passende Option nicht finden würde. Sowas ist in den KDE-Systemeinstellungen schließlich keine Seltenheit.

Die Suchmaschine meiner Wahl belehrte mich eines Besseren. Der ehm. KWin-Hauptentwickler ließ sich im Reddit-Thread dazu aus, warum die Option völlig überflüssig sei und entfernt bzw. nicht implementiert wurde.

Ernsthaft? Ich dachte, KDE hätte die Zeiten, in denen man wusste, was Nutzer eigentlich gar nicht brauchen überwunden. Sogar GNOME kann einen primären Monitor festlegen. Merke: Wenn GNOME eine Option bietet, die du nicht hast, dann hast du als Entwickler was vergessen.

Man merkt immer wieder, dass die Entwicklung von grafischen Umgebungen bei freier Software selten wirklich durchdacht ist. Es gibt tolle Entwickler und die Software steht qualitativ den Produkten großer Firmen oft in nichts nach, aber gute Entwickler sind selten UX-Experten. Besonders bei KDE kann man da seit einigen Jahren einen eklatanten Mangel feststellen und neue Designrichtlinien laufen oft nach dem Motto ab „Ich mags, also mache ich es so.“

Bestenfalls ordnet der Schwarm das dann ein und lenkt die Entwicklung in gute Bahnen. In den letzten Jahren hat KDE viel auf die Anwender gehört und so manche über-designte Entscheidung der Entwicklung 2008-2012 revidiert. Hoffentlich kehrt man nun nicht dahin zurück.

Fensterleisten, Menü, Benachrichtigungen – alles ist jetzt auf dem Notebook-Screen, der natürlich nicht ergonomisch direkt vor mir steht. Ich weiß noch nicht, ob ich mich damit arrangieren kann.

Vorerst kann ich zum Glück einfach mit der X11-Session weiterarbeiten.

Der Artikel KDE – Zurück zu alten Mustern? erschien zuerst auf [Mer]Curius

command not foundDieses Bild hat ein leeres alt-Attribut; sein Dateiname ist shira128x128.png.

Shira, meine Katze, kommt sporadisch zur Tastatur, und reibt ihren Kopf daran – v.a. wenn ich die Tastatur auf dem Schlafsofa auf dem Rücken liegend auf dem Bauch balanciere.

Sie schrubbt sich den Nacken und gibt v.a. die am Rande liegenden Zeichen des Ziffernblocks 0,+ und Enter ein. Das sind keine installierten Kommandos/Programmnamen, so dass da nicht allzu viel passieren kann, aber der Rechner reagiert allenfalls mit

000,000+0000++++,,,: Befehl nicht gefunden.

Das ist natürlich nicht sehr einladend für meine Katze. Meine erste Lösung (v0.1) war, dass der Rechner bei signifikanten Shirakommandos mit `echo Hallo Shira` reagiert. Aber Lesen ist nicht ihre Stärke.

Also veröffentlichte ich bald darauf v0.2, die eine Audioaufnahme von 2-3 Sekunden abspielt, die „Hallo Shira, miau“ wiedergibt.

Auf Github https://github.com/Stefan-Wagner/shira kann man den Code runterladen.

Im Wesentlichen sind es 2-3 zusätzliche Zeilen, die ich der Funktion, die ich in /etc/bash.bashrc gefunden habe, zugefügt habe, und ich lade dieses in meinem eigenen /bin-Ordner gespeicherte Script mit dieser Funktion aus meiner ~/.bashrc via source-Befehl (`source ~/bin/shira.sh`) um System und meinen Kram sauber getrennt zu halten.

Ändert man die /etc/bash.bashrc direkt, bekommt man evtl. Konflikte bei Updates. Migriert man all seine Einstellungen auf einen anderen Rechner, vergisst man solche Details auch gerne.

Im Unterschied zur Originalfunktion beginnt meine mit:

if [[ $1 =~ ^[0,+]+$ ]]
then
    echo hallo $katze
    aplay ~/lib/helloMyCat.wav 2>/dev/null &
elif [ -x /usr/lib/command-not-found ]; then

Das GLEICH-TILDE ist ein regex-Vergleich, und `[0,+]` beschreibt die Gruppe der 3 Zeichen 0, Komma und Plus, von denen mindestens eins, aber beliebig viele vorkommen können (+), und es funktioniert wie gewollt, es gibt „Hallo Shira“ auf dem Bildschirm und „Hallo Shira, Miau“ auf dem Lautsprecher aus. In Zeile 5, beim elif, beginnt das Original erst mit if.

Wenn Sie auch etwas auf dem Lautsprecher ausgeben wollen, müssen Sie es zuvor selbst aufnehmen und entsprechend speichern und aufrufen. Ich habe mir einen eigenen Ordner ~/lib gemacht, in dem ich die Datei gespeichert habe, aber für viele Nutzer wird das übertrieben sein.

command not foundDieses Bild hat ein leeres alt-Attribut; sein Dateiname ist shira128x128.png.

Shira, meine Katze, kommt sporadisch zur Tastatur, und reibt ihren Kopf daran – v.a. wenn ich die Tastatur auf dem Schlafsofa auf dem Rücken liegend auf dem Bauch balanciere.

Sie schrubbt sich den Nacken und gibt v.a. die am Rande liegenden Zeichen des Ziffernblocks 0,+ und Enter ein. Das sind keine installierten Kommandos/Programmnamen, so dass da nicht allzu viel passieren kann, aber der Rechner reagiert allenfalls mit

000,000+0000++++,,,: Befehl nicht gefunden.

Das ist natürlich nicht sehr einladend für meine Katze. Meine erste Lösung (v0.1) war, dass der Rechner bei signifikanten Shirakommandos mit `echo Hallo Shira` reagiert. Aber Lesen ist nicht ihre Stärke.

Also veröffentlichte ich bald darauf v0.2, die eine Audioaufnahme von 2-3 Sekunden abspielt, die „Hallo Shira, miau“ wiedergibt.

Auf Github https://github.com/Stefan-Wagner/shira kann man den Code runterladen.

Im Wesentlichen sind es 2-3 zusätzliche Zeilen, die ich der Funktion, die ich in /etc/bash.bashrc gefunden habe, zugefügt habe, und ich lade dieses in meinem eigenen /bin-Ordner gespeicherte Script mit dieser Funktion aus meiner ~/.bashrc via source-Befehl (`source ~/bin/shira.sh`) um System und meinen Kram sauber getrennt zu halten.

Ändert man die /etc/bash.bashrc direkt, bekommt man evtl. Konflikte bei Updates. Migriert man all seine Einstellungen auf einen anderen Rechner, vergisst man solche Details auch gerne.

Im Unterschied zur Originalfunktion beginnt meine mit:

if [[ $1 =~ ^[0,+]+$ ]]
then
    echo hallo $katze
    aplay ~/lib/helloMyCat.wav 2>/dev/null &
elif [ -x /usr/lib/command-not-found ]; then

Das GLEICH-TILDE ist ein regex-Vergleich, und `[0,+]` beschreibt die Gruppe der 3 Zeichen 0, Komma und Plus, von denen mindestens eins, aber beliebig viele vorkommen können (+), und es funktioniert wie gewollt, es gibt „Hallo Shira“ auf dem Bildschirm und „Hallo Shira, Miau“ auf dem Lautsprecher aus. In Zeile 5, beim elif, beginnt das Original erst mit if.

Wenn Sie auch etwas auf dem Lautsprecher ausgeben wollen, müssen Sie es zuvor selbst aufnehmen und entsprechend speichern und aufrufen. Ich habe mir einen eigenen Ordner ~/lib gemacht, in dem ich die Datei gespeichert habe, aber für viele Nutzer wird das übertrieben sein.

22. April 2021

Vor X Jahren hatte ich schon mal was zu sed gepostet

Hier mal als ein eigener Artikel kleine Schnipsel, die mir untergekommen sind.

Meist irgendwo im Netz gefunden oder auch mal selber drauf gekommen.

sed code Schnipsel
sed  's/ "/ \x27/g' In einem Stream das Apostroph  verwenden Hier wird space" gegen space' global gewechselt. 

Durch Angabe des unicodes \x27 spart man sich das unübersichtliche Hantieren mit haufenweisen backslashes.

Na klar, das geht auch mit anderen Charcodes

Und das shellcheck meckert dann auch nicht sinnlos rum.

       
       

Wird von Fall zu Fall ergänzt.

Vor X Jahren hatte ich schon mal was zu sed gepostet

Hier mal als ein eigener Artikel kleine Schnipsel, die mir untergekommen sind.

Meist irgendwo im Netz gefunden oder auch mal selber drauf gekommen.

sed code Schnipsel
sed  's/ "/ \x27/g' In einem Stream das Apostroph  verwenden Hier wird space" gegen space' global gewechselt. 

Durch Angabe des unicodes \x27 spart man sich das unübersichtliche Hantieren mit haufenweisen backslashes.

Na klar, das geht auch mit anderen Charcodes

Und das shellcheck meckert dann auch nicht sinnlos rum.

       
       

Wird von Fall zu Fall ergänzt.

21. April 2021

Die MZLA Technologies Corporation hat mit Thunderbird 78.10 ein planmäßiges Update für seinen Open Source E-Mail-Client veröffentlicht.

Neuerungen von Thunderbird 78.10

Mit dem Update auf Thunderbird 78.10 hat die MZLA Technologies Corporation ein planmäßiges Update für seinen Open Source E-Mail-Client veröffentlicht. Neben den üblichen kleineren Verbesserungen schließt die neue Version in erster Linie die aktuellen Sicherheitslücken. Ein Update ist daher für alle Nutzer empfohlen.

Der Beitrag Thunderbird 78.10 veröffentlicht erschien zuerst auf soeren-hentzschel.at.

20. April 2021

Programmstarter und die meisten Symbole auf dem Desktop unter Linux sind eigentlich einfache Textdateien. Diese Textdateien enden mit der Dateiendung “.desktop” und heißen dementsprechend auch .desktop-Dateien. Diese kann man entweder mit grafischen Programmen oder in einem Texteditor der Wahl erstellen. Die systemweiten Programmstarter liegen unter /usr/share/applications und selbst Erstellte legt man am Besten unter ~/.local/share/applications ab. Aber natürlich kann man auch selbst solche Dateien schreiben und abspeichern - sei es weil man gerade ein Programm schreibt.

Um das Verfassen solcher Dateien soll es hier aber nicht gehen, sondern darum, wie man .desktop-Dateien validiert, also auf Richtigkeit überprüft; denn wie für so vieles gibt es auch für diese Dateien eine Spezifikation auf freedesktop.org Dafür gibt es in dem Paket desktop-file-utils, ein Programm mit dem Namen “desktop-file-validate”.

Die Anwendung des Programmes ist denkbar einfach:

desktop-file-validate /PFAD/ZUR/DATEI

Hiermit kann man dann u.a. eigene .desktop-Dateien auf Richtigkeit überprüfen und bekommt recht exakte Fehlermeldungen angezeigt, wenn etwas nicht stimmt und wie man das korrigieren kann.

19. April 2021

Mozilla hat Firefox 88 für Windows, Apple macOS und Linux veröffentlicht. Dieser Artikel fasst die wichtigsten Neuerungen zusammen – wie immer auf diesem Blog weit ausführlicher als auf anderen Websites.

Download Mozilla Firefox für Microsoft Windows, Apple macOS und Linux

Privatsphäre: Firefox schützt vor window.name-Leak

Websites steht mit window.name eine Eigenschaft zur Verfügung, in welcher diese Daten speichern können, welche auch dann noch zur Verfügung stehen, wenn der Benutzer im gleichen Tab auf eine andere Seite navigiert. Tracking-Unternehmen missbrauchen diesen Mechanismus, Mozilla schiebt dem mit Firefox 88 einen Riegel vor.

Ab sofort setzt Firefox die Eigenschaft window.name zurück, wenn der Benutzer im gleichen Tab auf eine andere Seite navigiert. Navigiert der Nutzer zurück, wird der Wert wieder auf ihren eigentlichen Wert gesetzt. In seinem Sicherheits-Blog hat Mozilla ausführlich darüber geschrieben (engl.).

Mozilla zieht hier mit Apple gleich, die einen vergleichbaren Schutz in Safari bereits vor längerer Zeit implementiert haben. Während Google dies für Chromium-basierte Browser ebenfalls plant, sind Browser wie Google Chrome und Microsoft Edge nach heutigem Stand weiterhin anfällig für den window.name-Leak.

Interaktive PDF-Dateien

Seit Firefox 83 unterstützt Mozillas Browser das Ausfüllen von PDF-Formularen. Mit Firefox 88 kommt die Unterstützung von Scripts dazu. Dies ermöglicht die Validierung von PDF-Formularen und andere interaktive Features in PDF-Dateien.

Verbesserungen der Entwicklerwerkzeuge und Webplattform

Das Antwort-Panel des Netzwerkanalyse-Werkzeugs besitzt nun einen Toggle-Button, um zwischen formatierter und Code-Ansicht zu wechseln.

Auf Webstandard-Seite ist die Unterstützung der zwei neuen CSS-Pseudoklassen :user-valid und :user-invalid erwähnenswert, welche im Gegensatz zu :valid und :invalid erst dann aktiv werden, wenn der Benutzer den Fokus auf ein anderes Element setzt.

Neu ist auch die Unterstützung von image-set() in CSS für responsive Bilder oder unterschiedliche Bilder in Abhängigkeit von der Pixeldichte des Bildschirms, ähnlich zum srcset-Attribut in HTML.

Die Standard-Schrift für monospace-Schriften auf macOS wurde in Menlo geändert. Die outline-Eigenschaft in CSS wurde dahingehend geändert, dass die Kontur nun dem border-radius folgt.

Auf JavaScript-Seite erwähnt sei die Unterstützung von indicies sowie hasIndices bei regulären Ausdrücken.

Eine Übersicht über Verbesserungen der Webplattform wie neue unterstützte Webstandards gibt es wie immer in den MDN web docs.

Geschlossene Sicherheitslücken

Natürlich hat Mozilla auch in Firefox 88 wieder mehrere Sicherheitslücken geschlossen. Alleine aus Gründen der Sicherheit ist ein Update auf Firefox 88 daher für alle Nutzer dringend empfohlen.

Sonstige Neuerungen in Firefox 88

Die seit Firefox 86 neue Drucken-Oberfläche unterstützt nun lokalisierte Einheiten für die Ränder, so dass Firefox hier Millimeter- statt Zoll-Angaben anzeigen kann.

In Vorbereitung auf das kommende Proton-Design von Firefox, welches mit Firefox 89 ausgeliefert werden wird, gab es bereits in Firefox 88 diverse Textänderungen in Dialogen und Umstrukturierungen von Kontextmenüs.

Im Kontextmenü von Tabs gab es bereits die Optionen, entweder alle anderen Tabs oder alle Tabs rechts vom ausgewählten Tab zu schließen. Mit der Option, alle Tabs links vom ausgewählten Tab zu schließen, folgte eine logische Erweiterung.

Im Kontextmenü von Textfeldern gibt es neben einer Rückgängig-Aktion jetzt auch eine Wiederherstellen-Option. Die Optionen Ausschneiden und Kopieren sind nun ausgegraut, wenn kein Text markiert ist. Der Kontextmenü-Eintrag zum Anzeigen einer Grafik öffnet diese nun standardmäßig in einem neuen Tab.

Die Screenshot-Funktion steht nicht länger über das Dreipunkte-Menü in der Adressleiste zur Verfügung, kann aber nach wie vor über das Kontextmenü aufgerufen werden. Außerdem gibt es unter Menü > Symbolleiste anpassen eine neue Screenshot-Schaltfläche, welche optional wie alle anderen Buttons auch in die Benutzeroberfläche gezogen werden kann.

Bei Mikrofon- und Kamera-Anfragen bittet Firefox nicht länger erneut um Erlaubnis, wenn schon einmal innerhalb der letzten 50 Sekunden auf dem gleichen Gerät im gleichen Tab die Erlaubnis für die jeweilige Website erteilt worden ist.

Sanftes Pinch-Zooming mit einem Touchpad wird jetzt auch unter Linux unterstützt.

Die Unterstützung für das unverschlüsselte und unsichere FTP-Protokoll wurde standardmäßig deaktiviert und wird voraussichtlich mit Firefox 90 komplett entfernt werden. WebExtensions können sich ab sofort als Protokoll-Handler für FTP registrieren.

Die Erkennung von eingegebenen Zugangsdaten zum Speichern eben jener wurde bei bestimmten Script-basierten Implementierungen verbessert.

Bislang zeigte Firefox beim Start, wenn das genutzte Firefox-Profil älter als 90 Tage und der Durchschnitt der letzten fünf Starts bei mehr als 20 Sekunden liegt, eine Hinweisleiste an, welche die Erneuerung des Profils nahelegte. Diese wurde entfernt. Die Hinweisleiste, welche auf nicht reagierende Scripts hinweist, wurde von einer auffälligen gelben Leiste in eine weniger auffällige Farbe geändert und erscheint nur noch, wenn mit der Seite interagiert worden ist. Außerdem gibt es hier keinen „Warten“-Button mehr.

Auf der Seite about:processes ist es jetzt möglich, eine Zeile zu markieren, so dass man diese bei Änderungen besser verfolgen kann.

Der neue Grafik-Renderer WebRender wurde für weitere Linux-Nutzer aktiviert. Für Nutzer von Windows ohne D3D11-Compositing und mit kleinem Bildschirm wird nun eine Software-Implementierung von WebRender ausgeliefert, ebenso für einen kleinen Teil der Linux-Nutzer, der ansonsten kein WebRender erhalten würde.

Ist der Import von gespeicherten Zugangsdaten via CSV-Datei aktiviert (signon.management.page.fileImport.enabled in about:config) wird am Ende nun ein Abschlussbericht angezeigt, der Aufschluss über mögliche Fehler gibt.

Natürlich kamen auch in Firefox 88 wieder Fehlerbehebungen und sonstige Verbesserungen unter der Haube wie auch Verbesserungen der Barrierefreiheit dazu. Auch die Unterstützung weiterer Unternehmensrichtlinien kam wieder dazu.

Der Beitrag Mozilla veröffentlicht Firefox 88 erschien zuerst auf soeren-hentzschel.at.

17. April 2021

Google hat zentrale Bestandteile seiner Dienste nicht direkt in Android implementiert, sondern in den so genannten Play Services. Dazu gehören viele Sachen wie Push-Benachrichtigungen, Ortung ohne GPS und vieles mehr. Einen Teil davon implementiert microG als freie Software. Aber bringt das wirklich was für den Datenschutz?

Das Thema kam in der Diskussion zum Artikel über Custom ROMs auf. Quelloffene Software ist ja schön und gut, aber sie ist nicht automatisch Datenschutz-freundlich.

MicroG ist so ein Ansatz, bei dem ich mich schon länger frage, ob der funktioniert. Projekte wie /e/ machen da ja ordentlich Werbung mit und versprechen das Blaue vom Himmel.

Laut der Projekt-Dokumentation reimplementiert microG Sachen wie die Maps-API, die Push–Benachrichtigung und die Ortung via Wifi- und Funkzellenabfrage.

Der springende Punkt: Hinter all diesen Diensten steht letztlich immer noch die Google-Infrastruktur. MicroG muss letztlich häufig Verbindungen zu dieser aufbauen. Das geschieht über einen generischen Account (man kann aber wohl auch einen individuellen Account festlegen).

Selbst wenn wir den Spezialfall eines individuellen Accounts weglassen (der Datenschutz-Gewinn dürfte dann sehr gering sein). Übertragt man nicht genug Informationen für eine Profilbildung trotz generischem Account? Die Zuordnung zu einem Google-Account ist ja leider wirklich keine Notwendigkeit für Profilbildung. Wenn dem so wäre, dann wäre Datenschutz ja viel zu einfach. (Schade eigentlich!)

Hat sich irgendjemand mal dieses Konzept genauer angesehen und ggf. den Datenverkehr analyisiert?

Ich habe versucht dazu zu recherchieren, aber nicht viel belastbares gefunden, außer der Verweis auf Open Source. Was ja erst mal nur sagt, dass man sich den Code ansehen kann. Hat das aber überhaupt mal jemand unabhängig gemacht?

Über Kommentare dazu würde ich mich sehr freuen.

Der Artikel Was bringt microG für den Datenschutz? erschien zuerst auf [Mer]Curius

16. April 2021

Linux ist per se Datenschutz-freundlich? Nein, es kommt drauf an, was der Anwender daraus macht. Eine Anleitung für eine Reise mit Linux in die Datenschutz-Hölle.

In mehreren Artikeln habe ich schon mal abstrakt geschrieben, dass man auch mit Linux seine Privatsphäre und seinen Datenschutz massiv verletzten kann. Zuletzt in den abstrakten Überlegungen zu Open Source und Überwachung. Ich möchte diesen Artikel nutzen, um das mal ein wenig praktisch auszuführen. Unternehmen wir eine kleine Reise in die Hölle. Diese Szenarien sind nicht weit entfernt.

Eine Reise mit Linux in den Datenschutz-Albtraum

Die Wahl der Distribution

Zuerst benötigen wir eine passende Basis. Warum nicht Fedora nehmen. Fedora gehört zu den größten verfügbaren Distributionen, wird seit Jahren aktiv entwickelt, hat Hunderte beitragende Maintainer und eine sehr große Nutzerbasis.

Gleich beim Besuch der Fedora Homepage weiß Google, dass ich mich dafür interessiere. Echt nett. Aber schöne Schriften müssen halt sein und das selbst technisch einzubinden ist ja so aufwendig.

Fedora wird maßgeblich von Red Hat vorangetrieben (und das gehört inzwischen zu IBM, aber das lassen wir mal beiseite). Red Hat ist einer der größten, finanzstärksten und wichtigsten Akteure im Open Source Umfeld. Fedora wirbt auf der deutschsprachigen Homepage mit folgendem Satz:

Fedora ist frei verfügbar, um von Jedermann benutzt, verändert und weitergegeben zu werden.

Fedora (getfedora.org)

Möchte ich die Distribution herunterladen, lese ich unten folgenden Hinweis:

Indem Sie Fedora Software herunterladen, bestätigen Sie, dass Sie das Folgende verstehen: Fedora Software und technische Informationen kann Exportkontrollvorschriften der USA (U.S. Export Administration Regulations, “EAR”) und weiteren Gesetzen der USA und anderer Länder unterliegen und darf nicht ausgeführt, wieder ausgeführt oder weitergeleitet werden (a) in irgendein Land, das in Ländergruppe E:1 des Supplement No. 1 zu EAR Part 740 aufgeführt ist (momentan Kuba, Iran, Nordkorea, Sudan und Syrien); (b) an irgendein Ziel oder irgendeinen Endbenutzer, dem die Teilnahme an US Exporttransaktionen durch irgendeine Bundesbehörde der US Regierung untersagt ist; oder (c) zum Gebrauch in Verbindung mit der Konstruktion, der Entwicklung oder Herstellung von nuklearen, chemischen oder biologischen Waffen oder Raketensystemen, Trägerraketensystemen oder Höhenforschungsraketen oder unbemannten Luftfahrzeugsystemen. Sie dürfen Fedora Software oder technische Informationen nicht herunterladen, wenn Sie sich in einem der genannten Länder befinden oder auf eine andere Weise diesen Einschränkungen unterliegen. Sie dürfen Fedora Software oder technische Informationen weder Personen noch Einrichtungen zur Verfügung stellen, die sich in einem dieser Länder befinden oder auf eine andere Weise diesen Einschränkungen unterliegen. Weiterhin sind Sie für die Einhaltung rechtlicher Anforderungen anderer Länder bezüglich Einfuhr, Ausfuhr und Benutzung von Fedora Software und technischer Informationen verantwortlich.

Fedora Workstation herunterladen (getfedora.org)

Oh nein! Ist eine Distribution denn nicht staatenlos? Ganz so frei ist die weltweite Distribution dann wohl doch nicht.

Datenschützer werfen bei Produkten, die aus den USA kommen ja gerne mit den Schlagworten PATRIOT und PRISM um sich. Bin ich davor bei Fedora eigentlich geschützt? Sucht man nach Reproducible Builds stößt man auf diesen Wiki-Eintrag, aber da hat sich lange nichts getan. Der aktuelle Stand ist undurchsichtig. Kann ich wirklich darauf vertrauen, dass Fedora das ausliefert, was die Quelltexte hergeben?

Die Fahrt in die Hölle hat begonnen.

Hab ich SELinux gehört?

Fedora setzt auf SELinux. Das ist eine Entwicklung der NSA, die erstmals bei Fedora standardmäßig einzog. War ja klar, wenn man sieht wie abhängig Fedora von den USA ist. Der Quellcode wurde zig mal überprüft? Nun, Apple behauptet auch, sie würden die Daten ihrer Nutzer schützen. Ich glaube denen kein Wort. Ich kann ja nicht darauf vertrauen, dass der offen einsehbare Quelltext wirklich unverändert auf meinem System läuft.

Vielleicht sollte ich doch ein russisches Linux verwenden? Putin ist ein solider Mann und Russland total vertrauenswürdig. Immerhin haben sie Snowden aufgenommen und mein antiamerikanischer Kompass ist da ganz zuverlässig.

NTP-Server, Paketquellen, Tracking

Meine Systeme greifen auf viele Server zu. Updates müssen gesucht und die Zeit abgeglichen werden. Dazu greift mein System auf riesige Mirrorlisten zu. Was speichern diese Server eigentlich für Zugriffsdaten? Bestimmt nichts schlimmes, ist ja alles Open Source und die Community ist ganz sensibel für Datenschutz.

Cloud-Speicher – OneDrive, Dropbox, GDrive

Meine SSD hat nicht genug Speicherplatz für alle meine Dateien. Zum Glück gibt es viele Cloud-Speicher und alle bieten Clients für Linux an. Super! Ich habe keine Lust Geld auszugeben, also habe ich mir viele Free- und Billigangebote gesucht und kombiniere die. Warum nur einen Cloud-Speicher nutzen?

Ohne Chrome – ohne mich

Fedora liefert zwar Firefox aus, aber der ist so langsam und überhaupt nicht attraktiv. Außerdem mag ich keine sterbenden Projekte. Ich will am Zahn der Zeit sein und der heißt: Chrome von Google. Außerdem kann ich damit leicht meinen Google Account einbinden und Favoriten, Verlauf, Tabs usw. synchronisieren. So praktisch!

Außerdem macht Google ja ganz viel für Open Source. Google Summer of Code, AOSP. Warum also nicht Google-Produkte nutzen. Die wissen schließlich wie Linux tickt.

Glaubt ihr nicht? Schaut euch in den Supportforen um und lest mal auf den Planeten der Softwareentwickler bei Planet GNOME oder Planet KDE und guckt auch die dortigen Screenshots an. Chrome begegnet euch oft.

Mails und PIM natürlich mit GMail

Ich nutze natürlich einen Mailclient, weil die ganzen Mailinglisten etc. sich im Web-Interface so schlecht verwalten lassen.

Als E-Mail-Anbieter binde ich Google Mail ein. Es gibt andere Mailanbieter als GMail? Ernsthaft! AOL oder was? Natürlich nutze ich GMail. Da bin ich vor 15 Jahren drauf gestoßen und die Features und der Speicherplatz überzeugen.

Meine Kalender und ToDos verwalte natürlich auch mit Google. Bietet sich ja an, wenn ich eh schon dabei bin.

Glaubt ihr nicht? Schaut euch in den Supportforen um und lest mal auf den Planeten der Softwareentwickler bei Planet GNOME oder Planet KDE an und guckt, was dort so verwendet wird. Probleme bei der Authentifizierung mit Google werden bei Kontact, Evolution & Co immer schnell gefixt.

Zoom, Teams, Slack – ich brauch alles

Kann ich ja nichts für, mein Arbeitgeber schreibt das vor. Außerdem klappen die Videokonferenzen mit Zoom so gut. Die Software gibt es ja alles auch für Linux, da muss ich das böse Windows ja nicht nutzen.

Dank der ganzen Webclients kann ich von meinem Linux-Desktop auch WhatsApps schreiben. Dateien und Bilder verschicke ich damit auch gleich mit. Geht schneller als via Mail.

Frei rauschen die Daten um den Globus bzw. ins AWS Datencenter.

Spotify, Netflix, YouTube – Streaming ist King

Inhalte kaufen? In welchem Jahrhundert leben wir denn? Ich streame alles und das geht mit Linux und Chrome auch super. Warum also nicht nutzen. Wen interessiert schon was ich wann gucke und wie oft ich auf Pause drücke?

Ich bin ein Nerd: Telegram

Aber ich bin ja kein Mainstream-Typ, sondern ein Nerd. Deshalb nutze ich auch diese super Lösung für sichere und nerdige Communitys: Telegram. Ganz viele Softwareprojekte haben dort jetzt Chatgruppen und da kriege ich schnell und unkompliziert Hilfe. Dafür gibt es außerdem ganz viele tolle Open Source Clients.

Firmensitz war Dubei? Keine Ahnung, ein Impressum hat der Dienst nicht. Es sind halt coole digitale Nomaden.

Aber mit Linux bin ich auf der sicheren Seite. Privatsphäre und Datenschutz – darum sollen sich Leute mit Windows und macOS Gedanken machen. Deren Firmen sitzen schließlich in den USA und die überwachen uns alle!

Oder vielleicht doch nicht?

Der Artikel Mit Linux in die Datenschutz-Hölle erschien zuerst auf [Mer]Curius