staging.inyokaproject.org

17. Januar 2021

Messenger sind aktuell wieder ein heißes Thema. Erst der staatliche Angriff auf die Verschlüsselung nun in der vergangenen Woche die AGB-Änderung von WhatsApp. Die träge Nutzerschaft setzt sich in Bewegung und der Markt sortiert sich neu. Wären da nicht diese nervigen Zwischenrufer von Seitenlinie.

Öffentliche Meinungsbildung ist ein komplexer Prozess. Es reicht nicht, nur ein gutes Produkt anzubieten, sondern dieses muss in der Öffentlichkeit auch als Alternative wahrgenommen werden. Bei vielen Sachen ist es letztlich nicht so wichtig, ob man den Dienst alleine nutzt oder Millionen Mitmenschen auch. Bei Messengern sieht das anders aus, weil hier die Verbreitung des Dienstes ein relevanter Faktor für die Nutzung ist.

Spätestens in der vergangenen Woche hat man aber sehen können, dass der Trend in die richtige Richtung geht. Nahezu alle Empfehlungen in den Fach- und Mainstreammedien sowie über die sozialen Netzwerke liefen auf zwei Alternativen hinaus: Threema und Signal. Beides hervorragende und sichere Alternativen zum Marktführer WhatsApp. Die Tendenz geht ein bisschen in Richtung Signal, aber das kann je nach Struktur des Freundes- und Bekanntenkreises auch ein wenig anders aussehen.

Endlich sind die pseudo-sicheren Messenger wie Telegram oder Viber nicht mehr in den Empfehlungslisten und ein gesellschaftlicher Fortschritt ist wirklich zum Greifen nahe.

Wären da nicht diese nervtötenden Fans föderierter Systeme, die über E-Mails und Kommentarspalten schamlos Werbung für ihre Systeme machen und Diskussionen hijacken.

Haltet euch einfach zurück!

Natürlich haben Matrix oder Rocket.Chat und meinethalben auch der Zombie XMPP ihre Berechtigung. Wenn eine geschlossene Gruppe wie die KDE-Entwickler auf Matrix wechseln oder Firmen Rocket.Chat einsetzen wollen, ist das toll! Hier spielen ganz andere Dynamiken eine Rolle und genau dafür sind diese Dienste perfekt.

Sie sind nicht für den Individualeinsatz bestimmt! Dort funktionieren sie nicht. Es hat Gründe, dass alle Messenger mit einem relevanten Marktanteil zentralisierte Systeme mit der Telefonnummer als (optionalen) Identifikator sind.

Und die föderierten Systeme sind nicht sicherer! Hört endlich auf euch das Sicherheits-Ettiket anzuheften! Sie sind vermutlich nicht mal sicherer als WhatsApp.

Föderierte Systeme haben ihre Stärken im Bereich der Autonomie und der digitalen Souveränität. Das ist ein wichtiges Thema aber es hat nicht unmittelbar etwas mit Sicherheit zu tun. Natürlich ist es toll, wenn man selbst den Server betreiben oder Clients für irgendwelche Nischensysteme entwickeln kann, aber das hat etwas mit Freiheit und nicht mit Sicherheit zu tun.

Föderierte Systeme haben systembedingt erhebliche Schwachstellen. Es sind bei allen diesen Systemen zahlreiche Serverbetreiber im Einsatz, denen man allen vertrauen muss. Bei einigen gibt es inzwischen eine Inhalte-Verschlüsselung, aber Metadaten liegen offen. Dienste wie Matrix sind zudem überhaupt nicht datensparsam konzipiert, sondern speichern auf allen beteiligten Servern die komplette Kommunikation. Ein Traum für die Sicherheitsbehörden! Offizielle Security-Audits bei Systemen wie XMPP sind oft Jahre alt. Die hohe Client-Vielfalt ermöglicht gleichzeitig unbegrenzte Möglichkeiten der Fehlkonfiguration und sich dadurch selbst zu kompromittieren.

Kurzum: Ja, digitale Souveränität bzw. Autonomie sind legitime Anliegen, sie machen in bestimmten Einsatzszenarien Sinn. Aber liebe Fans dieser Dienste hört auf, euch das Sicherheits-Ettiket anzuheften und nervt nicht von der Seitenlinie, wenn die Mehrheit gerade hinsichtlich Sicherheit und Privatsphäre einen Quantensprung unternimmt. Euer Störfeuer verunsichert nur und hält im schlimmsten Fall noch Nutzer ab, auf gute WhatsApp-Alternativen zu wechseln.


Bilder:
Einleitungs- und Beitragsbild von Gerd Altmann via pixabay

Der Artikel Kommentar: Fans von Matrix, XMPP & Co – Nervt nicht! erschien zuerst auf [Mer]Curius

Messenger sind aktuell wieder ein heißes Thema. Erst der staatliche Angriff auf die Verschlüsselung nun in der vergangenen Woche die AGB-Änderung von WhatsApp. Die träge Nutzerschaft setzt sich in Bewegung und der Markt sortiert sich neu. Wären da nicht diese nervigen Zwischenrufer von Seitenlinie.

Öffentliche Meinungsbildung ist ein komplexer Prozess. Es reicht nicht, nur ein gutes Produkt anzubieten, sondern dieses muss in der Öffentlichkeit auch als Alternative wahrgenommen werden. Bei vielen Sachen ist es letztlich nicht so wichtig, ob man den Dienst alleine nutzt oder Millionen Mitmenschen auch. Bei Messengern sieht das anders aus, weil hier die Verbreitung des Dienstes ein relevanter Faktor für die Nutzung ist.

Spätestens in der vergangenen Woche hat man aber sehen können, dass der Trend in die richtige Richtung geht. Nahezu alle Empfehlungen in den Fach- und Mainstreammedien sowie über die sozialen Netzwerke liefen auf zwei Alternativen hinaus: Threema und Signal. Beides hervorragende und sichere Alternativen zum Marktführer WhatsApp. Die Tendenz geht ein bisschen in Richtung Signal, aber das kann je nach Struktur des Freundes- und Bekanntenkreises auch ein wenig anders aussehen.

Endlich sind die pseudo-sicheren Messenger wie Telegram oder Viber nicht mehr in den Empfehlungslisten und ein gesellschaftlicher Fortschritt ist wirklich zum Greifen nahe.

Wären da nicht diese nervtötenden Fans föderierter Systeme, die über E-Mails und Kommentarspalten schamlos Werbung für ihre Systeme machen und Diskussionen hijacken.

Haltet euch einfach zurück!

Natürlich haben Matrix oder Rocket.Chat und meinethalben auch der Zombie XMPP ihre Berechtigung. Wenn eine geschlossene Gruppe wie die KDE-Entwickler auf Matrix wechseln oder Firmen Rocket.Chat einsetzen wollen, ist das toll! Hier spielen ganz andere Dynamiken eine Rolle und genau dafür sind diese Dienste perfekt.

Sie sind nicht für den Individualeinsatz bestimmt! Dort funktionieren sie nicht. Es hat Gründe, dass alle Messenger mit einem relevanten Marktanteil zentralisierte Systeme mit der Telefonnummer ist (optionalen) Identifikator sind.

Und die föderierten Systeme sind nicht sicherer! Hört endlich auf euch das Sicherheits-Ettiket anzuheften! Sie sind vermutlich nicht mal sicherer als WhatsApp.

Föderierte Systeme haben ihre Stärken im Bereich der Autonomie und der digitalen Souveränität. Das ist ein wichtiges Thema aber es hat nicht unmittelbar etwas mit Sicherheit zu tun. Natürlich ist es toll, wenn man selbst den Server betreiben oder Clients für irgendwelche Nischensysteme entwickeln kann, aber das hat etwas mit Freiheit und nicht mit Sicherheit zu tun.

Föderierte Systeme haben systembedingt erhebliche Schwachstellen. Es sind bei allen diesen Systemen zahlreiche Serverbetreiber im Einsatz, denen man allen vertrauen muss. Bei einigen gibt es inzwischen eine Inhalte-Verschlüsselung, aber Metadaten liegen offen. Dienste wie Matrix sind zudem überhaupt nicht datensparsam konzipiert, sondern speichern auf allen beteiligten Servern die komplette Kommunikation. Ein Traum für die Sicherheitsbehörden! Offizielle Security-Audits bei Systemen wie XMPP sind oft Jahre alt. Die hohe Client-Vielfalt ermöglicht gleichzeitig unbegrenzte Möglichkeiten der Fehlkonfiguration und sich dadurch selbst zu kompromittieren.

Kurzum: Ja, digitale Souveränität bzw. Autonomie sind legitime Anliegen, sie machen in bestimmten Einsatzszenarien Sinn. Aber liebe Fans dieser Dienste hört auf, euch das Sicherheits-Ettiket anzuheften und nervt nicht von der Seitenlinie, wenn die Mehrheit gerade hinsichtlich Sicherheit und Privatsphäre einen Quantensprung unternimmt. Euer Störfeuer verunsichert nur und hält im schlimmsten Fall noch Nutzer ab, auf gute WhatsApp-Alternativen zu wechseln.


Bilder:
Einleitungs- und Beitragsbild von Gerd Altmann via pixabay

"

16. Januar 2021

Mit Firefox 83 hatte Mozilla diverse Verbesserungen der Adressleiste vorgenommen. Firefox 85 bringt in diesem Bereich neue Konfigurationsmöglichkeiten.

Im November hatte Mozilla mit der Veröffentlichung von Firefox 83 mehrere Verbesserungen der Adressleiste vorgenommen. Dazu zählt auch die Integration zusätzlicher Schaltflächen, über welche ausschließlich die Lesezeichen, die Chronik oder offene Tabs durchsucht werden können. Die Funktionalität, die Ergebnisse der Adressleiste zu filtern, besitzt Firefox bereits seit vielen Jahren, wurde durch die neue Integration aber erst vielen Nutzern bekannt, die bisher nicht wussten, dass das möglich ist.

Adressleiste Einstellungen Firefox 85

Wer diese Funktion nicht braucht oder die Idee grundsätzlich gut findet, aber nicht jeden dieser Filter benötigt, kann die angezeigten Schaltflächen ab Firefox 85 konfigurieren. Ab dann finden sich die entsprechenden Einträge bei den ebenfalls an dieser Stelle angezeigten Suchmaschinen in den Such-Einstellungen von Firefox. Wie bei den Suchmaschinen genügt auch hier ein einfacher Klick für die Entfernung des jeweiligen Häkchens. Bonus: Die Such-Einstellungen zeigen außerdem das Zeichen an, welches man statt Betätigung der jeweiligen Schaltfläche zum Filtern in die Adressleiste eingeben kann.

 Adressleiste Einstellungen Firefox 85

Ebenfalls neu seit Firefox 83: Wird der Name einer Suchmaschine zu tippen begonnen, erfolgt ein prominenter Vorschlag zur Nutzung der Suchmaschine und das Drücken der Tabulator-Taste wählt die Suchmaschine aus.

Adressleiste Einstellungen Firefox 85

Auch diese Neuerung lässt sich ab Firefox 85 über die Firefox-Einstellungen abschalten. Dies geschieht in den Adressleisten-Einstellungen im Bereich Datenschutz & Sicherheit.

Adressleiste Einstellungen Firefox 85

Firefox 85 wird nach aktueller Planung am 26. Januar 2021 erscheinen.

Der Beitrag Firefox 85: Verbesserte Konfiguration der Adressleiste erschien zuerst auf soeren-hentzschel.at.

Die Zugehörigkeit von WhatsApp zu Facebook und die Ambitionen, Daten innerhalb des Konzernes zusammen zu führen, sind lange bekannt - dachte man zumindest. Die Änderung der AGBs löste jedoch ein gewaltiges Medienecho aus und setze die Nutzermassen in Bewegung. Nun ist der Konzern eingeknickt und verschiebt das Projekt erst einmal.

Wenn man sich häufiger mit der Materie beschäftigt, fragt man sich zwangsläufig, was diese Woche eigentlich passiert ist. Die AGB-Änderungen waren nicht besonders umfangreich, die Folgen für die Nutzer sind vor allem in Europa unklar. Medienecho und Shitstorm folgen jedoch eigenen Regeln und die Aufforderung, die neuen AGBs zu bestätigen, löste Bewegung unter den Nutzern aus.

Dabei lassen sich mehrere interessante Phänomene beobachten.

Ersten kommen diese Bewegungen oft einem Sturm im Wasserglas gleich. Das Medien- und Twitterecho ist gewaltig, aber ansonsten passiert wenig. Dieses Mal war das anders. Ich tanze bei Messengern auf vielen Hochzeiten und nutze sowohl WhatsApp,als auch Threema und Signal. Bis vor knapp einer Woche waren 95% meiner Kontakte auf WhatsApp, von denen noch mal rund 10% auf Signal und eine Handvoll bei Threema vertreten waren. Die Zahlen bei Signal sind in den vergangenen Tagen deutlich angestiegen. Inzwischen kann ich über den sicheren Messenger knapp 20-30% meiner Kontakte erreichen. Es sind dabei auch Personen gewechselt, für die IT-fern noch eine freundliche Umschreibung ist.

Zweitens spielte in der öffentlichen Wahrnehmung endlich Telegram keine relevante Rolle mehr. Möglicherweise haben die Verschwörungsideologen hier mal einen positiven Effekt und die negative Assoziation dieser Gruppierungen überträgt sich auf Telegram und nimmt dem Messenger seinen guten Ruf. Denn mehr als ein guter Ruf war da nicht. Hinsichtlich der Sicherheit war Telegram schon immer ein richtig schlechter Messenger (siehe: Kommentar: Telegram ist unsicher - welch Überraschung) und die Finanzierung und Betreiber des Dienstes sind bestenfalls nebulös.

Drittens spielen selbst ernannte IT-Experten zum Glück keine Rolle für die Meinungsbildung. Wenn es nach denen ginge. würden wir nun wieder in die Messenger-Steinzeit katapultiert werden und über XMPP, Matrix oder andere Nischendienste sprechen. Mit dem Effekt, dass das unter Punkt 1 beschrieben Phänomen nicht eingetreten wäre. Niemand hat Lust, sich mit den systembedingten Beschränkungen föderierter Messenger und ihren unausgereiften Funktionen herumzuschlagen (siehe dazu auch: Dezentralisierte Dienste - Zu spät, zu kompliziert, zu fragmentiert). Und entgegen dem was die Apologeten föderierter Systeme so behaupten, sind diese Messenger systembedingt sogar unsicherer (siehe auch: XMPP und Matrix im Vergleich mit Signal und Threema). Die Anliegen digitale Souveränität und Sicherheit können zwar Zweckgemeinschaften bilden, das eine bedingt aber nicht unbedingt das andere. Mal davon abgesehen, dass nahezu alle Dienste mit komplett verteilter Infrastruktur das Ende von E-Mail und XMPP erleiden: Im besten Fall den technologischen Tod, im schlechtesten sogar das komplette Verschwinden.

Abzuwarten bleibt nun, inwieweit das von Dauer ist oder ob die neuen Signal-Anwender nicht doch mittelfristig wieder bei WhatsApp landen.

Eines dürfte nämlich klar sein: Facebook hat seine Bemühungen aufgeschoben, aber nicht aufgehoben. Der Konzern hat nämlich ein Problem. Das Hauptnetzwerk Facebook und der wichtigste Werbemarkt vergreist regelrecht. Alle Zielgruppen, die im Marketing noch unter "jung" fallen, kehren dem Netzwerk den Rücken. Der Konzern muss also seine deutlich besser agierenden Töchter Instagram und WhatsApp konsequenter monetarisieren. Entweder indem er konsequent Daten abgreift oder Werbung schaltet. Letzteres könnte aber WhatsApp noch mehr Nutzer kosten, als die Bewegung in dieser Woche.

15. Januar 2021

Gespeicherte Passwörter konnten in Firefox bisher nur einzeln gelöscht werden. Mit Firefox 85 wird eine vollständige Bereinigung von gespeicherten Zugangsdaten einfacher.

Ein praktisches Feature nahezu aller Browser ist es, Zugangsdaten von Websites speichern zu können. Natürlich besitzt auch Firefox eine Passwort-Verwaltung, welche via about:logins aufgerufen werden kann.

Wer gespeicherte Passwörter löschen wollte, konnte dies bisher Eintrag für Eintrag erledigen. Mühsam wurde es, wenn alle gespeicherten Zugangsdaten mit einem Mal gelöscht werden sollten, insbesondere wenn es derer viele gab.

Natürlich konnte das Ziel erreicht werden, indem die Passwort-Datenbank von Firefox aus dem Profilverzeichnis gelöscht worden ist. Beim nächsten Start von Firefox wäre diese neu generiert worden und leer gewesen. Ab Firefox 85 wird die vollständige Bereinigung aller Zugangsdaten aber auch direkt aus Firefox heraus möglich sein.

Alle Zugangsdaten löschen ab Firefox 85

Firefox 85 wird nach aktueller Planung am 26. Januar 2021 erscheinen.

Der Beitrag Firefox 85: Alle Passwörter mit einem Mal löschen erschien zuerst auf soeren-hentzschel.at.

Obwohl die meisten Anwender ihre Systeme mit Passwörtern entsperren gibt es zahlreiche weitere Methoden. TPM2, FIDO2 (YubiKey etc.) PKCS#11 sind hier die Schlagwörter. Das kommende systemd 248 wird diese Methode zum Start verschlüsselter Volumen unterstützen. Dies gab Lennart Poettering nun bekannt.

Vieles davon konnte man über den einen oder anderen Weg bisher auch irgendwie realisieren, aber mit Fallstricken und Handarbeit. Wie so oft setzt systemd hier an und vereinfacht das Ganze enorm und löst alte zusammen gebastelte Lösungen ab.

Abzuwarten bleibt wann das in welche Distributionen einfließt. Dabei geht es ja nicht nur um die Versionsnummer, sondern viele Distributionen (allen voran alle Debian Derivate) setzen nur teilweise auf systemd-Tools. Langfristig bin ich aber hier sehr optimistisch, da sich die meisten systemd-Entwicklungen langfristig durchgesetzt haben.

Es ist ja zum Glück nicht jede Distribution eine Geisel jener reaktionären Administratorengruppe, die aus Angst vor der Zukunft die Gegenwart leugnen und die partizipativen Möglichkeiten der Debian-Gemeinschaft zur Blockade nutzen.

Letztlich sind Passwörter nur eine unsichere Übergangslösung hin zu besseren Verfahren. Hardware-basierte Authentifizierung ist neben biometrischen Methoden eine Möglichkeit und meiner Meinung nach die bessere. Ich möchte ab kommende Woche eine kleine Serie zum YubiKey starten und dieser Artikel ist somit der inoffizielle Start.


Bilder:

Einleitungs- und Beitragsbild von ar130405 via Pixabay

Der Artikel systemd-cryptsetup mit Unterstützung für FIDO2 und weiteres erschien zuerst auf [Mer]Curius

Obwohl die meisten Anwender ihre Systeme mit Passwörtern entsperren gibt es zahlreiche weitere Methoden. TPM2, FIDO2 (YubiKey etc.) PKCS#11 sind hier die Schlagwörter. Das kommende systemd 248 wird diese Methode zum Start verschlüsselter Volumen unterstützen. Dies gab Lennart Poettering nun bekannt.

Vieles davon konnte man über den einen oder anderen Weg bisher auch irgendwie realisieren, aber mit Fallstricken und Handarbeit. Wie so oft setzt systemd hier an und vereinfacht das Ganze enorm und löst alte zusammen gebastelte Lösungen ab.

Abzuwarten bleibt wann das in welche Distributionen einfließt. Dabei geht es ja nicht nur um die Versionsnummer, sondern viele Distributionen (allen voran alle Debian Derivate) setzen nur teilweise auf systemd-Tools. Langfristig bin ich aber hier sehr optimistisch, da sich die meisten systemd-Entwicklungen langfristig durchgesetzt haben.

Es ist ja zum Glück nicht jede Distribution eine Geisel jener reaktionären Administratorengruppe, die aus Angst vor der Zukunft die Gegenwart leugnen und die partizipativen Möglichkeiten der Debian-Gemeinschaft zur Blockade nutzen.

Letztlich sind Passwörter nur eine unsichere Übergangslösung hin zu besseren Verfahren. Hardware-basierte Authentifizierung ist neben biometrischen Methoden eine Möglichkeit und meiner Meinung nach die bessere. Ich möchte ab kommende Woche eine kleine Serie zum YubiKey starten und dieser Artikel ist somit der inoffizielle Start.


Bilder:

Einleitungs- und Beitragsbild von ar130405 via Pixabay

LINBO ist eines der wesentlichen Features von linuxmuster.net – einer freien Schulserverlösung. Mit LINBO kann man viele PCs oder Laptops einfach und in wenig Zeit verwalten. Es hilft den administrativen Aufwand, den man mit vielen Geräten hat, in Grenzen zu halten. Viele Prozesse lassen sich zu dem automatisieren, sodass man fast alle Aufgaben, wie z.B. ein neues Image verteilen, aus der Ferne erledigen kann. Mit Version 7 hat linuxmuster.net ein neues & modernes Webinterface bekommen, einzig LINBO sah man das Alter mit seiner alten Benutzeroberfläche an. Doch damit scheint jetzt bald Schluss zu sein, denn eine neue GUI für LINBO befindet sich in der Testphase. Seht selbst.

Installation

Wer linuxmuster.net an der Schule bereits einsetzt und die neue GUI testen möchte (sie ist noch nicht für den produktiven Einsatz gedacht!), muss die „testing“-Paketquelle einrichten. Man öffnet die Datei /etc/apt/sources.list.d/lmn7.list und ändert die Einträge wie folgt ab:

deb https://archive.linuxmuster.net lmn7-testing/
deb-src https://archive.linuxmuster.net lmn7-testing/

Danach kann man nach einem „apt update && apt upgrade“ die neue GUI für LINBO installieren:

$ apt install linuxmuster-linbo-gui7

Fertig.

Neue Optionen für die start.conf

Mit der neuen GUI gibt es auch ein paar neue Optionen für die start.conf Datei, die man manuell oder im Webinterface einstellen kann. Da alles noch in der Entwicklung ist, können sich diese Parameter aber noch ändern:

UseMinimalLayout = yes
Locale = en-US
BackgroundColor = 0c2842

Man kann also neben der Hintergrundfarbe auch die Sprache einstellen. UseMinimalLayout = yes sorgt dafür, dass LINBO in mit einer minimalistischen GUI startet (die aber sehr schick aussieht, siehe Screenshots).

Screenshots

Linbo Bootscreen LINBO Standard Layout (hell) LINBO Standard Layout (dunkel) LINBO Minimalistische GUI LINBO Admin Menü Client registrieren Neues Image erstellen LINBO Terminal Betriebssystem synchronisieren

Fazit

Mir gefällt die neue GUI sehr. Sie sieht toll & modern aus und lässt sich gut bedienen. Vielen Dank an Dorian Zedler!

Der Beitrag Neue GUI für LINBO erschien zuerst auf zefanjas.

14. Januar 2021

Nach VPN-Clients für Windows 10, Android und iOS hat Mozilla das Mozilla VPN nun auch für macOS und Linux veröffentlicht.

Im Juli 2020 war das Mozilla VPN offiziell gestartet, damals mit Apps für Windows 10, Android und Apple iOS. Eine weitere Einschränkung: Das Mozilla VPN steht derzeit nur für Nutzer in den USA, Kanada, Großbritannien, Neuseeland, Singapur sowie Malaysia zur Verfügung.

Auf der Plattform-Seite gibt es nun Neuigkeiten: Ab sofort stehen auch VPN-Clients für Apple macOS (10.15 und höher) sowie Linux (Ubuntu Focal Fossa / 20.04) zur Verfügung. Die Unterstützung weiterer Plattformen und Features soll bald folgen.

Update 19.01.2021: Ab sofort wird auch Ubuntu Groovy (20.10) unterstützt.

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 280 Servern in mehr als 30 Ländern, hat keine Bandbreiten-Beschränkung und erlaubt die Verbindung auf bis zu fünf Geräten.

Die Nutzung des Mozilla VPNs kostet 4,99 USD pro Monat. Eine Vertragsbindung gibt es keine, die Kündigung ist also jederzeit möglich.

Wann das Mozilla VPN in weiteren Ländern zur Verfügung stehen wird, ist zu diesem Zeitpunkt noch nicht bekannt. Sobald es Informationen zur Verfügbarkeit im deutschsprachigen Raum gibt, wird man es natürlich auf dieser Seite lesen können.

Der Beitrag Mozilla VPN für Apple macOS und Linux veröffentlicht erschien zuerst auf soeren-hentzschel.at.

13. Januar 2021

Die MZLA Technologies Corporation hat mit Thunderbird 78.6.1 ein Update für seinen Open Source E-Mail-Client veröffentlicht.

Neuerungen von Thunderbird 78.6.1

Die MZLA Technologies Corporation hat Thunderbird 78.6.1 veröffentlicht und bringt damit wieder eine ganze Reihe von Fehlerbehebungen sowie kleineren Verbesserungen, die sich im Detail in den Release Notes (engl.) nachlesen lassen. Auch eine Sicherheitslücke wurde in Thunderbird 78.6.1 behoben.

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

12. Januar 2021

Mit dem heutigen Tag endet die Unterstützung für den Adobe Flash Player. Dieser wird nicht nur keine weiteren Updates mehr erhalten; Flash-Inhalte können ab heute auch nicht mehr ausgeführt werden.

Der Adobe Flash Player ist das letzte verbliebene NPAPI-Plugin, nachdem andere NPAPI-Plugins wie Oracle Java oder Microsoft Silverlight bereits seit Firefox 52 nicht mehr unterstützt werden. NPAPI-Plugins waren für viele Jahre ein wichtiger Teil der Webplattform. In den letzten Jahren hat deren Bedeutung aber immer stärker abgenommen. Praktisch alles, was früher ausschließlich mittels NPAPI-Plugin umsetzbar war, wird heute, dank entsprechender Weiterentwicklung von Webstandards, nativ durch die Browser unterstützt. Heute gelten NPAPI-Plugins vor allem aus einer Sicherheits-Perspektive als problematisch.

Wie bereits im Jahr 2017 angekündigt, hat Adobe mit dem heutigen Tag die Unterstützung für den Flash Player eingestellt. Firefox 84 ist die letzte Version mit Unterstützung für den Adobe Flash Player. Nichtsdestominder können auch Nutzer von Firefox 84 seit heute keine Flash-Inhalte mehr sehen.

Der Adobe Flash Player hat nämlich eine eingebaute „Zeitbombe“. Die Installation einer älteren Firefox-Version oder der Wechsel zu einem anderen Browser wird also nicht helfen: Flash-Inhalte sind nicht länger darstellbar. Anstelle von sichtbarem Flash-Inhalt erscheint nur noch eine Grafik, welche mit einer Info-Seite von Adobe verlinkt ist.

Support-Ende Adobe Flash Player

Nutzer, welche den Adobe Flash Player noch installiert haben, sollten diesen spätestens jetzt deinstallieren.

Der Beitrag Heute endet die Unterstützung für den Adobe Flash Player erschien zuerst auf soeren-hentzschel.at.

10. Januar 2021

Mit Firefox 85 wird Mozilla die sogenannte Netzwerk-Partitionierung ausliefern. Mit diesem Feature verbessert Mozilla weiter die Privatsphäre der Firefox-Nutzer.

Das Tracking von Internet-Nutzern erfolgt heute längst nicht mehr nur über Cookies. Auch eine Vielzahl anderer Technologien wird dazu missbraucht, um Nutzer seitenübergreifend zu verfolgen. Um dies zu erschweren und die Privatsphäre der Nutzer weiter zu verbessern, führt Mozilla mit Firefox 85 die sogenannte Netzwerk-Partitionierung ein. Dadurch werden Ressourcen, welche bislang in einem gemeinsamen Pool gespeichert worden sind, in Zukunft auf Website-Basis isoliert.

Firefox ist nicht der erste Browser, der eine Netzwerk-Partitionierung einführt. Apple hat dies bereits vor einigen Jahren in Safari getan, Google ist kürzlich mit Chrome nachgezogen. Allerdings, so schreibt ZDNet, wird Mozilla von allen Browser-Herstellern das bislang umfangreichste System zur Partitionierung einführen. Demnach umfasst die Netzwerk-Partitionierung von Firefox die folgenden Bereiche:

  • HTTP cache
  • Image cache
  • Favicon cache
  • Connection pooling
  • StyleSheet cache
  • DNS
  • HTTP authentication
  • Alt-Svc
  • Speculative connections
  • Font cache
  • HSTS
  • OCSP
  • Intermediate CA cache
  • TLS client certificates
  • TLS session identifiers
  • Prefetch
  • Preconnect
  • CORS-preflight cache

Die Netzwerk-Partitionierung soll außerdem die Blockierung sogenannter „Super-Cookies“ begünstigen.

Es wird erwartet, dass die Netzwerk-Partitionierung einen gewissen negativen Einfluss auf die Performance hat, da beispielsweise Schriftarten nicht mehr aus einem seitenübergreifenden Cache geladen werden. Mozilla nimmt dies für eine verbesserte Privatsphäre seiner Nutzer allerdings bewusst in Kauf.

Firefox 85 wird nach aktueller Planung am 26. Januar 2021 erscheinen.

Der Beitrag Firefox 85: Netzwerk-Partitionierung verbessert Privatsphäre erschien zuerst auf soeren-hentzschel.at.

9. Januar 2021

AVIF ist ein neues Bildformat der Alliance for Open Media (AOMedia), der auch Mozilla angehört. Mit Firefox 86 wird Mozillas Browser erstmals offiziell AVIF unterstützen.

Alliance for Open Media

Mozilla, Microsoft, Google, Netflix, Amazon, Cisco und Intel hatten sich 2015 zu einer Allianz zusammengeschlossen, um einen lizenzfreien Open Source Videocodec für das Web zu entwickeln. Mittlerweile gehören der Alliance for Open Media, kurz: AOMedia, noch weitere große Namen an, darunter Apple, Facebook, Netflix, Nvidia, AMD, ARM, Samsung, IBM, Tencent, Adobe, Vimeo, BBC, VideoLAN sowie viele weitere.

Video-Codec AV1

Ein Ergebnis dieser Zusammenarbeit ist der Videocodec AOMedia Video 1, kurz: AV1, den Firefox seit Version 65 offiziell unterstützt.

Eine der wichtigsten Eigenschaften von AV1 ist die Tatsache, dass es sich dabei um einen Open Source Codec handelt, der frei von jeglichen Lizenzgebühr-Ansprüchen ist. Nach Angaben von Mozilla kommt in 80 Prozent aller Videos, die wir uns im Web ansehen, patentierte Technologie zum Einsatz. Jedes Jahr werden von vielen Firmen viele Millionen nur dafür bezahlt, dass wir kostenlos Videos in hoher Qualität konsumieren können. Dieser Punkt entfällt mit AV1. Aber auch technisch ist AV1 der Konkurrenz überlegen und erreicht die gleiche Qualität wie H.264 bei nur halber Dateigröße.

Bildformat AVIF

AVIF steht für AV1 Image File Format und ist ein Bildformat, welches auf AV1 basiert und ebenfalls von AOMedia spezifiziert worden ist. Ähnlich wie AV1 bei Videos verspricht auch AVIF bei Bildern bei gleichbleibender Qualität deutlich geringere Dateigrößen als konkurrierende Formate wie JPG oder WebP.

Nachdem Firefox bereits seit langer Zeit eine experimentelle Unterstützung für AVIF besitzt, wird die Unterstützung für AVIF ab Firefox 86 standardmäßig aktiviert sein. Firefox 86 wird nach aktueller Planung am 23. Februar 2021 erscheinen.

Der Beitrag Firefox 86 unterstützt neues Bildformat AVIF erschien zuerst auf soeren-hentzschel.at.

8. Januar 2021

Ich stand eben vor dem Problem, dass Bild und Ton bei einem Video, das ich gerade gemacht hatte nicht übereinstimmten. Der Ton war immer einen Ticken schneller, als das Bild. Ich weiß nicht wie euch das geht, aber das lenkt mich total von einem Video ab.

Glücklicherweise geht das mit einem Linux bzw installiertem ffmpeg in er Konsole extrem schnell zu korrigieren, ohne dass aufwändig das Video neu gerendert werden muss. Ein 100MB Video brauchte bei mir etwas unter einer Sekunde.

Was du dazu brauchst sind folgende zwei Zeilen. Je nachdem, ob der Ton oder das Bild schneller ist ;)

Der wichtige, oder besser gesagt, die beiden wichtigen Parameter der beiden Zeilen sind

-itsoffset ZAHL in Sekunden z.B. 1 oder 0.5

-map 1:a:0 oder -map 1:v:0 je nachdem ob man Ton (audio) oder Bild (video) nach hinten verschieben will.

 

Ton ist schneller als das Bild

ffmpeg -i Inputvideo.mp4 -itsoffset 0.5 -i Inputvideo.mp4 -c:a copy -c:v copy -map 0:v:0 -map 1:a:0 outVideo.mp4

 

Bild ist schneller als der Ton

ffmpeg -i Inputvideo.mp4 -itsoffset 2 -i Inputvideo.mp4 -c:a copy -c:v copy -map 0:a:0 -map 1:v:0 outVideo.mp4

 

PS: Danke Sirpis für den Fehlerhinweis

 

 

6. Januar 2021

Mozilla hat Firefox 84.0.2 für Windows, Apple macOS sowie Linux veröffentlicht und behebt damit eine kritische Sicherheitslücke.

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

Mozilla hat Firefox 84.0.2 veröffentlicht und behebt damit eine von Mozilla als kritisch eingestufte Sicherheitslücke. Auch Firefox ESR wurde aktualisiert, die Versionsnummer lautet 78.6.1.

Der Beitrag Mozilla veröffentlicht Sicherheits-Update Firefox 84.0.2 erschien zuerst auf soeren-hentzschel.at.

In „Kanboard im Container“ habe ich einen Pod ins Leben gerufen, welcher die Anwendung Kanboard und eine dazugehörige Postgresql-Datenbank mittels Container bereitstellt. Backup und Restore zu konfigurieren und zu testen, habe ich letztes Wochenende nicht mehr geschafft. Dies hole ich in diesem Artikel nach.

Da die Container selbst zustandslos sind, interessieren mich nur die persistent gespeicherten Daten, welche außerhalb der Container im Dateisystem des Hosts gespeichert werden.

Umgebung

Auf einer virtuellen Maschine mit dem Gastbetriebssystem RHEL 8 läuft ein podman-Pod namens kanboardpod. Dieser Pod beinhaltet neben dem Infrastruktur-Container, einen Kanboard-Container namens kanboard und einen Postgresql-Container namens pgsql_db.

Die persistenten Daten des Kanboard-Containers werden in den Volumes kanboard_data und kanboard_plugins gespeichert. Die Datenbank-Dateien der Postgresql-DB liegen im Volume pgsql_data.

Die Namen des Pods und der Container sind hilfreich, da die Container darüber referenziert werden können. So muss man nicht mit den sperrigen IDs hantieren.

Backup

Kein Restore ohne Backup! Kein Backup, kein Mitleid!

Ich habe im Folgenden beschriebe Ansätze für ein Backup. Wenn ihr noch weitere habt, freue ich mich über eure Eingaben.

Ansatz 1: Backup auf Dateiebene — verworfen

Dieser Ansatz liegt nahe und ist einfach umzusetzen.

  1. Container stoppen
  2. Verzeichnisse im Dateisystem sichern
  3. Container wieder starten

Für meinen konkreten Anwendungsfall wäre dies auch ausreichend. Einen Dienst für die Dauer einer Datensicherung komplett stoppen zu müssen, ist jedoch nicht ideal. Daher schaue ich nach weiteren Möglichkeiten.

Ansatz 2: DB-Dump und Datei-Backup — Praktikabel aber möglicherweise inkonsistent.

Bei diesem Ansatz bleibt die Anwendung während der Datensicherung verfügbar. Während das Volume kanboard_data auf Dateiebene mittels tar gesichert wird, wird die Datenbank mittels pg_dump aus dem Container heraus gesichert. Das Backup-Skript sieht wie folgt aus:

#!/bin/bash
kanboard_data=$(podman volume inspect kanboard_data --format {{.Mountpoint}})
kanboard_plugins=$(podman volume inspect kanboard_plugins --format {{.Mountpoint}})
tar czf kanboardfiles.tgz $kanboard_data $kanboard_plugins
podman exec -t pgsql_db /usr/bin/pg_dump kanboard | gzip > ~/kanboard.sql.gz

Hinweis: Obiger Code-Schnipsel stammt aus der Kategorie Schnell-und-Schmutzig und sollte nicht in produktiven Umgebungen verwendet werden.

Der DB-Dump wird dabei direkt aus dem Container in mein Home-Verzeichnis geschrieben. Am Ende habe ich zwei unabhängige Dateien, die nun außerhalb der Container-Umgebung liegen. Da diese jedoch immer noch auf dem gleichen Host liegen, handelt es sich um kein richtiges Backup. Doch ist es nun nicht mehr schwer, sie auf ein anderes, entferntes Medium zu übertragen.

Der größte Nachteil dieses Ansatzes besteht darin, dass die Konsistenz der Sicherung nicht garantiert ist. Die Datenbank enthält Referenzen in das Dateisystem. Referenzen in der Datenbank und Inhalt des gesicherten Dateisystems müssen nicht in jedem Fall zueinander passen, da während der Sicherung weiter in der Anwendung gearbeitet werden kann.

Nun kann man natürlich vor der Sicherung den Container kanboard stoppen und anschließend wieder starten. Damit erhält man eine konsistente Sicherung zu dem Preis, dass die Anwendung temporär nicht verfügbar ist. Damit unterscheidet sich der Ansatz gegenüber Ansatz 1 nur noch darin, dass der Container pgsql_db online bleibt und man die DB mit pg_dump sichert, statt eine Sicherung auf Dateisystemebene zu machen.

Schön ist das nicht, doch mache ich es meiner Umgebung genau so.

Ansatz 3: Backup auf Basis eines konsistenten Dateisystem-Snapshots

Dies ist in meinen Augen der vernünftigste Ansatz.

Die persistenten Daten der Container liegen in einem Dateisystem. Unterstützt dieses Dateisystem Snapshots, können diese genutzt werden, um die Dateisysteminhalte zum Zeitpunkt des Snapshots auf das Backup-Medium zu übertragen und den Snapshot anschließend wieder zu entfernen. Anwendung und Datenbank können bei diesem Verfahren während der Sicherung weiterlaufen.

Das so erstellte Datenbank-Backup befindet sich allerdings in einem Zustand, als wäre die Datenbank unsauber beendet worden. Nach einem Restore werden demnach die WAL-Logs benötigt (siehe PostgreSQL 9.6.20 Documentation: 25.2. File System Level Backup).

Ich habe mich gegen diesen Ansatz entschieden, da mir in meiner Test-Umgebung noch die Erfahrung mit Dateisystem-Snapshots fehlt. Dies werde ich evtl. zu einem späteren Zeitpunkt unter die Lupe nehmen.

Restore

Ich habe mich für den Ansatz 2 entschieden. Damit habe ich folgende zwei Dateien:

  • kanboard.tgz – Enthält die persistenten Daten des Kanboards
  • kanboard.sql.gz – Enthält den Dump der Kanboard-Datenbank

Das tar-Archiv wird extrahiert und fertig. Um den DB-Dump mit dem Werkzeug pg_restore wieder einspielen zu können, muss dieser zuvor in ein Volume kopiert werden, das innerhalb des Postgresql-Containers zur Verfügung steht. Anschließend kann die Datenbank mit folgendem Befehl wiederhergestellt werden:

# pg_restore -C -d kanboard kanboard.sql

Fazit

Grundsätzlich habe ich Ziel Nummer 5 „Backup und Restore“ ebenfalls erreicht.

Der Restore erfordert noch einiges an Handarbeit und ist etwas fummelig. Soetwas möchte man in einer angespannten Situation nicht gerne haben. Hier ist noch etwas Feinschliff nötig.

Darüber hinaus kann ich mir vorstellen auch noch einen automatisierten Restore-Test zu etablieren, welcher prüft, ob sich ein erstellter DB-Dump auch wieder herstellen lässt. Das ist dann aber sicher ein eigenes Wochenendprojekt. Und nächstes Wochenende mache ich mal frei.

5. Januar 2021

Im Rahmen des von der Europäischen Union geförderten Bergamot Projects arbeitet Mozilla daran, eine Übersetzungsfunktion für den Browser zu entwickeln – und das vollständig ohne Online-Komponente wie Google Translate. Das Bergamot Project hat nun eine Vorschau auf die Firefox-Erweiterung gezeigt.

Bergamot Project: Website-Übersetzung im Browser

Bereits im Oktober 2019 berichtete ich über das Bergamot Project. Zur Erinnerung:

Hintergrund des Ganzen ist das von der Europäischen Union geförderte Bergamot Project, in dessen Rahmen Mozilla mit der University of Tartu (Estland), der University of Sheffield (England), der University of Edinburgh (Schottland) und der Charles University (Tschechien) kollaboriert, um eine vollständig clientseitige Funktion zur maschinellen Übersetzung von Websites für den Browser zu entwickeln.

Die clientseitige Durchführung der Übersetzung soll einerseits der Privatsphäre dienen, da kein Datenriese wie Google involviert ist, andererseits aber auch die Verbreitung von Sprachtechnologie in Europa fördern, und zwar in Bereichen, welche Vertraulichkeit erfordern und wo es dementsprechend keine Option ist, die Übersetzung in der Cloud durchzuführen.

Das Bergamot Project ist mit drei Millionen Euro durch die Europäische Union gefördert und auf drei Jahre ausgelegt. Damit das Projekt auch über die drei Jahre hinaus einen langfristigen Effekt hat, wird die Übersetzungsfunktion in Firefox integriert und alle Technologien, welche im Rahmen des Bergamot Projects entstehen, als Open Source veröffentlicht.

Vor kurzem hat das Bergamot Project eine erste Vorschau auf eine Prototyp-Erweiterung für Firefox gegeben:

auf Twitter ansehen

Das Video mit einer Länge von 35 Sekunden zeigt sowohl die Übersetzung von Text via Eingabefeld als auch die vollständige Website-Übersetzung innerhalb von Firefox.

Der Beitrag Maschinelle Übersetzungen ohne Cloud: Bergamot Project zeigt Vorschau auf Firefox-Erweiterung erschien zuerst auf soeren-hentzschel.at.

Die neue Lizenzpolitik von Qt wird langsam umgesetzt, wodurch die offenen LTS-Releaes entfallen. Ein Kurzkommentar.

Gerade habe ich bei LinuxNews das gelesen, was ich schon seit einigen Monaten befürchtet habe: zwar ist es bei der Veröffentlichung von Qt 6 ein wenig untergegangen, aber das Team hinter Qt zieht die Daumenschrauben für Open-Source-Entwickler kräftig an an. Kurzzusammenfassung: die Open-Source-Aktivitäten werden weiter heruntergefahren und Lizenznehmer der proprietären Lizenz bevorzugt.

Lesenswert in diesem Zusammenhang wäre einerseits die Mail von Olaf Schmidt-Wischhöfer vor einigen Monaten oder auch die Zusammenfassung von heise online.

Die ganze Geschichte ist ehrlich gesagt schwer durchsichtig, denn einerseits wurde ja entgegen der Befürchtung Qt 6 quelloffen veröffentlicht, andererseits machen die Maintainer mit dem auslaufenden LTS-Support ernst.

Dass erst kommerzielle Kunden die neuen Versionen erhalten und dann die Open-Source-Community wäre aus meiner Sicht auch eine Loose-Loose-Situation, denn zahlende Kunden wollen sicherlich ausgereifte, getestete Software und die Open-Source-Entwickler probieren eher Neues aus. Scheint aber (vorerst?) noch nicht so eingetreten zu sein.

Aus Entwicklersicht wird der Einsatz von Qt zunehmend problematischer – aber nicht wegen des Frameworks selber. Qt ist quasi wie ein Aufsatz auf C++ und in extrem vielen Komponenten besonders verzahnt. Das war mitunter noch kritischer als die C++-STL nicht so umfangreich war, gilt aber meines Erachtens weiter uneingeschränkt für die GUI-Komponenten.

Bei Qt droht tatsächlich wieder die Lizenzpolitik zum Ausschlusskriterium zu werden. Wieder? Ja, denn das hat 1998 schon einmal zu Problemen geführt. Da hat eines der größten Qt-basierten Projekte, die Desktopumgebung KDE, mit der Lizenz Schwierigkeiten gehabt. Zwei Ergebnisse hiervon sind die Desktopumgebung GNOME als Antwort auf genau dieses Lizenzproblem (GNOME setzte von Anfang an auf das freiere GTK) sowie eine Vereinbarung bzw. Intermediärsorganisation zwischen dem Qt- und KDE-Team, die erlaubt, bei Einstellung der Qt Free Version die letzte Version unter einer BSD-Lizenz o. ä. zu veröffentlichen.

Die Folgen wären allerdings für alle Beteiligten wenig wünschenswert, was wir an Forks wie LibreOffice oder LEDE (mittlerweile wieder zusammengeführt) sehen können.

Bleibt also die präventive Frage nach Alternativen, allerdings sieht es hier schlecht aus. Ich kenne bisher kein vergleichbares Framework in Umfang, Plattformunabhängigkeit und Stabilität. Am nächsten würde vielleicht noch Electron kommen, aber ich würde eher etwas Kompiliertes für Desktopanwendungen vorziehen.

2021 beginnt also mit so einigen offenen Fragen.

4. Januar 2021

Bisher ist es möglich, mittels Zurück-Taste eine Seite zurück zu navigieren. Mit Firefox 86 deaktiviert Mozilla diesen Shortcut, um mögliche Datenverluste zu vermeiden. Das Verhalten bleibt konfigurierbar, außerdem gibt es einen alternativen Shortcut.

Wer innerhalb eines Tabs einen oder mehrere Links anklickte und anschließend zurück navigieren wollte, brauchte dafür nicht zwingend die Maus, sondern konnte stattdessen auch die Zurück-Taste der Tastatur nutzen. Da es sich bei dieser Taste aber auch um eben jene Taste handelt, welche in Textfeldern benutzt wird, um Text zu löschen, was eine relativ häufige Nutzer-Interaktion ist, konnte es so schnell zu einem versehentlichen Zurück-Navigieren kommen, was im schlimmsten Fall auch zu einem Verlust von Eingaben führte.

Damit dies nicht länger passiert, passt sich Mozilla mit Firefox 86 anderen Browsern an, welche diesen Shortcut ebenfalls nicht unterstützen. Standardmäßig wird die Zurück-Taste damit nicht länger eine Seite zurück navigieren.

Das bedeutet keineswegs, dass die Tastatur nicht länger dazu genutzt werden könnte. Stattdessen kann wie gehabt auch Alt + Pfeil links (Mac: Cmd + Pfeil links) zum Zurück-Navigieren genutzt werden.

Und, anders als beispielsweise Chrome, wo es dazu eine Erweiterung benötigt, bietet Firefox eine Konfiguration an, um das Verhalten zu steuern. Wird über about:config der Schalter browser.backspace_action von 2 auf 0 gestellt, funktioniert die Zurück-Taste wie bisher auch zum Navigieren zurück.

Wird der Schalter stattdessen auf 1 gestellt, ist sogar ein ganz anderes Verhalten möglich: Dann verhält sich Firefox bei Druck der Zurück-Taste wie bei Druck auf die Bild Auf-Taste und scrollt ein Stück nach oben.

Der Beitrag Firefox 86: Mittels Zurück-Taste eine Seite zurück navigieren erschien zuerst auf soeren-hentzschel.at.

… aber das sind ja gleich zwei Dinge auf einmal. Richtig. Denn hier versuche ich, etwas nützliches (Kanboard) mit der Möglichkeit, etwas zu lernen (Container), zu kombinieren.

Inspiriert durch Dirks Artikel und einem darauf folgenden, regen E-Mail-Verkehr, widme ich mich mal wieder dem Thema Linux-Container. Zuletzt hatte ich mich ca. 2016/2017 damit befasst und es mit der Erkenntnis zu den Akten gelegt, dass es noch ein Hype und für den produktiven Einsatz wenig geeignet war. Mittlerweile hat sich die Lage etwas geändert. Einige Unternehmen haben sich des Themas angenommen und arbeiten daran, Linux-Container Enterprise-Ready zu gestalten. So nehme ich wahr, dass in meinem beruflichen Netzwerk seit ca. Anfang 2019 OpenShift-Cluster wie Pilze aus dem Boden schießen. Man könnte den Eindruck gewinnen, dass Red Hat diese Subskriptionen wie geschnitten Brot verkauft. Andere Hersteller scheinen den relativ jungen Markt nicht allein den roten Hüten überlassen zu wollen. So hat VMware mit vSphere 7 und Tanzu hier ebenfalls eine Lösung im Portfolio und auch SUSE scheint sich mit dem Kauf von Rancher in diesem Segment stärker zu engagieren.

Ich selbst möchte mein Wissen rund um dieses Thema auffrischen und habe mir daher folgendes Wochenendprojekt überlegt. Um Projekte, Aufgaben oder schlicht den Alltag besser zu organisieren, möchte ich zukünftig die Anwendung Kanboard nutzen. Diese Anwendung unterstützt die Aufgaben- bzw. Projekt-Organisation nach der Kanban-Methode. Sie macht einen minimalistischen Eindruck, kommt ohne viel Schnick-Schnack daher und scheint daher gut zu mir zu passen. Um gleichzeitig praktische Erfahrungen im Umgang mit Linux-Containern zu sammeln, werde ich Kanboard mit einer Postgresql-Datenbank mit Hilfe von zwei Containern betreiben.

In meinen Augen wird Docker in den nächsten Jahren sowohl als Firma wie auch als Werkzeug stetig an Bedeutung verlieren. Daher setze ich bei der Umsetzung meines Wochenend-Projekts auf die Werkzeuge podman, skopeo und buildah.

Ich gehe in diesem Text nicht auf die Konzepte, die Architektur, sowie die Vor- und Nachteile von Linux-Containern ein. Hierzu wurde in den letzten Jahren bereits genug an anderer Stelle geschrieben. Informationen zu diesen Themen finden sich in der — im Aufbau befindlichen — Linksammlung und am Ende dieses Artikels.

Umfeld

Als Basis für dieses Projekt dient mir eine virtuelle Maschine in meinem heimischen Labor. Als Betriebssystem nutze ich ein aktuelles RHEL 8 mit der kostenlosen Developer-Subskription. Diese VM dient mir als Host zum Ausführen diverser Linux-Container. Um die Container aus dem Netzwerk erreichbar zu machen, installiere ich NGINX aus den Paketquellen von RHEL 8. Dieser kümmert sich als Reverse-Proxy um die Portweiterleitung zu den Containern.

Ziele

Mit diesem Wochenendprojekt möchte ich folgende Ziele erreichen:

  1. Bereitstellung der Anwendung Kanboard mittels Linux-Container
  2. Nutzung von Postgresql mittels Container als Kanboard-Datenbank-Backend
  3. Persistente Speicherung der Kanboard-Inhalte im Dateisystem des Hosts
  4. Erreichbarkeit und Nutzbarkeit von Kanboard über den NGINX-Reverse-Proxy
  5. Einrichtung Backup und Restore
  6. Updates

Schritt 1: rootless-Container-Umgebung einrichten

Während Entwickler viel Schweiß und Tränen investiert haben, damit Dienste wie Apache oder NGINX nach ihrem Start die root-Rechte ablegen können, liefen die ersten Linux-Container durchgängig mit root-Rechten. Dies ist aus Sicht der IT-Sicherheit nicht wünschenswert. Daher ist es in meinen Augen erfreulich, dass es mittlerweile auch ohne root-Rechte geht; Kernel User Namespaces sei Dank.

Ich folge der Red Hat Dokumentation (Kapitel 1.4, [1]), um den User Alice für die Nutzung von rootless-Containern einzurichten.

# echo "alice:165537:65536" >> /etc/subuid
[root@podhost-r8-1 ~]# echo "alice:165537:65536" >> /etc/subgid
[root@podhost-r8-1 ~]# echo "user.max_user_namespaces=65636" > /etc/sysctl.d/userns.conf
[root@podhost-r8-1 ~]# sysctl -p /etc/sysctl.d/userns.conf
user.max_user_namespaces = 65636

Anschließend installiere ich wie in Kap. 1.3 [1] beschrieben die Container-Tools.

# yum module install -y container-tools
$ podman --version
podman version 2.0.5

Der Werkzeugkasten ist bestückt. Weiter zu Schritt 2.

Schritt 2: Container-Images suchen, inspizieren und herunterladen

Mit dem Kommando podman mache ich mich auf die Suche nach Containern für Kanboard.

$ podman search kanboard
INDEX       NAME                                            DESCRIPTION                                       STARS   OFFICIAL   AUTOMATED
docker.io   docker.io/kanboard/kanboard                     Official Docker image for Kanboard                34
docker.io   docker.io/webhippie/kanboard                    Docker images for Kanboard                        2                  [OK]
docker.io   docker.io/larueli/kanboard-nonroot              Safe image for Kanboard as Non Root / Suitab...   0
docker.io   docker.io/masker/kanboard                       use alpine linux build kanboard server            0
docker.io   docker.io/xoxys/kanboard                        Deprecated                                        0
docker.io   docker.io/dotriver/kanboard                     Kanboard on Alpine Linux + S6 Overlay             0
docker.io   docker.io/thegeeklab/kanboard                   Custom image for Kanboard Kanban project man...   0
docker.io   docker.io/jonats/kanboard-pi                    Raspberry Pi image for Kanboard                   0
docker.io   docker.io/bastilian/kanboard                                                                      0
docker.io   docker.io/oriaks/kanboard                       Kanboard                                          0                  [OK]
docker.io   docker.io/kanboard/tests                                                                          0
docker.io   docker.io/blufor/kanboard                       Kanboard with Postgres, SMTP and GitLab inte...   0                  [OK]
docker.io   docker.io/boomer/kanboard                       Kanboard is a simple visual task board web a...   0
docker.io   docker.io/joshuacox/kanboard-redmine            kanboard redmine importer                         0                  [OK]
docker.io   docker.io/janost/kanboard-unit                  Kanboard + nginx unit, running rootless with...   0
docker.io   docker.io/benoit/kanboard                                                                         0                  [OK]
docker.io   docker.io/lidstah/kanboard                      Kanboard armv71 debian (nginx/php7-fpm) base...   0
docker.io   docker.io/doc75/kanboard                                                                          0
docker.io   docker.io/witsec/kanboard                       Kanboard, with the option to filter (hide) s...   0                  [OK]
docker.io   docker.io/ionutalexandru97/kanboard-openshift   Kanboard ready to be deployed on OpenShift        0
docker.io   docker.io/hihouhou/kanboard                     simple kanboard                                   0                  [OK]
docker.io   docker.io/alxsdhm/kanboard                      kanboard image                                    0
docker.io   docker.io/papango/kanboard                                                                        0
docker.io   docker.io/mrtheduke/kanboard                    kanboard                                          0
docker.io   docker.io/kvorobyev/kanboard_app

Herzlichen Glückwunsch. Die Trefferliste stellt für mich als SysAdmin einen Alptraum dar. Sämtliche Treffer stammen vom Docker-Hub, einem riesigen Misthaufen für Software (welcher durchaus ein paar Perlen enthalten kann). Von den 26 Treffern ist keiner als OFFICIAL markiert, lediglich die Anzahl STARS bietet einen Anhaltspunkt, welcher Container den meisten Zuspruch findet. In einer Produktiv-Umgebung sollte man sich jedoch nicht allein auf diese Sterne verlassen. Ich inspiziere das Container-Image mit den meisten Sternen mit skopeo:

$ skopeo inspect docker://docker.io/kanboard/kanboard | less

Die vollständige Ausgabe spare ich hier aus. Sie ist wenig hilfreich. Mit ein wenig Internet-Recherche ([2], [3] und [4]) bin ich hinreichend sicher, das „offizielle“ Container-Image des Projekts gefunden zu haben.

Als nächstes mache ich mich auf die Suche nach Postgresql:

$ podman search postgresql | wc -l
64

Naja, zumindest an Auswahl scheint es auch diesmal nicht zu mangeln. Hier komme ich so jedoch nicht weiter. Also nehme ich einen Webbrowser zur Hand und recherchiere ein geeignetes Container-Image unter der URL: https://catalog.redhat.com/software/containers/explore

Da ich Red Hat bereits zutraue, eine stabile und hinreichend sichere Enterprise Linux Distribution zu bauen, traue ich ihnen auch zu, ordentliche Container-Images für Postgresql zu bauen. Daher fasse ich folgende drei Kandidaten ins Auge:

  1. rhel8/postgresql-96
  2. rhel8/postgresql-10
  3. rhel8/postgresql-12

Zu diesem Zeitpunkt (2020-12-27) fehlt Nr. 3 eine ordentliche Beschreibung. Dafür kommt dieses Image mit 6 offenen Sicherheitslücken daher. Nr. 2 besitzt nur 3 Schwachstellen und eine deutliche bessere Dokumentation zu dessen Verwendung. Und Nr. 1 ist zwar das Älteste, jedoch auch das mit einer guten Dokumentation und ohne Schwachstellen.

Kanboard erfordert Postgresql >= 9.4. Damit ist Nummer 1 mein Gewinner. Mit den beiden folgenden Kommandos hole ich mir die Kanboard- und Postgresql-Container-Images auf meinen Host.

$ podman pull docker.io/kanboard/kanboard
Trying to pull docker.io/kanboard/kanboard...
Getting image source signatures
Copying blob df20fa9351a1 done  
Copying blob 3108c8300796 done  
Copying blob b190b4dd9bb5 done  
Copying blob bb1f52abd628 done  
Copying blob e37ffd2cbe7b done  
Copying config c355188e0c done  
Writing manifest to image destination
Storing signatures
c355188e0c187bc891826d282cc850cbe0907ccd7df28d4487d024d831c4f9af

$ podman login --username=Joerg-Dev registry.redhat.io
Password: 
Login Succeeded!
$ podman pull registry.redhat.io/rhel8/postgresql-96
Trying to pull registry.redhat.io/rhel8/postgresql-96...
Getting image source signatures
Copying blob cca21acb641a done  
Copying blob 620696f92fec done  
Copying blob fca753c96be9 done  
Copying blob d9e72d058dc5 done  
Copying config f7266b012d done  
Writing manifest to image destination
Storing signatures
f7266b012db03478b858eba6af4264829b99ce9ac67d6bc8a7c273b5fc5c8e9a

Damit ist dieser Schritt abgeschlossen. In Schritt drei erstelle ich sogenannte Volumes, um Daten außerhalb der Container persistent im Dateisystem des Hosts speichern zu können.

Schritt 3: Persistenten Speicher für Container erzeugen

Nach dem Container-Mantra haben diese zustandslos zu sein. Dies bedeutet, dass in ihnen gespeicherte Daten verloren gehen, wenn der Container entfernt wird. Nun hat es die Elektronische Datenverarbeitung (EDV) so an sich, dass das Ergebnis der Verarbeitung häufig persistent zu speichern ist. Dies kann im Container-Universum mit sogenannten Volumes erledigt werden. Hierbei wird ein Verzeichnis vom Host in den Container eingehängt.

Für mein Projekt erstelle ich nach Kapitel 3.4 [1] folgende Volumes:

  • kanboard_data
  • kanboard_plugins
  • kanboard_ssl
  • pgsql_db
$ podman volume create VOLUMENAME

Um im Folgenden etwas leichter mit diesen Volumes arbeiten zu können, speichere ich den Einhängepfad in Variablen à la:

$ mntPoint=$(podman volume inspect VOLUMENAME --format {{.Mountpoint}})

Die obige Streichung erfolgte, da dieser Schritt nicht notwendig ist und im weiteren Artikel nicht mit entsprechenden Variablen gearbeitet wird.

Schritt 4: Kanboard konfigurieren

Um eine angepasste, persistente config.php-Datei für den Kanboard-Container zu schreiben, ist etwas Vorarbeit notwendig. Der Kanboard-Container wird gestartet und das Volume „kanboard_data“ wird dabei in den Pfad /var/www/app/data gemountet. Anschließend starte ich eine Shell im Container und kopiere die Datei /var/www/app/config.default.php nach /var/www/app/data/config.php.

$ podman run -d --name kanboard -v kanboard_data:/var/www/app/data:Z  kanboard/kanboard
93e6d7e3847fb94639b8fce89ddb93a3879a80522f95ed13dff91f6558594ac6
$ podman ps
CONTAINER ID  IMAGE                               COMMAND  CREATED        STATUS            PORTS   NAMES
93e6d7e3847f  docker.io/kanboard/kanboard:latest           5 seconds ago  Up 5 seconds ago          kanboard
$ podman exec -it 93e6d7e3847f /bin/bash
bash-5.0# cp /var/www/app/config.default.php /var/www/app/data/config.php
bash-5.0# exit
exit
$ podman stop 93e6d7e3847f && podman rm 93e6d7e3847f
$ vi $kanboard_data/config.php

Um Postgresql als Datenbank-Backend zu nutzen, werden folgende Werte in der config.php gesetzt:

// Run automatically database migrations
// If set to false, you will have to run manually the SQL migrations from the CLI during the next Kanboard upgrade
// Do not run the migrations from multiple processes at the same time (example: web page + background worker)
define('DB_RUN_MIGRATIONS', true);

// Database driver: sqlite, mysql or postgres (sqlite by default)
define('DB_DRIVER', 'postgres');

// Mysql/Postgres username
define('DB_USERNAME', 'root');

// Mysql/Postgres password
define('DB_PASSWORD', 'SuperSicheresPasswort');

// Mysql/Postgres hostname
define('DB_HOSTNAME', 'localhost');

// Mysql/Postgres database name
define('DB_NAME', 'kanboard');

// Mysql/Postgres custom port (null = default port)
define('DB_PORT', null);

Normalerweise würde man eine Anwendung niemals mit dem Datenbank-Root-User auf eine Datenbank zugreifen lassen. In dieser Umgebung ist es hingegen verschmerzbar, da nur die Daten des Kanboards in diesem Postgresql-Container gespeichert werden. Im Falle einer Kompromittierung verliere ich nur die zur Anwendung gehörende Datenbank.

Schritt 5: Pod erstellen und Container hinzufügen

Mit diesem Schritt habe ich etwas Mühe. Zuerst wollte ich einen Pod erstellen, den Kanboard- und Postgresql-Container zu diesem hinzufügen, um sie stets gemeinsam starten und stoppen zu können. Dies ist laut [1] und [7] der einfachste Weg. Allerdings habe ich dann in [5] und [7] gelesen, dass sich die Container eines Pods dessen IP, MAC und Port-Bindings teilen. Dies bedeutet, dass Portfreigaben für Kanboard (80 und 443 TCP) auch für den Postgresql-Container gültig sind. Dies möchte ich eigentlich nicht. Doch ist mir bisher nichts besseres eingefallen. Falls ihr Anregungen oder konkrete Beschreibungen habt, wie ich dies besser umsetzen kann, immer her damit.

Frickelpit hat mich in seinem Kommentar darauf hingewiesen, dass man den Zugriff auf den Port des Pods noch weiter beschränken kann, indem man diesen an 127.0.0.1 bindet. Ich habe unten stehenden Code-Block entsprechend aktualisiert.

Ich erstelle nun gemäß [7] einen neuen Pod, welcher den Kanboard-Container beinhaltet und für diesen Port-Bindings besitzt:

$ podman run -d --pod new:kanboardpod --name kanboard -p 127.0.0.1:8080:80 -v kanboard_data:/var/www/app/data:Z -v kanboard_plugins:/var/www/app/plugins:Z kanboard/kanboard
e62c7fa2ecf771f4085e788e9f0f7d24b7f87d487e9951a403847d8a7a2a6471

$ podman pod ps
POD ID        NAME         STATUS   CREATED        # OF CONTAINERS  INFRA ID
d7afa6821382  kanboardpod  Running  8 seconds ago  2                6b065fe7ecc7

$ podman ps
CONTAINER ID  IMAGE                               COMMAND  CREATED         STATUS             PORTS                 NAMES
6b065fe7ecc7  k8s.gcr.io/pause:3.2                         10 seconds ago  Up 10 seconds ago  0.0.0.0:8080->80/tcp  d7afa6821382-infra
e62c7fa2ecf7  docker.io/kanboard/kanboard:latest           10 seconds ago  Up 10 seconds ago  0.0.0.0:8080->80/tcp  kanboard

Im zweiten Schritt füge ich den Postgresql-Container hinzu:

$ podman run -d --pod kanboardpod --name pgsql_db -e POSTGRESQL_USER=root -e POSTGRESQL_PASSWORD=SuperGeheimesPasswort -e POSTGRESQL_DATABASE=kanboard -v pgsql_data:/var/lib/pgsql/data:Z rhel8/postgresql-96
c242a4b9b57d53a822585c9eb83d081d5abbd40cb2b5952aee4457fee041e128

$ podman ps
CONTAINER ID  IMAGE                                          COMMAND         CREATED        STATUS            PORTS                 NAMES
6b065fe7ecc7  k8s.gcr.io/pause:3.2                                           2 minutes ago  Up 2 minutes ago  0.0.0.0:8080->80/tcp  d7afa6821382-infra
c242a4b9b57d  registry.redhat.io/rhel8/postgresql-96:latest  run-postgresql  3 seconds ago  Up 3 seconds ago  0.0.0.0:8080->80/tcp  pgsql_db
e62c7fa2ecf7  docker.io/kanboard/kanboard:latest                             2 minutes ago  Up 2 minutes ago  0.0.0.0:8080->80/tcp  kanboard

Nun läuft ein Pod mit drei Containern (Infra-, Kanboard- und Postgresql-Container). Rufe ich http://IP-DES-HOSTS:8080 in einem Webbrowser auf, begrüßt mich bereits die Kanboard-Anmeldemaske (Bild 1).

Bild 1: Kanboard-Anmeldemaske

Schritt 6: Nacharbeiten

Der Start meines Postgresql-Containers wollte anfangs nicht glücken, da das Verzeichnis /var/lib/pgsql/data/userdata nicht erstellt werden konnte. Abhilfe für das Problem findet sich in der Red Hat Wissensdatenbank unter: https://access.redhat.com/solutions/3508731 (Login required)

Zwar konnte ich mich bereits an der Kanboard-Anwendung anmelden, neue Nutzer erstellen und Profileinstellungen verwalten, doch beim Dateiupload klemmte es noch. Hier musste ich noch das Verzeichnis $kanboard_data/files mit Dateimode ‚0777‘ erstellen. Anschließend habe ich in der config.php-Datei des Kanboard-Containers den folgenen Standardwert, wie im Codeblock gezeigt angepasst:

// Folder for uploaded files (must be writeable by the web server user)
// Folgende Zeilen wurden auskommentiert
// define('FILES_DIR', DATA_DIR.DIRECTORY_SEPARATOR.'files');

// Folgender Eintrag wurde hinzugefuegt
define('FILES_DIR', 'data/files');

Abschließend habe ich den Kanboard-Container mittels podman restart kanboard neugestartet.

Fazit

Bei der Internet-Recherche nach guter Dokumentation und der Arbeit mit einigen Container-Registries erinnere ich mich an ein Zitat:

Das Internet ist ein großer Misthaufen, in dem man allerdings auch kleine Schätze und Perlen finden kann.

Joseph Weizenbaum, Vortrag in Hamburg am 2. Mai 2001, heise.de

Bisher wurden die Ziele 1-3 erreicht. Die dabei verwendeten Befehlszeilen besitzen eine beachtliche Länge. Hier bietet es sich an, die Befehle in kurze Shell-Wrapper zu verpacken.

Die Ziele 4 und 5 werde ich in einem Folgeartikel, an einem anderen Wochenende, in Angriff nehmen. Und auch der Frage, wie man diesen Verhau am besten aktualisiert und Updates implementiert, werde ich noch nachgehen.

Ihr habt bis hierhin durchgehalten? Dann danke ich euch für euer Interesse. Was haltet ihr von diesem Wochend-Projekt? Wieviel Sinn bzw. Unsinn steckt darin? Bitte lasst es mich in den Kommentaren oder auch gern per E-Mail wissen.

Quellen und weiterführende Links

  1. Building, running, and managing Linux containers on Red Hat Enterprise Linux 8
  2. Kanban Project Management Software — Kanboard
  3. Running Kanboard with Docker
  4. Kaboard Releases
  5. https://podman.io/getting-started/network
  6. Error „mkdir cannot create directory /var/lib/pgsql/data/userdata : Permission denied“ when deploying Postgresql with persistent storage on Openshift Container Platform 3
  7. Podman: Managing pods and containers in a local container runtime; Brent Baude; January 15, 2019

3. Januar 2021

Mit Firefox 85 gibt Mozilla dem Nutzer mehr Kontrolle darüber, was beim Öffnen von Firefox respektive eines neuen Tabs passieren soll, wenn eine oder mehrere Erweiterungen installiert sind, welche die Startseite oder den neuen Tab überschreiben.

Hat der Nutzer eine Erweiterung wie New Tab Override installiert, öffnet Firefox mit jedem neuen Tab die in New Tab Override konfigurierte Seite anstelle der Standard-Startseite von Firefox. Während Nutzer, die sich New Tab Override installieren, vermutlich ganz bewusst den neuen Tab verändern wollen, gibt es auch andere Erweiterungen, welche ganz nebenbei, neben ihrer eigentlichen Kernfunktion, ebenfalls den neuen Tab überschreiben. Gleiches gilt für die Startseite von Firefox.

Bislang hätte auf die komplette Erweiterung verzichtet werden müssen, wenn die entsprechende Seite nicht überschrieben werden sollte. Und hatte man mehrere Erweiterungen installiert, welche die jeweilige Seite überschreiben, hat die Reihenfolge der Installation der Erweiterung bestimmt, welche Erweiterung „gewinnt“.

Ab Firefox 85 kann der Nutzer bestimmen, welche Erweiterung den Vorzug für die Startseite respektive den neuen Tab erhalten soll – oder gar keine Erweiterung, falls das Überschreiben nur eine unerwünschte Funktion einer Erweiterung ist. Dann kann auch weiterhin die Standard-Startseite von Firefox oder oder eine komplett leere Seite genutzt werden, ohne die Erweiterung deaktivieren zu müssen.

Einstellungen Neuer Tab in Firefox 85

Firefox 85 erscheint nach aktueller Planung am 26. Januar 2021.

Der Beitrag Firefox 85: Mehr Kontrolle über Startseite und neuen Tab erschien zuerst auf soeren-hentzschel.at.

Seit dem letzten Jobwechsel besitze ich am heimischen Arbeitsplatz ein Dell XPS 13 und nutze dazu die Thunderbolt-Dockingstation „CalDigit TS3 Plus“. Leider funktionierte sie bisher nicht so gut wie ich erwarten würde, da diese unter Last häufiger mal abstürzt und neu startet was vor allem dann passiert, wenn ich in Videocalls bin.

Praktisch wäre es ja, wenn es ein Firmware-Update geben würde, die mögliche Fehler korrigiert. Wenn man nun unter downloads.caldigit.com schaut, sieht man aber nur Möglichkeiten die Firmware zu aktualisieren für Windows und macOS. Hab ich leider beides nicht.

Auch wenn CalDigit keinen offiziellen Update-Mechanismus unter Linux anbietet, ist dies trotzdem möglich. Denn es lässt sich durch den fwupdmgr aktualisieren.

fwupdmgr ist ein Tool, um die Firmware von einzelnen Hardware-Komponenten des Rechners unter Linux zu aktualisieren. Bei meinen privaten und dienstlichen Laptops waren unabhängig von der Dockingstation einige Firmware-Aktualisierungen verfügbar. Bei mir sieht das aktuell wie folgt aus:

$ sudo fwupdmgr upgrade
Devices with no available firmware updates: 
    • TS3 Plus
    • Integrated Webcam HD
    • SSDPEMKF512G8 NVMe INTEL 512GB
    • Touchpad
    • UEFI dbx
Devices with the latest available firmware version:
    • System Firmware

Wie man sieht, wird mein Dock „TS3 Plus“ zwar aufgelistet, aber es findet automatisiert keine Updates.

Aufgelistet werden können die Devices mit fwupdtool:

$ sudo fwupdtool get-devices
Laden …                  [***************************************]
XPS 13 9300
│
├─TS3 Plus:
│     Device ID:          8c35acb4a72f912a0d0ccf6c27bb9eb2b866b02c
│     Current version:    35.00
│     Vendor:             CalDigit, Inc. (TBT:0x003D)
│     GUIDs:              22a019cc-64d4-592b-a5ea-259176b330cd ← THUNDERBOLT\VEN_003D&DEV_0011&REV_00
│                         7c778112-7403-5f54-aef8-2f4f4f50ce2f ← THUNDERBOLT\VEN_003D&DEV_0011
│                         4b455155-82b1-5d27-8093-70163de758c2 ← TBT-003d0011
│     Device Flags:       • Updatable
│                         • System requires external power source
│                         • Device stages updates
│   
[…]

Die Ausgabe erfolgt hier verkürzt. Die Dockingstation hat zurzeit die Firmware-Version 35 installiert. CalDigit bietet aber Version 44 an.

Im konkreten Fall kann unter downloads.caldigit.com der Windows Firmware Updater heruntergeladen werden. In dem ZIP-File befinden sich im TS3-Plus Ordner die einzelnen vorhandenen Firmware-Versionen. Hier wird CalDigit_TS3_Plus_44.01.bin benötigt.

Das Update lässt sich nun über fwupdmgr installieren:

$ sudo fwupdtool install-blob  

In meinem konkreten Fall also mit der Device-ID, die man über fwupdtool get-devices abrufen kann:

$ fwupdtool install-blob CalDigit_TS3_Plus_44.01.bin 8c35acb4a72f912a0d0ccf6c27bb9eb2b866b02c

Und das war es dann auch schon. Mit einem erneuten Prüfen mit fwupdtool get-devices wird nun die aktuelle Version angezeigt. Ob das nun meine Probleme gefixt hat, kann ich hingegen noch nicht sagen. Dafür ist das Update erst seit paar Minuten installiert.

2. Januar 2021

Dieser englischsprachige Artikel über eine Rust-Einführung ist mir soeben ins Auge gefallen.

Rust gewinnt in den letzten Jahren zunehmend an Bedeutung. Ich habe bereits öfter über Rust geschrieben und prophezeie der Sprache den Aufstieg in den C/C++/Java-Olymp – nicht all zuletzt wegen des Hypes und der guten PR. So werden wir sicherlich schon bald Rust-Code im Linux-Kernel begutachten können.

Ein klein wenig wundert es mich trotzdem, warum alle auf einmal auf diesen hype train aufspringen, da es im Gegensatz zu Python tatsächlich mit steigender Projektgröße schwieriger wird, validen Rust-Code zu formulieren. Dies wird besonders dann herausfordernd, wenn Traits, Lifetimes und Generics zusammenspielen sollen, da sich hier gerne mal die Sprache in den Weg stellt. Auf der anderen Seite gibt es üble Tricks, um doch noch Rusts „Zwang zu gutem Code“ zu umgehen. Wie dem auch sei.

Der oben verlinkte Artikel bietet einen kompakten Überblick über die Syntax und Paradigmen von Rust. Trotzdem gilt weiterhin und besonders für Rust: Übung macht den Meister.

1. Januar 2021

Unter dem Namen Proton arbeitet Mozilla an einem neuen Design für Firefox. Hier gibt es die allerersten Informationen zum neuen Proton-Design.

Nach Photon ist vor Proton

Mancher könnte beim Namen Proton auf die Idee kommen, es handele sich hier um einen Schreibfehler und es müsste eigentlich Photon heißen. Tatsächlich entwickelte Mozilla unter dem Namen Photon das aktuelle Design von Firefox, welches mit Firefox 57 im November 2017 eingeführt worden ist. Proton hingegen ist der interne Projektname des kommenden Firefox-Designs.

Wann kommt Proton?

Das neue Proton-Design ist nach aktueller Planung mit Firefox 89 zu erwarten. Die Veröffentlichung von Firefox 89 steht derzeit für den 18. Mai 2021 in Mozillas Release-Kalender. Wie üblich sind solche Planungen allerdings nicht in Stein gemeißelt, so dass es auch später werden kann. Vor diesem Zeitpunkt sollte allerdings auf keinen Fall mit dem neuen Firefox-Design gerechnet werden.

Gibt es bereits Bilder vom neuen Firefox-Design?

Ja. Tatsächlich gibt es bereits Mockups, welche das neue Firefox-Design zeigen. Wichtig ist dabei allerdings, dass das Design aktuell noch in Arbeit ist. Aus diesem Grund gibt es sogar mehrere Mockups, die jeweils unterschiedliche Design-Richtungen zeigen.

Ich konnte schon einige der frühen Mockups sehen und kann bereits sagen, dass Firefox mit dem neuen Design noch einmal eine ganze Spur moderner aussehen wird und sinnvolle Verbesserungen erhalten soll. Dazu weiter unten mehr.

Nun ist natürlich die Neugierde geweckt und es werden Bilder erwartet. Hier bitte ich um noch etwas Geduld. Natürlich werde ich, wie schon bei Photon, die Entwicklung intensiv verfolgen und schon bald die ersten Bilder zeigen. Zunächst möchte ich aber Mozilla noch etwas mehr Zeit geben, die finale Richtung des Designs zu bestimmen, ehe ich mit der Veröffentlichung früher Entwürfe eine verfrühte öffentliche Diskussion anstoße, die zu diesem Zeitpunkt nicht zielführend sein kann.

Wer die ersten Bilder von Proton nicht verpassen möchte, sollte regelmäßig in der Proton-Kategorie dieses Blogs nach neuen Artikeln Ausschau halten.

Nur ein neuer Anstrich oder mehr?

Proton bringt einen überarbeiteten visuellen Anstrich auf mehreren Ebenen. Dies schließt unter anderem die Darstellung von Tabs, dem Hauptmenü, Kontextmenüs sowie Hinweisleisten ein.

Aber Proton soll mehr als nur ein neues optisches Gewand sein. So evaluiert Mozilla auch mögliche Verbesserungen der User Experience. Ein Mockup zeigt beispielsweise seitlich plazierte Tabs im Kompakt-Modus. Ein anderes Mockup zeigt die Gruppierung sogenannter Tab-Umgebungen als aufklappbare Tabs.

Was es am Ende tatsächlich mit Einführung des Proton-Designs in die finale Version von Firefox schaffen wird, was vielleicht erst später kommen wird und ob überhaupt jede Idee umgesetzt werden wird, das kann zu diesem Zeitpunkt natürlich noch nicht beantwortet werden.

Kann Proton bereits jetzt getestet werden?

Nein. Zwar gibt es in der Nightly-Version von Firefox bereits den Schalter browser.proton.enabled, hinter welchem das neue Design entwickelt wird, Stand heute bewirkt dieser allerdings noch nichts. Dies wird sich natürlich im Laufe der nächsten Wochen und Monate ändern.

Der Beitrag Proton: Das wissen wir bereits über das neue Firefox-Design erschien zuerst auf soeren-hentzschel.at.

31. Dezember 2020

In guter alter Tradition melde ich mich auch dieses Jahr „zwischen den Jahren“ und wünsche allen Lesern meines Blogs ein gesundes, glückliches und frohes neues Jahr 2021!

Die IT hat im vergangenen Jahr gezeigt, dass sie entscheidende Unterstützung im Bezug auf das Arbeitsleben sowie die Bildungslandschaft liefern kann – wenn man denn will. Es traten verschiedenste Akteure zum Vorschein. Akteure, von denen ich wie im Beispiel Zoom bisher wenig gehört habe, da ich bis dato mit Videokonferenzen nur Skype verbunden habe. Oder aber auch Akteure, die lange Zeit ein Schattendasein fristeten wie BigBlueButton. Wir haben gelernt, dass dieser Umstand positive wie auch negative Auswirkungen haben kann. Aber ehrlich gesagt kenne ich BigBlueButton noch aus den Flash-Zeiten, der Umstieg auf HTML5 ist schon bemerkenswert. Apropos Flash: hier endet heute auch der Support, ab 12.01.2021 wird die Software gänzlich ihren Dienst verweigern.

2020 wird seine Spuren hinterlassen, nicht nur in den Statistiken vom DE-CIX. Was man allerdings hieraus macht, bleibt jedem selber überlassen. Egal wie gut oder schlecht das jeweilig eingesetzte Tool ist, was man nutzt – am Ende des Tages kommt es zu einem Großteil auch darauf an, wie gewillt man ist, die Situation zu gestalten. Wo ein Wille ist, da ist auch ein Weg.

Kurz noch ein paar Sätze zum Blog: In diesem Jahr habe ich in 30 Artikeln nicht nur die üblichen Open Source-Themen beleuchtet, sondern manchmal über kleine Lichtblicke berichtet, soweit es möglich war.

Meine Matomo-Installation habe ich mittlerweile komplett aus dem Blog entfernt, weshalb ich euch keine Zahlen berichten kann. Allerdings ist laut Google der Artikel über das Kopieren von ISO-Images auf USB-Sticks weiterhin der beliebteste auf dem gesamten Blog – dieses Jahr eingeschlossen.

Auch im Jahr 2021 versuche ich meinen Blog in alter Frische weiterzuführen sowie die eine oder andere Neuerung einzuspielen. Der geneigte Leser mag schon einmal in meinem Blog die Microblogging-Sektion entdeckt haben, die ich seit zwei Jahren breit ausrollen und nutzen möchte. Vielleicht wird es 2021 etwas. ;)

Ich würde mich freuen, auch euch im neuen Jahr wieder begrüßen zu können und schließe diesen Artikel mit dem üblichen PS zum Jahreswechsel: denkt an eure Footer!