staging.inyokaproject.org

Neueste Artikel

gestern

Mobilfunk ist eine unverzichtbare Technologie unseres Alltags – und gleichzeitig ein faszinierendes Beispiel für moderne Funksysteme. Während wir bei WLAN als Endnutzer oft sowohl das Endgerät als auch die Basisstation, den sogenannten Access Point, betreiben, ist der Mobilfunk weitaus komplexer und auch fachlich schwieriger zugänglich. Die Mobilfunknetze werden von großen Telekommunikationsunternehmen im lizenzierten Spektrum betrieben, und selbst auf unseren Telefonen bleibt die Interaktion mit dem Mobilfunknetz minimal. Meist reicht es, die SIM-Karte einzulegen, und schon funktioniert alles. Was viele nicht wissen: Auch Betriebssysteme wie Android oder iOS kommunizieren nicht direkt mit dem Mobilfunknetz. Diese Aufgabe übernimmt ein spezieller Chip, der sogenannte Baseband-Prozessor.

Open Source und Mobilfunk: Das Osmocom-Projekt

In der Open-Source-Welt gibt es nur wenige Projekte, die diese Funktechnologie zugänglich machen. Eines herausragendes Beispiel ist das Osmocom-Projekt. Schon ein erster Blick auf die Übersicht zeigt, dass es nicht "die eine" Mobilfunksoftware gibt. Vielmehr müssen viele verschiedene Komponenten ineinandergreifen und wie in einem Orchester zusammenspielen, um ein funktionierendes Netz bereitzustellen.

Sicherheitsforschung im Mobilfunk

Der Blick auf die Sicherheit sollte im Mobilfunk nicht vernachlässigt werden. So mag es überraschen, dass ältere GSM-Mobiltelefone deutlich unsicherer sind, als moderne Geräte, die auf LTE und 5G basieren. Hintergrund sind die verbesserten kryptographischen Verfahren.

Im Risikozone-Podcast haben wir uns in der Episode 65 mit der Mobilfunksicherheit genauer beschäftigt. Wir sprechen mit Adrian Dabrowski und Gabriel Gegenhuber über ihre Forschungsarbeiten und geben gemeinsam Einblick in eine Technologie, die als selbstverständlich wahrgenommen wird, aber in der Arbeitsweise völlig anders herangeht, als wir es aus der IETF-Welt mit TCP/IP & Co. gewöhnt sind.

Zusätzlich stellen Gabriel und Adrian das Open-Source-Projekt MobileAtlas vor. Dieses Projekt, inspiriert vom RIPE Atlas, widmet sich der Vermessung der Mobilfunkqualität und schafft eine interessante Plattform für weitere Analysen und Forschungsarbeiten.

Die 90-minütige Episode ist auf der Podcastseite oder direkt unter diesem Artikel abrufbar.

23. Januar 2025

Mozilla hat eine neue Erweiterungs-Schnittstelle vorgestellt, welche Entwickler von Firefox-Erweiterungen nutzen können, um Anwendungsfälle für Maschinelles Lernen und Künstliche Intelligenz lokal auszuführen.

Nutzer einer Nightly-Version von Firefox können ab sofort eine neue experimentelle Erweiterungs-Schnittstelle nutzen. Diese hat Mozilla auf seinem Blog vorgestellt.

Die Schnittstelle erlaubt die Nutzung jedes maschinellen Lernmodells, welches mit Transformers.js kompatibel ist, im Browser auszuführen, ohne dass dabei Anfragen an externe Server gesendet werden. Lediglich das verwendete Modell muss bei der ersten Nutzung heruntergeladen werden, ansonsten geschieht die Arbeit vollständig lokal.

Zwar können Webanwendungen bereits Transformers.js in JavaScript nutzen. Die Ausführung über Mozillas Erweiterungsschnittstelle bietet aber mehrere Vorteile: So wird die Inferenz-Runtime in einem eigenen isolierten Firefox-Prozess ausgeführt, was die Sicherheit und Robustheit verbessert. Die Modell-Dateien werden in einer IndexedDB gespeichert und über verschiedene Ursprünge hinweg gemeinsam genutzt. Außerdem erlauben Firefox-spezifische Leistungsverbesserungen eine verbesserte Performance.

Transformers.js verwendet „Aufgaben“, um Implementierungsdetails für die Ausführung bestimmter Arten von ML-Workloads zu abstrahieren. Für die erste Iteration stellt Firefox die folgenden Aufgaben zur Verfügung:

  • text-classification – Zuweisung eines Labels oder einer Klasse zu einem gegebenen Text
  • token-classification – Zuweisung eines Labels zu jedem Token in einem Text
  • question-answering – Abrufen der Antwort auf eine Frage aus einem gegebenen Text
  • fill-mask – Maskierung einiger Wörter in einem Satz und Vorhersage, welche Wörter diese Masken ersetzen sollen
  • summarization – Erstellung einer kürzeren Version eines Dokuments unter Beibehaltung der wichtigen Informationen.
  • translation – Konvertierung von Text von einer Sprache in eine andere
  • text2text-generation – Konvertierung einer Textfolge in eine andere Textfolge
  • text-generation – Erzeugen von neuem Text durch Vorhersage des nächsten Wortes in einer Sequenz
  • zero-shot-classification – Klassifizierung von Text in Klassen, die während des Trainings nicht gesehen werden
  • image-to-text – Ausgabe von Text aus einem gegebenen Bild
  • image-classification – Zuweisung eines Labels oder einer Klasse für ein ganzes Bild
  • image-segmentation – Unterteilung eines Bildes in Segmente, in denen jedes Pixel einem Objekt zugeordnet ist
  • zero-shot-image-classification – Klassifizierung von Bildern in Klassen, die beim Training nicht gesehen werden
  • object-detection – Identifizierung von Objekten bestimmter definierter Klassen in einem Bild
  • zero-shot-object-detection – Identifizierung von Objekten von Klassen, die beim Training nicht gesehen werden
  • document-question-answering – Beantwortung von Fragen zu Dokumentenbildern
  • image-to-image – Umwandlung eines Quellbildes, damit es den Merkmalen eines Zielbildes oder eines Zielbildbereichs entspricht
  • depth-estimation – Vorhersage der Tiefe von Objekten in einem Bild
  • feature-extraction – Umwandlung von Rohdaten in numerische Merkmale, die verarbeitet werden können, wobei die Informationen im Originaldatensatz erhalten bleiben
  • image-feature-extraction – Umwandlung von Rohdaten in numerische Merkmale, die unter Beibehaltung der Informationen im Originalbild verarbeitet werden können

Für jede Aufgabe hat Mozilla ein Standard-Modell ausgewählt. Der Erweiterungs-Entwickler kann aber auf jedes Modell zurückgreifen, welches auf Hugging Face entweder von Mozilla oder Xenova veröffentlicht worden ist. Derzeit können nur Modelle dieser zwei Organisationen genutzt werden. Dass diese Einschränkung gelockert wird, ist für die Zukunft denkbar.

So einfach könnte beispielsweise Code zur Zusammenfassung von Text mit dem entsprechenden Standard-Modell aussehen:

async function summarize (text) {
  await browser.trial.ml.createEngine({ taskName: 'summarization' });
  const result = await browser.trial.ml.runEngine({ args: [text] });
  return result[0]['summary_text'];
}

Im Vergleich mit anderen WebExtension-Schnittstellen gibt es zwei wichtige Unterschiede: Zum einen kann die notwendige Berechtigung erst nach der Installation einer Erweiterung durch den Benutzer erteilt werden. Außerdem werden Änderungen der Schnittstelle in der Zukunt erwartet. Aus diesem Grund nutzt die Schnittstelle den browser.trial-Namespace, statt die Funktionen direkt in browser bereitzustellen. Damit wird die Erwartungshaltung entsprechend gesetzt, dass es sich hierbei um eine Art „Vorschau“ handelt und in Zukunft eher Anpassungen der Erweiterungen notwendig werden, als es bei WebExtensions normalerweise üblich ist.

Die KI-unterstützte Generierung eines Beschreibungstextes für Bilder in PDF-Dateien ist ein in Firefox von Haus aus integriertes Feature, welches unter der Haube aber auf genau die gleiche Weise funktioniert. Mozilla hat diesen Anwendungsfall zusätzlich auch noch in Form einer Erweiterung implementiert, um Entwicklern ein praktisches Beispiel zu geben, welches auch andere relevante Themen wie die Abfrage der Berechtigung behandelt.

Der Beitrag Mozilla stellt Erweiterungs-Schnittstelle für Lokale KI in Firefox vor erschien zuerst auf soeren-hentzschel.at.

21. Januar 2025

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

Download Mozilla Firefox 134.0.2

Mit Firefox 134.0.2 behebt Mozilla das Problem, dass Links auf lokale Dateien in HTML-Framesets nicht mehr funktionierten.

Für Nutzer von Firefox in manchen Sprachen erschien der Absturzmelder nach einem Firefox-Absturz nicht.

Ein Problem in den Entwicklerwerkzeugen wurde behoben, welches das erneute Senden von Netzwerkanfragen beim Debuggen von Erweiterungen verhinderte.

Außerdem wurden noch ein Problem in Zusammenhang mit Service Workers sowie eine mögliche Absturzursache behoben.

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

20. Januar 2025

Die Umfrage zeigt interessante Ergebnisse zur Nutzung der rollenden Distribution. Ich habe die Aussagekräftigsten für euch herausgesucht.

Vor etwa einem Monat hat ein Moderator der Arch-Linux-Reddit-Community eine Umfrage mit über 35 Fragen veröffentlicht, die verschiedene Aspekte der Interaktion der Benutzer mit der Distribution untersucht. Es wurden 3.923 Antworten gesammelt, und die Ergebnisse wurden nun öffentlich zugänglich gemacht. Sie bieten wertvolle Einblicke in die Art und Weise, wie die Community Arch Linux sieht und nutzt, wobei einige der Ergebnisse besonders interessant sind. Hier ist eine Zusammenfassung der interessantesten Highlights.

Bei der Frage nach der Desktop-Umgebung zeigt sich folgendes Bild:

Mit 37 % führt KDE Plasma gefolgt vom Tiling Compositor Hyprland mit 26 % und GNOME mit nur 11 %. Hinweis: die Legende stimmt nicht. Die ungewohnte Verteilung bei den DEs könnte man darauf zurückführen, dass Arch eher in der Nerd-Ecke Anhänger findet.

Als rolling release Distribution empfiehlt sich Arch nicht als Server-Betriebssystem, was die vorherige Grafik klar zeigt. Nur 1 % sagt, Arch auf einem Server zu verwenden.

Das Verhältnis zwischen der Nutzung der Kommandozeile und von grafischen Anwendungen beträgt 2 zu 1. Auch dieser Wert spricht für den Nerd- bzw. Profi-Charakter dieser Distribution. Bei Distros, die sich eher an Anfänger:innen wenden, dürfte der CLI-Wert erheblich geringer sein.

Beim bevorzugten Webbrowser dominiert Firefox und Derivate das Bild:

Hier hat Firefox mit 75 % klar die Nase vorn, während Chrome mit 5 % noch hinter Brave mit knapp 10 % liegt.

Interessant finde ich das 80:20-Verhältnis beim Display-Server. Nur noch 20 % setzen auf den X-Server.

Und hier das Ergebnis für die bevorzugten CPUs und GPUs:

Beim Hauptprozessor führt AMD leicht vor Intel. Das Rennen um den bevorzugten Grafikprozessor gewinnt AMD mit 42 % dicht gefolgt von Nvidia mit 40 %. Hinweis: auf den ersten Blick erscheint Nvidia als Gewinner, weil die AMD und Intel GPUs in 'integrated' und 'dedicated' aufgeteilt sind.

Erstaunlich finde ich, dass der geführte Installationsprozess (archinstall) immerhin auf 33 % kommt. Dennoch verwendet eine Mehrheit von 55 % das By-the-way Verfahren.

Eine Mehrheit von 66 % hält den Umgang mit Arch-Linux für einfach. Weniger als die Hälfte davon (29 %) halten den Umgang für moderat und nur 5 % für schwierig.

Beim Dateisystem für die Root-Partition setzen 60 % auf ext4 und 35 % auf Btrfs. Die restlichen 5 % verteilen sich auf sechs andere Dateisysteme.

Arch-User scheinen sehr zufrieden mit ihrem System zu sein. In der Fünf-Sterne-Bewertung erreicht Arch-Linux den hohen Durchschnittswert von 4.66.

Die Umfrageergebnisse halten noch mehr Auswertungen und Details bereit.

Quellen:

Fragen: https://www.reddit.com/r/archlinux/

Ergebnisse: https://docs.google.com/forms/d/1c1MAsXxMFp_UbNJur5-v7k5-4aBWzsm9fXmdZp7dmpA/viewanalytics


GNU/Linux.ch ist ein Community-Projekt. Bei uns kannst du nicht nur mitlesen, sondern auch selbst aktiv werden. Wir freuen uns, wenn du mit uns über die Artikel in unseren Chat-Gruppen oder im Fediverse diskutierst. Auch du selbst kannst Autor werden. Reiche uns deinen Artikelvorschlag über das Formular auf unserer Webseite ein.

16. Januar 2025

15. Januar 2025

20 Jahre Zockertown – ein kleiner Rückblick

Wahnsinn, wie schnell die Zeit vergeht: Mein Blog Zockertown.de ist tatsächlich 20 Jahre alt geworden! Am Donnerstag, den 13. Januar 2005 um 21:01 Uhr ging der allererste Artikel online. Damals hätte ich nie gedacht, dass ich zwei Jahrzehnte später immer noch hier sitzen würde, um euch an meinen Gedanken, Spielen und Erlebnissen teilhaben zu lassen.

Inzwischen sind 1626 Artikel zusammengekommen – von spontanen Ideen bis zu aufwendigeren Beiträgen. Der letzte offizielle Eintrag stammt übrigens vom Samstag, 23. November 2024 um 11:11 Uhr. Nicht immer habe ich ganz pünktlich zum Geburtstag einen Artikel verfasst, aber alle paar Jahre packt mich dann doch die Nostalgie, und ich schreibe einen kleinen Rückblick.

Ein Beispiel für einen solchen “Geburtstagsartikel” findest du hier:
Geburtstag gehabt und keiner hat's gemerkt…

Was bleibt nach 20 Jahren?

  • Viel Spaß, den ich an Spielen und am Schreiben hatte.
  • Eine Menge Erinnerungen, die in den ganzen Artikeln weiterleben.
  • Das Gefühl, eine kleine “Online-Heimat” geschaffen zu haben, zu der ich immer wieder gern zurückkehre.

Ich danke allen, die hier vorbeischauen, Kommentare dalassen oder einfach still mitlesen. Auf die nächsten Jahre voller neuer Games, Ideen und Texte – und vor allem auf viele weitere Momente, in denen wir zusammen zocken und darüber schreiben können!

Happy Blog-Geburtstag, Zockertown!

14. Januar 2025

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

Download Mozilla Firefox 134.0.1

Mit Firefox 134.0.1 behebt Mozilla einen sogenannten Speicher-Leak, der sich zuletzt für einige Nutzer vor allem auf Google-Diensten wie YouTube und Google Docs in Form von Performance-Problemen bemerkbar machte.

Eine mögliche Absturzursache wurde behoben, welche für manche Nutzer nach dem letzten Firefox-Update den Start des Browsers verhindern konnte.

Außerdem wurde ein Problem behoben, welches für Nutzer, die das gleiche Profil mit unterschiedlichen Firefox-Versionen nutzen (was keine offiziell unterstützte Konfiguration ist), verursachen konnte, dass Suchmaschinen und Kontextmenüs nicht mehr korrekt funktionierten.

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

Wer sein /e/OS-Smartphone auf Android 14 upgraden möchte, sollte darauf achten, ob es sich um ein Community- oder ein Official-Gerät handelt. Im ersten Fall steht Arbeit an.

Verwendet hier jemand Murenas /e/OS-Distribution für Android-Smartphones? Dann gilt es jetzt aufzupassen. Wie die e-Foundation am 9. Januar mitgeteilt hat, wird /e/OS von AOSP 13 auf AOSP 14 aktualisiert. AOSP ist die Abkürzung für das Android Open Source Project, die quelloffene Basis von Googles Android.

Die meisten alternativen Smartphone-Betriebssysteme basieren auf AOSP und modifizieren diese Basis, um den Anwender:innen ein alltagstaugliches Erlebnis Arbeiten auf ihren Android-Gerät zu ermöglichen. /e/OS basiert nicht direkt auf AOSP, sondern bedient sich der Vorarbeit von LineageOS, um möglichst viele Geräte unterstützen zu können. Wer /e/OS bisher nicht kennt, findet hier die wesentlichen Information.

Android-Versionen

  • Die neueste produktive Android-Version ist Version 15, die am 3. September 2024 erschienen ist
  • Seit dem 31. Dezember 2024 basiert LineageOS ebenfalls auf AOSP Version 15
  • Die Derivate hängen immer mindestens eine Version hinterher, so auch /e/OS

Wenn ihr auf das Datum der letzten Version von LineageOS schaut, könnt ihr euch vorstellen, dass diese Geräte mehrheitlich mit älteren Version (14, 13) laufen. Deshalb ist es verständlich, dass /e/OS erst jetzt den Schritt von AOSP 13 auf 14 macht.

Herausforderungen bei Murena, e-Foundation und /e/OS

Drei Namen in der Überschrift? Gaël Duval verwendet verschiedene Namen:

  • Die Murena Retail SAS sitzt in Paris und kümmert sich um den Vertrieb der Smartphones
  • Die e-Foundation ist eine gemeinnützige Organisation nach französischem Vereinsgesetz
  • Die e-Foundation entwickelt die entgoogelte Android-Distro /e/OS

Neben den Geräten und der AOSP-Distribution liefert die e-Foundation auch einen Cloud-Dienst. In dessen Genuss gelangen alle Kunden, die bei Murena ein Telefon kaufen. Bei diesem Cloud-Dienst handelt es sich um eine Implementierung von Nextcloud für alle Murena- aka e-Foundation-Kunden.

Anfang Oktober 2024 gab es bei der Infrastruktur von Murena ein groben Ausfall. Wer sich für die Details interessiert, findet hier den Verlauf. Betroffen waren alle Dienste der Murena-Cloud sowie die /e/OS-Update-Dienste und der Software-Store AppLounge - also fast alles. Zur Begründung schrieb Gael Duval im Forum der e-Foundation:

Der Grund für diesen Ausfall liegt in unserer Speicherinfrastruktur, die in die Jahre gekommen ist, während die Zahl der 1,8k aktiven Nutzer von murena.io in den letzten zwei Jahren stark gewachsen ist. Eine Weiterentwicklung und Konsolidierung der Infrastruktur war geplant, aber letzte Woche verlor unsere aktuelle Infrastruktur einige Speicherknoten und wechselte in einen  einen degradierten Modus. Leider hatten wir gestern ein weiteres Problem, das uns dazu zwang  die Infrastruktur in den Wartungsmodus zu versetzen, bis sie vollständig wiederhergestellt ist.

Soweit ich das verfolgen konnte, haben manche Anwender:innen Daten in Murenas Cloud (sie nennen es Workspace; es ist Nextcloud) verloren. Ich selbst war nicht davon betroffen, weil ich meine Nextcloud selbst hoste. In den vergangenen 4 Monaten wurden die Dienste nach und nach wieder bereitgestellt. Dennoch gibt es beim Installieren und Aktualisieren von Apps aus dem Google Play Store noch Probleme:

Wir empfehlen, vorerst KEINE Google-Apps auf /e/OS zu aktualisieren. Deaktivieren Sie die automatischen Aktualisierungen in App Lounge, wenn Sie Google-Apps verwenden, und aktualisieren Sie die Apps einzeln. Neu aktualisierte Google-Apps haben eine Signatur-Inkompatibilität, die verhindert, dass sie funktionieren. Das Team arbeitet daran, eine Lösung zu finden. Wir werden Sie auf dem Laufenden halten.

Insbesondere für Einsteiger:innen ist das Angebot verlockend, mit einem entgoogelten Smartphone gleich noch eine Cloud-Lösung (Murena Workspace) mitgeliefert zu bekommen. Am obigen Beispiel seht ihr, was passieren kann, wenn ihr die Kontrolle über eure Daten an andere abgebt. Deshalb gilt: hostet eure Cloud in einer Umgebung, der ihr vertraut und die ihr kontrolliert.

Das 14er-Upgrade

Beim Upgrade auf Android 14 kommt es darauf an, ob ihr ein Community- oder Official-Gerät habt. Fall ihr das nicht wisst, lohnt sich ein Blick auf die Geräteliste. Dort werden die 217 unterstützten Smartphones aufgeführt. In der dritten Spalte (/e/OS-Version) steht entweder 'Official' oder 'Community'. Falls ihr ein Official-Gerät habt, müsst ihr nichts tun. Das Upgrade auf Android 14 wird demnächst automatisch auf dem Gerät (OTA: over the air) installiert. Bei den Community-Geräten müsst ihr selbst Hand anlegen. Murena schreibt dazu:

Wir möchten Sie über ein wichtiges Update für etwa 100 Community-Geräte informieren. Beginnend mit dem /e/OS 2.6.3-Build werden diese Geräte AOSP 14 (U) Unterstützung erhalten. Die Liste der aktualisierten Geräte finden Sie in den /e/OS 2.6.3 (U) Release Notes. In der Zwischenzeit werden wir weiterhin die Geräte mit /e/OS- AOSP 13 (T) durch OTA-Updates für mehrere Monate unterstützen, um Ihnen die Möglichkeit zu geben, manuell auf /e/OS basierend auf AOSP 14 zu aktualisieren.

Was heisst das?

  • OTA-Updates auf AOSP 13 für diese Geräte werden noch mehrere Monate lang zur Verfügung stehen.
  • Es wird kein OTA-Upgrade von AOSP 13 auf AOSP 14 zur Verfügung gestellt, sodass die Nutzer manuell auf /e/OS-AOSP 14 aktualisieren oder neu installieren müssen.
  • Die Nutzer werden keine automatischen Benachrichtigungen über diese Änderung erhalten (wir arbeiten daran, diese Funktion in naher Zukunft hinzuzufügen).
  • Geräte, für die es kein AOSP 14-Build gibt, behalten die Unterstützung für AOSP 13.

In der Geräteliste findet ihr in der fünften Spalte Installationsanleitungen für jedes unterstützte Smartphone. Wenn euer Gerät sowohl als "Official", als auch als "Community" aufgeführt ist, gilt Folgendes:

  • Wenn du die offizielle Version hast, dann ist es besser, auf das OTA-Upgrade zu warten
  • Wenn du eine Community-Version hast, dann aktualisierst du manuell auf AOSP 14

Quellen:

https://community.e.foundation/t/important-update-e-os-is-moving-from-aosp-13-to-aosp-14-for-100-community-devices/65022

https://community.e.foundation/t/update-on-murena-io-service-outage/61781

https://doc.e.foundation/devices


GNU/Linux.ch ist ein Community-Projekt. Bei uns kannst du nicht nur mitlesen, sondern auch selbst aktiv werden. Wir freuen uns, wenn du mit uns über die Artikel in unseren Chat-Gruppen oder im Fediverse diskutierst. Auch du selbst kannst Autor werden. Reiche uns deinen Artikelvorschlag über das Formular auf unserer Webseite ein.

10. Januar 2025

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

Neuerungen von Thunderbird 128.6

Mit dem Update auf Thunderbird 128.6 hat die MZLA Technologies Corporation ein planmäßiges Update für seinen Open Source E-Mail-Client veröffentlicht. Das Update bringt wie immer diverse Fehlerbehebungen und Verbesserungen unter der Haube, welche sich in den Release Notes (engl.) nachlesen lassen. Auch wurden diverse Sicherheitslücken geschlossen.

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

7. Januar 2025

Mozilla hat Firefox 134 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

Endnutzer-Neuerungen von Firefox 134

Für Nutzer in den USA und Kanada wird schrittweise ein angepasstes Layout für die Startseite ausgerollt, welches bis zu vier statt drei Content-Empfehlungen pro Zeile erlaubt und die Positionierung von Logo und Wetter-Widget so anpasst, dass die Suchleiste, Verknüpfungen und Content-Empfehlungen weiter oben erscheinen.

Firefox View sowie die Sidebar für synchronisierte Tabs zeigen nicht mehr nur maximal 50 Tabs von anderen Geräten an, sondern bis zu 5.000.

Firefox folgt nun stärker der HTML-Spezifikation, was die vorübergehende Benutzeraktivierung betrifft. Durch diese Änderung wird die Blockierung von Popups in Fällen, in denen frühere Firefox-Versionen zu aggressiv waren, weniger streng gehandhabt, wodurch fehlerhafte Blockierungsaufforderungen reduziert werden.

Unter Linux werden jetzt Touchpad-Haltegesten unterstützt. Das bedeutet, dass der kinetische Bildlauf unterbrochen werden kann, indem zwei Finger auf das Touchpad gelegt werden.

Bei Verwendung eines Convertible-Gerätes mit Windows 11 passt Firefox automatisch die Oberflächengröße beim Wechsel zwischen Laptop- und Tablet-Modus an, wenn die Touch-Oberfläche für die Tablet-Nutzung aktiviert ist.

Ein Problem mit der Übersetzungsfunktion wurde behoben, welches verursachen konnte, dass manche Inhalte nicht angezeigt worden sind, wenn die automatische Übersetzung aktiviert ist. Außerdem wurde ein Problem der Übersetzungsfunktion in Zusammenhang mit select-Feldern behoben.

Das Erweiterungs-Menü unterstützt die Anzeige von Warnmeldungen für „Soft Blocks“, also Erweiterungen, welche von Mozilla zum Beispiel aus Gründen der Stabilität aus der Ferne deaktiviert worden sind, aber vom Nutzer wieder aktiviert werden können.

Mit browser.tabs.insertAfterCurrentExceptPinned wird eine neue Option in about:config bereitgestellt, um zu beeinflussen, wo Links, die aus angepinnten Tabs heraus geöffnet werden, angezeigt werden. Standardmäßig öffnen diese am Anfang der Tableiste. Nach Setzen des Schalters auf true öffnen diese am Ende der Tableiste.

Die Leseansicht respektiert jetzt die in den Schriftarten-Einstellungen hinterlegten Schriften für Serif, Sans Serif und Feste Breite.

Die Performance der Quelltext-Ansicht wurde verbessert.

Das Problem auf macOS Sonoma und höher wurde behoben, dass neben dem Öffnen des Emoji-Wählers auch der Buchstabe „e“ in ein Textfeld eingefügt wurde, wenn die Tastenkombination Fn + e gedrückt wurde. Ebenfalls kann der Emoji-Wähler über die Tastenkombination Ctrl + Cmd + Leertaste geöffnet werden. Dabei hatte sich dieser, ebenfalls seit macOS Sonoma, sofort wieder geschlossen. Auch das Problem wurde behoben.

Für den Zugriff auf lokale Adressen ist seit macOS Sequoia eine neue Berechtigung auf Systemebene erforderlich. Die in diesem Fall von Firefox gezeigte Fehlerseite zeigt jetzt einen entsprechenden Hinweis an.

Ebenfalls macOS betrifft eine Änderung bei der Schriftglättung, deren Ergebnis nun mehr dem von Safari entsprechen sollte.

Die Unterstützung für das Debuggen von Erweiterungen wurde verbessert, unter anderem durch ein automatisches Nachladen des Quellcodes der Erweiterung im Debugger, wenn die Erweiterung neu geladen wird.

Das Netzwerk-Panel der Entwicklerwerkzeugezeigt Informationen über Early Hints an, einschließlich einer speziellen Anzeige für den 103 HTTP-Statuscode in der Benutzeroberfläche an.

Mehr Sicherheit für Firefox-Nutzer

Auch in Firefox 134 wurden wieder mehrere Sicherheitslücken geschlossen. Alleine aus Gründen der Sicherheit ist ein Update auf Firefox 134 daher für alle Nutzer dringend empfohlen.

Die Content-Sandbox unter Windows wurde um eine weitere Stufe auf Level 8 erhöht.

Verbesserungen der Webplattform

Firefox 134 unterstützt den Video-Codec HEVC. Allerdings bisher nur auf Windows und bei Verwendung eines Gerätes mit Unterstützung für diesen Codec.

Die CSS-Eigenschaften align-self und justify-self sowie die CSS-Shortendeigenschaft place-self werden jetzt für absolut positionierte Elemente unterstützt.

WebRTC-Simulcast von gemeinsam genutztem Video mit dem VP8-Codec wird jetzt unterstützt. Von anderen Videoquellen war dies bereits möglich.

Dies war nur eine kleine Auswahl der Verbesserungen der Webplattform. Eine vollständige Auflistung lassen sich in den MDN Web Docs nachlesen.

Feature-Vorschau

SmartBlock-Platzhalter für Instagram- und TikTok-Content

Durch Setzen von extensions.webcompat.smartblockEmbeds.enabled auf true können auf Websites eingebettete Instagram- sowie TikTok-Inhalte durch einen Platzhalter ersetzt werden. Als weitere Voraussetzung muss hierfür der Schutz vor Aktivitätenverfolgung in den Datenschutz-Einstellungen auf die strenge Stufe geschaltet sein. Erst nach einem Klick auf einen Button wird dann der tatsächliche Inhalt dann geladen. In Zukunft soll diese Funktion auch für weitere Einbettungen zur Verfügung stehen.

SmartBlock Embeds in Firefox 134

Entladen von Tabs

Wird über about:config der Schalter browser.tabs.unloadTabInContextMenu per Doppelklick auf true gesetzt, steht im Kontextmenü der Tabs eine neue Option zur Verfügung, um den jeweiligen Tab zu entladen und damit Ressourcen freizugeben.

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

Diese Distribution möchte mit Geschwindigkeit und Sicherheit punkten. Ich habe sie installiert und für euch kurz getestet.

In letzter Zeit hört man viel von der Distribution CachyOS. Grund genug, um diese Distribution in einer virtuellen Maschine auszuprobieren. Doch bevor ich meine Erfahrungen schildere, stellt sich die Frage, was es mit CachyOS auf sich hat.

CachyOS ist eine Linux-Distribution, die auf Arch Linux basiert. Sie konzentriert sich auf Geschwindigkeits- und Sicherheitsoptimierungen - der Standard-Linux-Kernel ist mit dem BORE-Scheduler (Burst-Oriented Response Enhancer) stark optimiert, während die Desktop-Pakete mit LTO, x86-64-v3 und x86-64-v4, Zen-4-Optimierung, Sicherheitsflags und Leistungsverbesserungen kompiliert sind. Zu den verfügbaren Desktop-Umgebungen und Fenstermanagern gehören KDE, GNOME, Xfce, i3wm, Wayfire, LXQt, OpenBox, Cinnamon, UKUI, LXDE, MATE, Budgie, Qtile, Hyprland und Sway. CachyOS wird sowohl mit grafischen als auch mit Kommandozeilen-Installationsprogrammen ausgeliefert und bietet einen Firefox-basierten Browser (genannt Cachy-Browser) mit einigen Sicherheitsverbesserungen und Leistungsoptimierungen.

Das Team hinter CachyOS besteht aus 12 Personen, die hier vorgestellt werden. CachyOS wird als deutsche Distribution beschrieben, was wohl auf den Gründer Peter Jung zurückzuführen ist.

Auf der Webseite des Projekts findet man im Download-Bereich eine Desktop- und eine Handheld-Edition. Zur Handheld-Edition heisst es:

Die CachyOS Handheld Edition bietet ein GameMode-ähnliches Erlebnis und kommt mit vorinstallierten Gaming-Tools. Es unterstützt offiziell das Rog Ally, Steam Deck OLED und LCD, Legion GO.

Obwohl die Distro mit vielen (fast allen) Desktop-Umgebungen angepriesen wird, heisst es bei der Desktop-Edition:

Erweitern Sie Ihre Möglichkeiten mit KDE Plasma - Surfen Sie im Internet, bleiben Sie mit Freunden und Familie in Verbindung, verwalten Sie Dateien, genießen Sie Multimedia und arbeiten Sie effizient in einer visuell beeindruckenden Umgebung, die sich an Ihre Bedürfnisse anpasst. Erleben Sie die zusätzlichen Vorteile der Verwendung der besten freien und Open-Source-Software mit dem Schwerpunkt auf Sicherheit, Datenschutz und Seelenfrieden.

Ja wie, KDE-Plasma? Was ist mit den anderen Desktop-Umgebungen? Hm, vielleicht gibt es eine Auswahl während des Installationsprozesses (so wie man es von Arch-Linux kennt). Die 2,7 GB grosse ISO-Datei ist schnell heruntergeladen. Ich teste die Installation in GNOME-Boxes unter Manjaro.

Die Installation

Nach dem Start der ISO-Datei in der VM wird man von diesem Bootmenü empfangen:

Als Default ist der erste Menüpunkt ausgewählt, den ich nicht ändere. Danach laufen eine Weile lang die Boot-Meldungen über den Bildschirm. Anschliessend wird KDE-Plasma hochgefahren und man wird von dieser Willkommens-Anwendung begrüsst (die Sprache habe ich dort auf Deutsch umgestellt):

Bisher habe ich nichts zu meckern; alles gut und einfach. Man könnte sich allenfalls fragen, warum KDE-Plasma verwendet wird, obwohl ich doch eine andere Desktop-Umgebung haben möchte. Jetzt wird es spannend; ich starte die eigentliche Installation. Es startet der Installations-Assistent, der auf Calamares beruht:

Beim Partitionieren des Speichermediums ist btrfs als Vorgabe ausgewählt. Zur Wahl stehen weitere Dateisysteme: xfs, etx4, f2fs und zfs. Ich belasse es bei der Vorgabe. Ah, dann kommt sie, die Auswahl der Desktop-Umgebung:

Wahnsinn, es werden sage und schreibe 18 Desktop-Umgebungen angeboten. Eine solche Auswahl habe ich bisher noch in keinem Installationsprogramm gesehen. Selbstverständlich wird eine Vorschau der einzelnen DEs geboten. Ich war kurz davor, Cosmic als DE auszuwählen, habe mich dann aber für GNOME entschieden. Erstens, weil ich GNOME kenne und zweitens, weil Cosmic noch nicht fertig ist.

Im nächsten Schritt kann man Pakete auswählen:

Diese Option erzeugt bei mir ein wenig Stirnrunzeln. Warum werden die Desktops hier erneut angeboten, obwohl ich mich bereits für GNOME entschieden habe? Nun gut, es gibt auch weitere Auswahlen, die nichts mit dem Desktop zu tun haben. Ich ändere nichts an den Voreinstellungen.

Der weitere Verlauf der Installation ist unspektakulär und bietet die gewohnten Abfragen. Während der eigentlichen Installation wird eine Slideshow gezeigt, die über die Besonderheiten von CachyOS informiert: Kernel, Desktop-Umgebungen, CachyOS-Browser, usw. Die Installation dauert ziemlich lange und scheint bei 37 % der zu installierenden Pakete festzustecken. Das mag an der VM liegen; ich warte noch ein paar Minuten ab. Zeit vergeht. Obwohl die Slideshow noch läuft, ändert sich nichts am Fortschritt. Ich breche dann mal ab und versuche es erneut.

Eine halbe Stunde später:

Ich war zu ungeduldig. Bei meinem zweiten Versuch hat die Installation einwandfrei funktioniert. Sie wäre auch beim ersten Versuch gelungen, hätte ich nur lange genug gewartet. Das bringt dem Installationsprozess dennoch einen Kritikpunkt ein: Die Fortschrittsanzeige während der Installation ist nicht granular genug. Da fragt man sich des Öfteren, ob der Prozess jetzt eingefroren ist, oder nicht.

Bewertung: 9 von 10 Punkten

Die Installation ist kinderleicht und von jederfrau und jedermann problemlos zu bewerkstelligen. So macht die Installation eines Arch-basierten Systems Spass. Man wird an die Hand genommen und erhält viele Informationen während des Einrichtungsprozesses. Warum ich einen Punkt abgezogen habe, steht im letzten Absatz.

Der erste Eindruck

Nach dem Neustart begrüsst euch die Willkommens-Anwendung und eine Einführung in den GNOME-Desktop. Ein Blick ins Terminal offenbart das:

Es kommt die Fish-Shell zum Einsatz, die immer mit einer fastfetch-Ausgabe beginnt. Nette Idee; gefällt mir. Doch welche weiteren Anwendungen werden von CachyOS installiert? Ein Blick in das App-Grid zeigt es:

Da gibt es einige Anwendungen, die nicht zum GNOME-Standard gehören, als da wären:

  • Alacritty - ein Terminal-Emulator
  • btop++ - ein erweiterter System-Monitor
  • Btrfs-Assistant - ein Hilfsprogramm zur Verwaltung von btrfs-Partitionen
  • Cachy Browser - ein gehärteter Firefox-Fork
  • CachyOS Hello - das Willkommensprogramm
  • CachyOS Kernel Manager - Verwaltung der installierten Kernels

  • CachyOS Paket-Installationsprogramm

  • Meld - ein grafischer Differ
  • Micro - ein sehr bequemer Terminal-Editor
  • Vim - ein sehr unbequemer Terminal-Editor :)
  • Octopi - ein Paketmanager und grafischer Wrapper für pacman

Am Erscheinungsbild der GNOME-Desktop-Umgebung wurde nicht verändert. Allerdings bietet CachyOS ein paar zusätzliche Pakete, die Sinn machen (siehe oben). Eine der wichtigsten Anwendungen ist der Webbrowser. Die meisten Distributionen setzen auf Firefox. CachyOS bietet stattdessen den Fork Cachy Browser an. Das Projekt schreibt dazu:

Unser Standard-Browser, Cachy-Browser, ist ein Fork des bekannten Firefox mit zusätzlichen Sicherheitsfunktionen und optimierter Leistung. Patches des librewolf-Browsers wurden ebenfalls integriert, um das Surfen noch besser zu machen.

Der Browser sieht aus, als wäre er für KDE-Plasma designt worden. uBlock-origin ist installiert und es wird Google als Suchmaschine verwendet. Ich meine, dass der Fork eines Webbrowsers nicht zu den Aufgaben einer Distribution gehört. Mehr möchte ich dazu nicht schreiben.

Bewertung: 9 von 10 Punkten

Die Desktop-Umgebung wurde so belassen, wie sie gedacht ist. Ich nehme an, dass das für die übrigen DEs auch gilt. Das CachyOS-Team hat einige sinnvolle Werkzeuge vorinstalliert. "Batteries included" findet hier nicht statt. Die Nutzer:innen müssen selbst Hand anlegen, um eine vollständige Arbeitsumgebung zu erhalten. Das ist keine Kritik, sondern eine Feststellung. Zum Hauptargument für CachyOS, die Geschwindigkeit, kann ich nichts sagen, da die Performance in einer virtuellen Maschine darüber keine Aussage erlaubt.

Das Paketmanagement

Möchte man eine Arch-basierte Distribution bewerten, gibt es nach meiner Meinung nur zwei wesentliche Punkte: die Installation und das Paketmanagement. Bezüglich der Installation halte ich CachyOS für eine Bereicherung im Distro-Markt (siehe oben). Vom Paketmanagement bin ich enttäuscht. Was ihr hier bekommt, ist eine wilde Zusammenstellung von vier Paketverwaltungen:

  • pacman - die Original-Paketverwaltung von Arch-Linux
  • CachyOS Paket-Installationsprogramm
  • Octopi - erinnert mich an Synaptic für Debian-basierte Systeme
  • Die Paketverwaltung der Desktop-Umgebung (in diesem Fall: GNOME-Software)

Welcher Vorteil soll sich für die Anwender:innen daraus ergeben? Pacman und die DE-spezifische Paketverwaltung sind gegeben, aber warum brauche ich das CachyOS Paket-Installationsprogramm und Octopi? Das verstehe ich nicht. Als Anwender wüsste ich nicht, worauf ich mich verlassen soll. Welche Verwaltung meldet mir die anstehenden Aktualisierungen? Kommen die vier sich in die Quere? Und was ist mit den Container-Formaten? Soweit ich das beurteilen kann, kümmert sich nur GNOME-Software um Flatpaks.

Bewertung: 4 von 10 Punkten

Wenn es um die Paketverwaltung geht, bedeutet mehr nicht besser. Im Gegenteil bin ich froh, wenn sich nur eine Anwendung um die Bereitstellung, Notifikation, Installation und Abhängigkeitsregelung kümmert.

Fazit

CachyOS möchte mit Geschwindigkeits- und Sicherheitsoptimierungen punkten. Diese wichtigen Argumente konnte ich leider nicht testen, da ich in einer virtuellen Maschine unterwegs war. Tatsächlich punktet diese Distribution mit einem einsteigerfreundlichen Installationsprozess und vielen Desktop-Umgebungen. Die Auswahl an vorinstallierter Software richtet sich eher an Fortgeschrittene als an Einsteiger:innen. Anfänger:innen möchten die Batterien mitgeliefert bekommen. Da soll eine sinnvolle Auswahl an Anwendungen installiert sein. Die Profis schätzen die minimalen Default-Programme, weil sie selbst wissen, welche Büro-Suite usw. sie benutzen möchten.

Für wen eignet sich CachyOS? Wer ein Rolling-Release-Modell bevorzugt und mit möglichen Problemen umzugehen weiss, kann auf eine Arch-basierte Distribution setzen. Falls euch dann auch noch eine kinderleichte Installation und eine leichtgewichtige Vorauswahl an installierten Anwendungen wichtig ist, wird mit CachyOS gut bedient. Das Hauptargument für diese Distro sind jedoch die Optimierungen im Kernel- und Sicherheits-Bereich.

Zum Schluss ein paar ehrliche Worte: Wenn ihr Arch wollt, dann nehmt Arch! Arch-Linux gehört mit zu den performantesten Distributionen, die es gibt. Ich schätze, dass die Leistungsoptimierungen von CachyOS in eurem Leben kaum eine Rolle spielen werden. Die Installation von Arch-Linux ist mittlerweile genauso leicht wie mit einem grafischen Installer, dank des neuen archinstall. Hier findet ihr eine Artikel-Serie, die noch das alte archinstall verwendet.

Quelle: https://cachyos.org/


GNU/Linux.ch ist ein Community-Projekt. Bei uns kannst du nicht nur mitlesen, sondern auch selbst aktiv werden. Wir freuen uns, wenn du mit uns über die Artikel in unseren Chat-Gruppen oder im Fediverse diskutierst. Auch du selbst kannst Autor werden. Reiche uns deinen Artikelvorschlag über das Formular auf unserer Webseite ein.

5. Januar 2025

Nutzer veralteter Firefox-Versionen müssen damit rechnen, ab März 2025 keine Add-ons und geschützten Inhalte auf Streaming-Plattformen mehr nutzen zu können.

Am 14. März 2025 verliert ein Stammzertifikat seine Gültigkeit, welches zur Verifizierung signierter Inhalte genutzt wird. Aus diesem Grund ist es wichtig, dass der Browser bis dahin in einer Version genutzt wird, welche das neue Stammzertifikat beinhaltet. Wer nach diesem Datum nicht Firefox 128 oder höher respektive Firefox ESR 115.13 oder höher nutzt, muss mit erheblichen Einschränkungen rechnen. Betroffen sind Firefox für Windows, macOS, Linux sowie Android. Lediglich Firefox für iOS ist hiervon nicht betroffen, da Mozilla auf iOS von der Apple-Plattform abhängig ist.

Ab dem 14. März 2025 werden für Nutzer älterer Firefox-Versionen keine Erweiterungen mehr ausgeführt. Dies betrifft nicht nur neu installierte Erweiterungen. Bereits installierte Erweiterungen werden automatisch deaktiviert. Ebenfalls kann es auf Streaming-Plattformen in Folge ausbleibender Updates für das DRM-Modul nach diesem Datum jederzeit dazu kommen, dass keine Wiedergabe mehr möglich ist. Auch andere auf Remote-Updates angewiesene Funktionen können nach diesem Datum eingeschränkt sein.

Der Beitrag Erhebliche Einschränkungen für Nutzer veralteter Firefox-Versionen ab März 2025 erschien zuerst auf soeren-hentzschel.at.

3. Januar 2025

Firefox besitzt eine Übersetzungsfunktion für Websites, welche im Gegensatz zu Cloud-Übersetzern wie Google Translate lokal arbeitet, die eingegebenen Texte also nicht an einen fremden Server sendet. Mit der Unterstützung von Chinesisch, Japanisch und Koreanisch wurde jetzt der nächste wichtige Meilenstein erreicht.

Firefox wird seit Version 118 standardmäßig mit einer lokalen Funktion zur maschinellen Übersetzung von Websites für den Browser ausgeliefert. Das bedeutet, dass die Übersetzung vollständig im Browser geschieht und keine zu übersetzenden Inhalte an einen Datenriesen wie Google oder Microsoft übermittelt werden müssen.

Mit der Unterstützung der sogenannten CJK-Sprachen wurde nun ein weiterer Meilenstein erreicht. Die Nightly-Version von Firefox kann jetzt Inhalte aus dem Chinesischen, Japanischen sowie Koreanischen übersetzen.

Der Beitrag Übersetzungsfunktion von Firefox Nightly lernt Chinesisch, Japanisch und Koreanisch erschien zuerst auf soeren-hentzschel.at.

31. Dezember 2024

Der Fakespot Deep Fake Detector ist eine neue Firefox-Erweiterung von Mozilla, welche es dem Nutzer ermöglichen soll, mutmaßliche KI-Inhalte von Inhalten zu unterscheiden, die von echten Menschen geschaffen wurden.

Download Fakespot Deep Fake Detector

Künstliche Intelligenz (KI) erlebt in den letzten Jahren einen extremen Aufschwung – sowohl qualitativ als auch, was die Nutzung betrifft – und das längst auch im Mainstream-Bereich. Heute fällt es teilweise schwer, überhaupt noch zu erkennen, welche Inhalte von einer KI erzeugt worden sind und was das Werk echter Menschen ist.

Mozilla möchte dieses Problem angehen – und zwar mit Hilfe Künstlicher Intelligenz. Der Fakespot Deep Fake Detector ist eine neue Browser-Erweiterung für Firefox, welche es erlaubt, markierten Text dahingehend zu analysieren. Alternativ kann Text auch ohne Browser-Erweiterung auf der dazugehörigen Website eingegeben werden.

Zu diesem Zeitpunkt werden ausschließlich englischsprachige Texte unterstützt. Bei Text soll es dabei nicht bleiben: In Zukunft soll der Fakespot Deep Fake Detector auch Videos und Bilder analysieren können.

Für eine bessere Zuverlässigkeit verlässt sich Mozilla nicht auf ein einzelnes Modell. Mit ApolloDFT, Binocular, UAR sowie ZipPy kommen derzeit gleich vier Modelle mit unterschiedlichen Stärken und Schwächen zum Einsatz, die auch beschrieben werden. Wenn es Unstimmigkeiten in der Bewertung gibt, erfährt der Nutzer, welches Modell zu welchem Ergebnis kam. Bei allen diesen Modellen handelt es sich um Open Source-Modelle, wobei ApolloDFT ein eigenes Modell von Fakespot ist.

Fakespot war ursprünglich ein eigenständiges KI-Unternehmen, welches sich auf die Erkennung sogenannter „Fake-Inhalte“ spezialisiert hat und im Mai 2023 von Mozilla übernommen worden ist. Am besten bekannt ist Fakespot für die Erkennung falscher Produktbewertungen beim Online-Shopping. Mittlerweile ist diese Funktionalität für Amazon, BestBuy und Walmart nativ in Firefox integriert.

Fakespot Deep Fake Detector Fakespot Deep Fake Detector

Der Beitrag Fakespot Deep Fake Detector: Neue Erweiterung von Mozilla erkennt Inhalte von KI vs. echten Menschen erschien zuerst auf soeren-hentzschel.at.

In der letzten Episode des Risikozone-Podcasts habe ich ganz kurz das Thema der verkürzten Hashwerte und auftretenden Kollisionen angesprochen. Jetzt gibt es ein Proof of Concept zu der Thematik.

Worum es geht

Ein kurzer Refresher, worum es in der Thematik überhaupt geht: Als Git entwickelt wurde, musste ein Weg gefunden werden, wie man die Referenzen auf Commits, die Dateien und die Dateibäume realisiert. In vielen Systemen wie z. B. Issue-Trackern werden aufsteigende Indizes verwendet. In einem verteilten System wie Git ist das aus verschiedenen Gründen der Synchronisation nicht so einfach möglich, da sonst Kollisionen, also gleiche IDs für unterschiedliche Objekte entstehen könnten. Eine Alternative wäre UUIDs, da die IDs einen randomisierten Anteil haben und die Wahrscheinlichkeit für Kollisionen gesenkt wird.

Noch besser als UUIDs ist allerdings Content-adressable Storage, bei dem Inhalte einzig durch ihren Inhalt adressiert werden. Das ist so, als würde man den gesamten Inhalt der Datei nochmal in den Dateinamen schreiben. Der Clou dabei ist jedoch, dass der gesamten Dateiinhalt gar nicht in den Dateinamen geschrieben werden muss, um die Datei durch ihren Inhalt identifizierbar zu machen.

Mit kryptographischen Hashfunktionen wie SHA-1 oder SHA-256 existiert ein Mittel, um einen beliebig langen Dateiinhalt zu einem immer gleich langen Wert, dem Hash, umzuwandeln. Dabei sind kryptographische Hashfunktionen so konstruiert, dass die Wahrscheinlichkeit für Kollisionen durch verschiedene Mechanismen stark minimiert wird. Ein SHA-1-Hash für den Dateiinhalt "Hallo Welt" wäre z. B. 28cbbc72d6a52617a7abbfff6756d04bbad0106a. Ein netter Nebeneffekt ist, dass Dateien mit gleichem Inhalt im Content-adressable Storage auch nur einmal abgespeichert werden, wodurch sogar Deduplikation ermöglicht wird.

Git nutzt dieses Verfahren, um die eingechekten Dateien abzuspeichern. Diese Dateien werden dann in Trees zusammengebunden und in Commits mit den jeweiligen Vorgänger-Commits (parents) in einem sog. Merkle-Tree verheiratet.

Commits werden somit auch durch einen SHA-1-Hash identifiziert, der im hexadezimalen Format 40 Zeichen lang ist.

Das Problem

Das Problem bei dem Verfahren liegt jetzt darin, dass dieser Hash üblicherweise noch weiter abgekürzt wird, um ihn benutzerfreundlicher in Oberflächen oder E-Mails darzustellen. Damit wird natürlich die Wahrscheinlichkeit für Kollisionen erhöht.

Habe ich einen Hash 28cbbc72d6a52617a7abbfff6756d04bbad0106a und nutze nur 28cbbc zur Referenz, reicht das in den meisten kleinen Repositories aus, um einen Commit eindeutig zu referenzieren. In großen Repositories mit vielen Dateien und Commits kann es auf einmal passieren, dass ein weiterer Commit 28cbbcc00aa8ef4e80596c16ecfdb4bc92656cd3 auftaucht, sodass 28cbbc nicht mehr eindeutig einen Commit beschreibt.

Um das Risiko zu verringern, sollte die Mindestanzahl der Zeichen für einen abgekürzten Commit erhöht werden.

Das Kernel-Repository

Genau darum geht es in der aktuellen Diskussion. Aktuell nutzen die Linux-Entwickler zur Referenz von Commits in ihren E-Mails 12 Zeichen lange Hashes. Die Diskussion dreht sich um die Frage, ob die Zahl weiter erhöht werden sollte. Linus Torvalds ist bisher dagegen, weil er das Risiko für Kollisionen gering sieht und er die Position vertritt, dass ein Commit immer mit dem Commit Message Title angegeben werden sollte, was ungewollte Kollisionen ausreichend verhindere.

Gestern veröffentlichte Kees Cook einen Blogpost, indem er eine Commit-Kollision mit dem Werkzeug lucky-commit bewusst herbeiführte, um darauf aufmerksam zu machen, dass die Git- und Kernel-Entwicklungstools mit solchen Situationen klarkommen sollten. Es ist unwahrscheinlich, dass solche Kollisionen bei 12 Zeichen versehentlich entstehen, aber ein Angreifer könnte dies ausnutzen.

Dies sollte ein Apell an alle Entwickler sein, deren Tooling auf abgekürzte Commit-Hashes setzt. Schauen wir mal, wie sich das weiterentwickelt.

Ein Kommentar zu SHA-1

Abschließend ein Kommentar noch zu SHA-1. Wie viele von euch wissen, ist SHA-1 selbst nicht mehr vertretbar kollisionssicher. Das bedeutet, es kann passieren, dass auf einmal zwei Dateiinhalte sich doch den gleichen Hash teilen könnten, wenn ein Angreifer es drauf anlegt.

Da dies natürlich Git massiv stören könnte, gibt es schon Bestrebungen, das Verfahren auf SHA-2 zu aktualisieren, wodurch sich die Hashlänge auch vergrößert. Das ist aber gar nicht so einfach, da SHA-1 an vielen Stellen in die Struktur eines Git-Repos hartkodiert wurde.

Hier geht es aber nicht um das unsichere SHA-1. Durch die Abkürzung des Hashes von 40 auf 12 Zeichen wird die Kollisionssicherheit bewusst und massiv zugunsten der Benutzerfreundlichkeit geschwächt. Und das erfordert immer eine regelmäßige Evaluation, welches Niveau noch vertretbar ist.

30. Dezember 2024

Orbit by Mozilla ist eine Firefox-Erweiterung von Mozilla, welche den Browser um einen KI-Assistenten erweitert, der Texte und Videos zusammenfassen kann und dabei die Privatsphäre der Nutzer respektiert.

Download Orbit by Mozilla für Firefox

Die Firefox-Erweiterung Orbit by Mozilla, derzeit noch „Beta“ gekennzeichnet, legt standardmäßig ein graphisches Element über alle Websites, welches aber auch an eine beliebige andere Stelle gezogen werden kann. Fährt man mit der Maus über das Element, hat man die Optionen, sich den Inhalt der aktuellen Seite zusammenfassen zu lassen, einen Chatbot zum Inhalt zu befragen, die Einstellungen der Erweiterung zu öffnen oder das Element auszublenden.

In den Einstellungen der Erweiterung lässt sich eine wesentlich minimalistischere Darstellung auswählen, ob Zusammenfassungen automatisch erfolgen sollen und ob man die Zusammenfassungen in Stichpunkten, kurzen Sätzen oder ganzen Absätzen erhalten möchte.

Orbit by Mozilla funktioniert nicht nur für Textdokumente, sondern über die Transkriptionen auch für Videoportale wie YouTube, liefert aktuell aber ausschließlich Ergebnisse in englischer Sprache.

Orbit by Mozilla Orbit by Mozilla Orbit by Mozilla

Für die Verwendung von Orbit by Mozilla wird kein Benutzerkonto benötigt. Als Sprachmodell kommt derzeit Mistral 7B zum Einsatz, welches auf einem Mozilla-Server gehostet wird. Es werden keine Daten mit Dritten geteilt und Orbit by Mozilla vergisst die übermittelten Informationen umgehend, sobald man auf eine andere Seite navigiert. Da keine Daten mit Mistral geteilt werden, findet durch die Nutzung der Erweiterung auch kein Training des Sprachmodells statt und die Informationen bleiben wirklich privat.

Der Beitrag Orbit by Mozilla: KI-Assistent als Firefox-Erweiterung erschien zuerst auf soeren-hentzschel.at.

Zum Jahresende möchte ich kurz zurückblicken und reflektieren, wie dieses Jahr für meinen kleinen Blog verlaufen ist.

Anzahl veröffentlichter Artikel

Behandelte Themen

Thematisch haben sich fast alle Artikel mit Freier Software und Open Source beschäftigt oder waren daran angelehnt. Wie auch in den vorangegangenen Jahren habe ich keine bewussten Themenschwerpunkte gesetzt, sonder über die Themen geschrieben, dich mich in der jeweiligen Zeit interessierten und mich beschäftigt haben.

Zu Beginn des Jahres hatte es mir das Thema IPv6 angetan, wozu vier Beiträge erschienen sind:

Das Thema begleitet mich auch weiterhin, jedoch gibt es bisher keine spannenden Neuigkeiten, die ich für berichtenswert halte. Ich fürchte, IPv6 wird sobald nicht die Weltherrschaft an sich reißen.

Ein Thema, welches mir sehr wichtig war und ist, ist die Dokumentation für den Notfall bzw. das digitale Erbe. Wie die Kommentare zu diesem Artikel bezeugen, bin ich nicht der Einzige, der sich darum Gedanken macht. Leider bin ich 2024 kaum damit vorangekommen und schiebe es weiter vor mir her. Dies ärgert mich etwas, da ich mir wünsche, mich für ein so wichtiges Thema besser aufraffen zu können.

In 2024 wurden wir auf allen Kanälen mit Künstlicher Intelligenz, Maschinellem Lernen und großen Sprachmodellen überflutet. Es fällt schon fast schwer noch irgendeine Anwendung oder ein Produkt ohne AI kaufen zu können. Abseits des Hypes habe ich mich ebenfalls mit dem Thema beschäftigt und zwei Beiträge ( [1] und [2]) dazu geschrieben. Ich bin überzeugt, dass die verschiedenen Spielarten der künstlichen Intelligenz unser Leben und unsere Art zu Arbeiten stark beeinflussen und verändern werden. Daher werde auch ich hier am Ball zu bleiben, um nicht von der laufenden Entwicklung abgehängt zu werden.

Fazit

Damit sind 2024 insgesamt 26 Artikel erschinen. Das sind 19 weniger als in 2023. Mein selbst gestecktes Ziel, jeden Monat mindestens zwei Artikel zu veröffentlichen habe ich ebenfalls nicht erreicht. Da dies mein Hobby ist und mir primär Freude bereiten soll, setze ich mich durch diese Zielverfehlung nicht unter Druck.

Das Jahr 2025 lasse ich ohne große Ziele und Bestrebungen auf diesen Blog zukommen. Nur eines ist sicher, ich werde meine Texte weiterhin selbst und ohne KI-Unterstützung schreiben. Denn damit würde ich mir nur selbst die Freude am Bloggen nehmen.

Ich freue mich, wenn ich auch 2025 wieder interessantes Wissen in meinen Texten mit euch teilen kann. Ich wünsche euch einen guten Rutsch ins Jahr 2025!

28. Dezember 2024

Mit den Tabgruppen arbeitet Mozilla an einem neuen Feature zur Organisation von Tabs. In der Nightly-Version von Firefox 135 sind Tabgruppen jetzt standardmäßig aktiviert.

Tabgruppen sind das meistgewünschte Feature der Firefox-Nutzer laut der Community-Plattform Mozilla Connect. Für Nutzer einer Nightly-Version von Firefox sind Tabgruppen jetzt standardmäßig verfügbar.

Ein bestehender Tab kann entweder über das Kontextmenü oder durch Ziehen auf einen anderen Tab zu einer Gruppe hinzugefügt werden. Für jede Gruppe kann eine von neun vordefinierten Farben ausgewählt und ein beliebiger Name vergeben werden. Die Tabgruppen werden dann innerhalb der Tableiste mit eben jener Farbe gekennzeichnet, der Name der Gruppe wird vorangestellt. Per Klick lassen sich Gruppen ein- und ausklappen. Im eingeklappten Zustand ist nur noch der Name der Tabgruppe sichtbar.

Tabgruppen in Firefox 135 Nightly

Auch bei Verwendung der vertikalen Tabs, einem anderen neuen Feature, an welchem Mozilla arbeitet, können die Tabgruppen bereits genutzt werden.

Tabgruppen in Firefox 135 Nightly

Zu beachten ist, dass die Umsetzung noch unvollständig ist und Fehler beinhaltet. Vor allem beim Verschieben von Tabs funktioniert zu diesem Zeitpunkt noch nicht alles reibungslos, während ein Verschieben von Tabgruppen noch gar nicht möglich ist.

Die standardmäßige Aktivierung ist derzeit noch auf Nightly-Versionen limitiert. Es wird sich dabei also nicht um ein offizielles Feature von Firefox 135 handeln. Eine Aktivierung wird dennoch möglich sein, indem über about:config der Schalter browser.tabs.groups.enabled per Doppelklick auf true gesetzt wird.

Der Beitrag Tabgruppen in Firefox 135 Nightly standardmäßig aktiviert erschien zuerst auf soeren-hentzschel.at.

27. Dezember 2024

Vergangenen Monat hat Mozilla wieder ein sogenanntes „Ask me Anything“-Event (AMA) veranstaltet, bei dem hochrangige Mozilla-Mitarbeiter die Fragen von Firefox-Nutzern beantwortet haben. Dieser Artikel fasst die spannendsten Informationen zur Zukunft von Firefox zusammen.

Nach einem „Ask me Anything“ (AMA) auf Reddit im Juni, hat Mozilla im November erneut ein AMA abgehalten, dieses Mal auf Mozillas eigener Plattform Mozilla Connect.

In Bezug auf die Übersetzungsfunktion von Firefox wurde in Aussicht gestellt, dass zu den bereits 28 unterstützten Sprachen Anfang 2025 die nächsten sechs Sprachen dazu kommen werden.

Für die Standard-Startseite sowohl vom Desktop als auch für Mobile (Android und iOS) sind Überarbeitungen geplant, einschließlich mehr Personalisierung und weiterer Hintergrundbilder. Auch die Möglichkeit, eigene Bilder zu verwenden, möchte Mozilla ergänzen.

Das Erweiterungs-Team konzentriert sich auf iterative Verbesserungen der Auflistungen und Suchergebnisseiten, um Nutzer dabei zu unterstützen, die relevantesten Erweiterungen zu finden und zu installieren.

Ein automatischer Dark Mode für Websites, welche einen solchen nicht von sich aus anbieten, ähnlich wie es die Erweiterung Dark Reader macht, wird zwar als spannende Funktion anerkannt, kann durch die Manipulation der Website aber zu Kompatibilitäts- und Performanceproblemen führen. Deswegen bedürfe es eines signifikanten Aufwands, um eine solche Funktion korrekt umzusetzen, und steht auf Mozillas Prioritätenleiste weit unten.

Angesprochen wurde natürlich auch das Thema Künstliche Intelligenz (KI) in Firefox. Künstliche Intelligenz entwickelt sich schnell weiter und man geht davon aus, dass einige KI-gestützte Funktionen irgendwann so wichtig werden könnten wie heute die Rechtschreibprüfung oder die automatische Vervollständigung. Man wisse noch nicht genau, welche Funktionen das sein werden, aber würde Mozilla warten, bis das klar ist, könnten sie die Chance verpassen, bereit zu sein, wenn die Nutzer es erwarten. Daher wird Mozilla weiterhin mit KI-Features experimentieren und neue Ideen ausprobieren. Aber KI-Features in Firefox sind immer optional, sodass Nutzer, welche damit nichts zu tun haben wollen, diese Funktionen auch nicht nutzen müssen.

Firefox für Android und iOS zu verbessern, wird ein großer Fokus im kommenden Jahr sein. Bald schon wird Firefox auf beiden Plattformen mit neu gestalteten Toolbars und Menüs ausgeliefert werden. Mozilla wird weiterhin in Geschwindigkeit, Zuverlässigkeit und essentielle Features wie die Verwaltung von Tabs, Privatsphäre-Features und Autovervollständigung investieren. Dazu kommt eine neue Startseite mit neuen Anpassungsmöglichkeiten. Außerdem möchte Mozilla die geräteübergreifende Nutzungserfahrung verbessern und damit die Synchronisation und das Mozilla-Konto noch nützlicher machen. Konkret auf Tab-Gruppen angesprochen, wurde bestätigt, dass dies auch etwas ist, was man für Mobile bauen möchte. Ein Zeitplan konnte hierfür aber keiner genannt werden. Zunächst wird dieses Feature schon bald im Desktop-Firefox ausgerollt werden.

Was Privatsphäre-Features betrifft, ist eine engere Interation des Mozilla VPNs in Firefox geplant. In diesem Zusammenhang wird zunächst eine VPN-Erweiterung für Firefox veröffentlicht werden. Die Nutzung von E-Mail-Masken für Firefox Relay soll besser in Firefox integriert werden, sodass hierfür in Zukunft keine Erweiterung mehr benötigt wird. Auch eine Expansion von Firefox Relay Premium in weitere Länder ist geplant.

Auf die Entwicklung der Nutzerzahlen angesprochen, wurde gesagt, dass sich die Dinge in die richtige Richtung entwickeln. So würde man sehen, dass sich immer mehr Menschen für Firefox auf dem Smartphone entscheiden, und auch für Firefox auf dem Desktop sehe man ermutigende Nutzungstrends.

Man gibt auch zu, dass es sich manchmal so anfühle, als würde Firefox vor allem auf die Konkurrenz aufschließen statt voranzugehen, aber man arbeite daran, dies zu ändern. Insbesondere im mobilen Bereich, wo die Browsernutzung eine andere ist und man ein paar neue Dinge probieren könne. Nicht alles wird im ersten Anlauf funktionieren, aber aus diesem Grund arbeite man im Öffentlichen und erhalte Feedback. Mozilla möchte in Zukunft auch noch mehr von dem, woran sie arbeiten, vorab auf Mozilla Connect zeigen, um frühes Nutzerfeedback zu erhalten.

Der Beitrag Highlights des Mozilla AMA November 2024 erschien zuerst auf soeren-hentzschel.at.

26. Dezember 2024

Eine Installationsanleitung für die Linuxdistribution Arch Linux mit Rollback Funktion und den wichtigsten Post-Installations Konfigurationsschritten.

Arch Linux ist eine beliebte Linux-Distribution mit einer Do-It-Yourself Philosophie. In diesem Tutorial wird die Installation des Systems auf einem verschlüsselten BTRFS Dateisystem beschrieben.

Nutzer dieses Tutorials sollten mit einem CLI Texteditor umgehen können (z. B. nano oder vim) sowie grundlegende Verzeichnisnavigation beherrschen. Das Archwiki aufsuchen, falls auf Probleme gestossen werden sollte.

Grundlegender Ablauf

Dieses Tutorial ist für ein modernes System mit UEFI BIOS und einer SSD mit GPT-Partitionstabelle geschrieben. Es nutzt Verschlüsselung und das BTRFS Dateisystem.

  1. Festplatten partitionieren, verschlüsseln und formatieren.
  2. Arch Linux mit pacstrap bootstrappen und ins System chrooten.
  3. Initial RAM-Filesystem erstellen.
  4. Boot loader installieren und konfigurieren.
  5. Desktopumgebung einrichten.
  6. Snapshotfunktion einrichten.
  7. Post Install Konfiguration.

Informationen für Dualboot Systeme mit Windows:

Dieses Tutorial geht davon aus, dass Windows auf einer separaten Festplatte installiert ist. Falls das nicht möglich ist, dann sollte Windows zuerst installiert werden. Für die Linux-Installation sollte eine separate ESP Partition erstellt werden, damit in Zukunft Windows Updates nicht unerwünscht den Linux-Eintrag aus der ESP löschen.

Vorbereitung

Die ISO-Datei von der Arch Webseite herunterladen (Arch unterstützt nur die x86_64 Architektur), die Signatur verifizieren und einen bootable USB-Stick erstellen.

Signatur verifizieren

Wir nutzen GnuPG: PGP Signatur von der Webseite herunterladen und im gleichen Ordner wie die ISO Datei speichern. Den Signing Key vom WKD (Web Key Directory) herunterladen.

gpg --auto-key-locate clear,wkd -v --locate-external-key pierre@archlinux.org

Signatur verifizieren:

gpg --keyserver-options auto-key-retrieve --verify archlinux-2024.12.01-x86_64.iso.sig archlinux-2024.12.01-x86_64.iso

Bootable USB-Stick erstellen

Dann die Installationsdatei auf einen USB-Stick laden. Es gibt verschiedene Arten, einen bootable USB-Stick zu erstellen. Hier mache ich es mit dem dd Befehl:

dd bs=4M if=path/to/archlinux-version-x86_64.iso of=/dev/disk/by-id/usb-My_flash_drive conv=fsync oflag=direct status=progress

Danach ins Live Environment booten und die eigentliche Installation beginnen.

Temporär Console Keyboard Layout setzen

Vorhandene Key maps anzeigen:

ls /usr/share/kbd/keymaps/**/*.map.gz

Key map laden:

loadkeys de_CH-latin1

Boot Modus verifizieren

UEFI bitness überprüfen:

cat /sys/firmware/efi/fw_platform_size

Falls 64 ausgegeben wird, dann ist das System im UEFI Modus gebootet und hat ein 64-bit x64 UEFI. Falls es 32 ausgibt, dann ist das System im UEFI Modus gebootet und hat ein 32-bit IA32 UEFI; obwohl das auch unterstützt wird, wird es die Boot loader Wahl auf Systemd-boot reduzieren. Wenn die Datei nicht existiert, könnte das System im BIOS (oder CSM) Modus gebootet sein. Wenn das System nicht im richtigen Modus gebootet hat, sollte die Anleitung des Motherboards aufgesucht werden.

Internet verbinden

Überprüfen, ob das Netzwerk Interface gelistet und aktiviert ist. Dieser Befehl initialisiert auch mit Ethernet-Kabel verbundenes Internet.

ip link
  • Bei Ethernet-Verbindung einfach Kabel einstecken
  • Bei Wireless mit iwctl verbinden. Zuerst noch mit rfkill sicherstellen, dass der Wireless Adapter nicht blockiert ist.

iwctl verwenden, um Internet zu verbinden

Aktiven Prompt erhalten:

iwctl

Alle WiFi Devices auflisten:

[iwd] device list

Falls das Gerät oder der entsprechende Adapter ausgeschaltet ist, einschalten:

[iwd] device DEVICE set-property Powered on
[iwd] adapter ADAPTER set-property Powered on

Scan Initiieren:

[iwd] station DEVICE scan

Netzwerke auflisten:

[iwd] station DEVICE get-networks

Netzwerk verbinden:

[iwd] station DEVICE connect SSID

Falls ein Passwort benötigt wird, wird danach gefragt.

Systemuhr aktualisieren

In der Live-Umgebung ist systemd-timesyncd standardmäßig eingeschaltet und die Zeit wird automatisch synchronisiert, sobald das Internet verbunden ist.

Zeit überprüfen:

timedatectl

Festplatte(n) konfigurieren

Wahl zwischen BTRFS oder EXT4. Allgemein: BTRFS für SSD, EXT4 für HDDs. XFS und ZFS sind auch beliebte Dateisysteme, werden hier allerdings nicht beachtet. Für mehr Informationen, Archwiki aufsuchen. LVM für Datenträgerverwaltung. Hier wird davon ausgegangen, dass das System auf einer SSD mit BTRFS Dateisystem installiert wird, mit zwei HDD-Festplatten im EXT4 Format als mass media storage in einer LVM.

Festplatteninhalt komplett löschen

Wir möchten unsere Festplatten verschlüsseln. Zunächst wird der ganze Inhalt der Platten mit Nullen überschrieben. Dazu nutzen wir den Befehl cryptsetup. Festplatten auflisten:

fdisk -l 

Festplatte in einem temporär verschlüsselten Container mit dem Namen "to_be_wiped" öffnen:

cryptsetup open --type plain -d /dev/urandom /dev/FESTPLATTE to_be_wiped

Festplatte mit Nullen füllen:

dd bs=1M if=/dev/zero of=/dev/mapper/to_be_wiped status=progress

Container schließen:

cryptsetup close to_be_wiped

Partitionen erstellen

Festplatten auflisten:

fdisk -l

Festplatte auswählen:

fdisk /dev/DEVICE
  • Alte Partitionen mit d löschen
  • Mit g eine neue GPT Partitionstabelle erstellen.
  • Allfällige alte Signaturen ruhig löschen.

Einfach dem Programm folgen, es ist ziemlich selbsterklärend.

EFI Partition (EFI System Partition, ESP)

  • Mit n eine neue Partition erstellen. Default Nummer. Default erste Position. "+500M" Größe.
    • Typ mit t definieren, Partition auswählen, und 1 (oder EFI System) eintippen.

Root Partition

  • Mit n eine neue Partition erstellen. Default Nummer. Default erste Position. Mit Enter einfach den Default Wert für Größe nehmen (= den ganzen Rest).
    • Typ mit t definieren, Partition auswählen, und Linux Filesystem eintippen (ist der Standardwert).

Encryption Setup

Die Partitionen werden mithilfe des cryptsetup-Tools verschlüsselt. ROOTPART steht für die zu verschlüsselnde Partition.

cryptsetup -y -v luksFormat --label ARCH_LUKS /dev/ROOTPART

Passwort eingeben. Danach die Partition entschlüsseln, um mit ihr arbeiten zu können:

cryptsetup open --type luks /dev/ROOTPART cryptroot

Wir haben somit die verschlüsselte Partition /dev/ROOTPART entschlüsselt und auf /dev/mapper/cryptroot gemappt.

Partitionen formatieren

Wir erstellen nun Dateisysteme auf den Partitionen. ESP-Partition in FAT32, ROOTPART in BTRFS formatieren und überprüfen:

mkfs.fat -F32 -n ESP /dev/PART1
mkfs.btrfs -L ARCH /dev/mapper/cryptroot
lsblk -f

BTRFS Subvolumes erstellen

Dafür muss die Root-Partition zuerst gemounted werden:

mount /dev/mapper/cryptroot /mnt

Ins /mnt Verzeichnis wechseln und Subvolumes erstellen. Vorgeschlagenes Layout wird vom Archwiki übernommen, außer dass ich keine Subvolume für /var/log verwende. Eine Subvolume für root(@), eine für home, eine für swap und eine für snapshots. Am Schluss /mnt unmounten, damit wir die eigentlichen mount Verzeichnisse im nächsten Schritt definieren können.

cd /mnt
btrfs subvolume create @
btrfs subvolume create @home
btrfs subvolume create @snapshots
btrfs subvolume create @swap
cd ..
umount /mnt

Subvolumes und ESP mounten

Als BTRFS Optionen werden noatime (schaltet file writing access times ab für bessere performance), zstd:1 (Dateikompression auf Stufe 1) und space_cache=v2 (neue Implementation eines free space tree für BTRFS cache) genutzt.

mount --mkdir -o noatime,compress=zstd:1,space_cache=v2,subvol=@ /dev/mapper/cryptroot /mnt
mount --mkdir -o noatime,compress=zstd:1,space_cache=v2,subvol=@home /dev/mapper/cryptroot /mnt/home
mount --mkdir -o noatime,compress=zstd:1,space_cache=v2,subvol=@snapshots /dev/mapper/cryptroot /mnt/.snapshots
mount --mkdir -o noatime,subvol=@swap /dev/mapper/cryptroot /mnt/swap
mount --mkdir /dev/ESPPART /mnt/boot

Swap einrichten

Snapshot-Funktion für Swap Partition ausschalten, und ein Swap File erstellen (optional: mindestens so gross wie RAM, damit Hibernation gewährleistet wird. Im dd Befehl die count Option (in MB) anpassen):

cd /mnt/swap

# Snapshotfunktion deaktivieren
chattr +C /mnt/swap

# Swapspace definieren
dd if=/dev/zero of=./swapfile bs=1M count=4096 status=progress
chmod 0600 ./swapfile
mkswap -U clear ./swapfile
swapon ./swapfile

Optional: Mass Media Storage mit LVM Setup

Ich habe 2 HDD-Festplatten, die ich als Mass Media Storage verwende. Diese möchte ich zu einer großen Partition zusammenfassen – dazu nutze ich LVM. Logical Volumes können auch verschlüsselt werden. Dazu entweder die eigentlichen Festplatten verschlüsseln und LVM obendrauf bauen, oder die Logical Volume als Ganzes im Nachhinein verschlüsseln. Für Vor- bzw. Nachteile Archwiki aufsuchen. Ich habe mich für LUKS on LVM entschieden. Anmerkung: Der Wiki-Eintrag geht davon aus, dass es als System-Partition verwendet wird, was hier nicht der Fall ist.

Festplatten vorbereiten

Zunächst müssen beide Festplatten vorbereitet werden. Gleich wie bei der Root Disk zuvor überschreiben wir den Inhalt mit Nullen und erstellen auf beiden Festplatten eine Partition über die komplette Größe vom Typ Linux Filesystem. Physical Volumes können auch direkt auf einer Disk ohne Partition definiert werden, wird aber nicht empfohlen.

LVM definieren

Mit dem pvcreate Befehl die frisch angelegten Partitionen als Physical Volumes definieren:

# sdb1 und sdc1 mit deinen eigenen Partitionen tauschen
pvcreate /dev/sdb1
pvcreate /dev/sdc1

Mit dem Befehl pvdisplay können diese überprüft werden.

Nun wird mit dem vgcreate Befehl eine Volume Group (eine Art Container) erstellt, ich gebe ihr den Namen "vghome". Diese beinhaltet die beiden vorher erstellten Physical Volumes.

vgcreate vghome /dev/sdb1 /dev/sdc1

Mit dem Befehl vgdisplay lässt sich die Volume Group überprüfen.

Aus dieser Volume Group können nun mit lvcreate Logical Volumes erstellt werden. Diese verhalten sich auf der Systemebene dann wie eine normale Partition einer Festplatte. Meine Logical Volume erstelle ich über die gesamte Grösse dieser LV.

lvcreate -l 100%FREE vghome -n lvcrypthome

Mit lvdisplay lässt sich diese überprüfen.

Dieses Logical Volume muss nun noch verschlüsselt werden und ein Dateisystem erhalten.

Verschlüsselung & Formatierung

Ähnliches Vorgehen wie auf der Root-Partition. Logical Volume verschlüsseln:

cryptsetup -y -v luksFormat --label HOME_LUKS /dev/vghome/lvcrypthome

Passwort eingeben, ich verwende dasselbe wie bei der Root-Partition. Wieder entschlüsseln und mappen damit wir sie formatieren können.

cryptsetup open --type luks /dev/vghome/lvcrypthome crypthome

Formatieren. Meine Festplatten sind HDDs, deswegen in EXT4.

mkfs.ext4 -L home /dev/mapper/crypthome

Festplatten sind vorbereitet, jetzt kann die Installation beginnen. Anzumerken ist, dass der [[Arch Linux Post Installation#Weitere verschlüsselte Festplatten bei Boot entschlüsseln und mounten|Mountpoint erst am Schluss definiert wird]]. Außerdem darf das lvm2 Paket nicht fehlen (wird im nächsten Schritt installiert).

Arch Installation

Mit pacstrap eine neue Arch-Installation beginnen und Basispakete installieren. Eigentlich ist nur das base Paket notwendig. Es beinhaltet eine minimale Sammlung an Paketen, die eine Arch Installation definieren.

pacstrap -i /mnt base

Aber so fehlt es an vielen wichtigen Funktionen. Weitere Pakete werden einfach mit einem Abstand getrennt aufgeschrieben. Hier ist eine Liste von empfohlenen Softwarepaketen:

  • Basic Stuff:
    • base
    • base-devel (diverse Build-tools)
    • linux (Kernel)
    • linux-lts (LTS kernel)
    • linux-headers (Kernel headers)
    • linux-lts-headers (LTS kernel headers)
    • linux-firmware
    • vim (Text-Editor)
    • vi
    • openssh (SSH)
    • intel-ucode (amd-ucode für AMD-Prozessoren)
    • sudo
  • Filesystem Utilities:
    • ntfsprogs
    • ntfs-3g
    • btrfs-progs
    • lvm2
    • exfat-utils
    • fuse-exfat
    • e2fsprogs
  • Bootprozess:
    • dosfstools
    • grub
    • efibootmgr
    • os-prober
    • mtools
  • Netzwerk:
    • networkmanager
    • dialog (Wifi connect wie CL)

Milde interessant: Wenn das "Linux" Paket (Linux Kernel) nicht installiert wird, ist theoretisch keine Linux-Installation vorhanden, lediglich eine Sammlung von Softwarepaketen. Daher der Name Linux-Distribution - der Linux Kernel wird distribuiert.

Konfiguration

Wir schreiben die zuvor definierten Mountpoints mithilfe des genfstab Befehls in die fstab (Filesystem table) Datei:

genfstab -U /mnt >> /mnt/etc/fstab
# Kontrolle
cat /mnt/etc/fstab

Wichtig für Restoren von Snapshots: Sicherstellen, dass beim mounten der einzelnen Subvolumes die Option "subvolid" nicht verwendet wird – die Option "subvol" reicht aus. Ausserdem sollte die top-level subvolume (immer ID=5) auf mnt/btrfs-root gemounted werden. Folgende Zeile einfügen:

UUID=UUID-der/installationspartition  /mnt/btrfs-root             btrfs         rw,noatime,compress=zstd:1,ssd,space_cache=v2,subvolid=5    0 0

Wir nehmen Zugriff auf die Arch Installation – die Konsoleneingabe wird auf die Work-in-Progress Installation angebunden:

arch-chroot /mnt

Wir befinden uns nun in der Arch Installation auf der eigentlichen Festplatte in einer chroot (change root) Umgebung. Noch müssen wir ein paar Dinge konfigurieren, damit das System ohne den USB-Stick bootet. Ab jetzt kann auch der Paketmanager pacman verwendet werden, um Pakete zu installieren.

Zeitzone und Sprache

In /usr/share/zoneinfo die Region und Stadt finden und einen Symlink in /etc/localtime erstellen. Im Anschluss die Hardwareuhr synchronisieren:

ln -sf /usr/share/zoneinfo/Europe/Zurich /etc/localtime
hwclock --systohc

Sprachen in /etc/locale.gen auskommentieren (en_US.UTF-8 und de_CH.UTF-8), und locale generieren:

locale-gen

Sprache setzen: /etc/locale.conf erstellen und für Englisch die Linie LANG=en_US.UTF-8 einfügen.

Keyboard-Layout definieren, indem /etc/vconsole.conf mit KEYMAP=de_CH-latin1 als Inhalt erstellt wird.

Netzwerk

Die Datei /etc/hostname editieren und in der ersten Linie den gewünschten Namen der Maschine eingeben.

Die Datei /etc/hosts editieren und folgende Linien eingeben:

127.0.0.1    localhost
127.0.1.1    hostname  #der in /etc/hostname definierte hostname

Root Passwort setzen und standard Benutzer hinzufügen

Wir sind als Root eingeloggt. Passwort ändern mit:

passwd

Standard Benutzer erstellen, zur wheel Gruppe hinzufügen und Passwort setzen:

useradd -m -G wheel
passwd

Sudoers File Anpassen und wheel Gruppe Privilege erhöhen:

visudo

Die Linie %wheel ALL=(ALL) ALL: auskommentieren.

Systemd Services autostart

Mit dem Befehl systemctl einige nützliche Dienste automatisch starten.

systemctl enable sshd NetworkManager fstrim.timer systemd-timesyncd paccache.timer

Initial Ram Disc Environment generieren

Das Initial Ram Disc Environment (seit kernel Version 2.6 Initial Ram Filesystem) hilft dem Linux Kernel im Bootprozess, Treiber und das eigentliche Root Filesystem zu laden. Es muss zuerst generiert werden. Früher nutzte man dazu den Befehl initrd, heute wird initramfs genutzt. In Arch heißt heisst das äquivalente Programm mkinitpcio. Die alte und neue Methode unterscheiden sich in den Details, aber bewerkstelligen allgemein das Gleiche.

Wir editieren /etc/mkinitcpio.conf und fügen in der HOOKS=(... Variable zwischen block und filesystems das Keyword encrypt hinzu. Außerdem werden die Hooks keyboard und keymap benötigt. Falls z.B. von einer LVM gebootet wird, braucht es den lvm Hook.

Sicherstellen, dass die Linie wie folgt aussieht, falls nicht vom Tutorial abgewichen wurde:

HOOKS=(base udev autodetect modconf kms keyboard keymap consolefont block encrypt filesystems fsck grub)

Mit dem Befehl mkinitcpio das Initial RAM Dateisystem regenerieren. Mit der -P Option wird es für alle installierten Kernels automatisch gemacht, sonst müsste man den Kernel als Option angeben (z. B. Linux-LTS) und den Prozess wiederholen.

mkinitcpio -P

Boot loader installieren

Ich nutze den Bootloader GRUB. Auf dem Archwiki sind alle gängigen Bootloader und deren Vor- bzw. Nachteile aufgelistet.

Die UUID der Partition, die verschlüsselt wurde (nicht die geöffnet- und dann gemappte /dev/mapper/cryptroot) mit blkid holen (z.B. die UUID von /dev/nvme0n1p2) und aufschreiben.

/etc/default/grub/ bearbeiten, und auskommentieren:

GRUB_ENABLE_CRYPTODISK=y

Für Dual boot Systeme folgende Linie auskommentieren:

GRUB_DISABLE_OS_PROBER=false

Um Grub bei Boot zu verstecken, folgende Linien bearbeiten (mit Drücken der ESC Taste im Bootprozess lässt es sich wieder anzeigen):

GRUB_TIMEOUT=0
GRUB_TIMEOUT_STYLE=hidden

Sowie die Option GRUB_CMDLINE_LINUX_DEFAULT anpassen und folgende Linie nach quiet mit einem Abstand dazwischen einfügen (UUID mit der zuvor aufgeschriebenen ersetzen). Falls es eine SSD ist, mit :allow-discards TRIM support bei Boot aktivieren.

$ root=/dev/mapper/cryptroot cryptdevice=UUID=5f5b0b02-318c-4980-bcb5-793d44fe4387:cryptroot:allow-discards

Installieren (für 64-Bit Systeme):

grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB --recheck

Grub Sprache auf Englisch stellen:

cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo

Grub-Konfigurationsdatei generieren:

grub-mkconfig -o /boot/grub/grub.cfg

Das System kann nun ohne den USB-Stick booten. Mit exitaus der chroot Umgebung aussteigen und mit reboot neu starten. Falls eine Windows-Installation auf einer Separaten Festplatte existiert, im BIOS sicherstellen, dass von der Linux Partition gebootet wird. Nach Neustart mit dem Networkmanager Befehl nmcli erneut mit dem WiFi Internet verbinden.

nmcli device wifi list
nmcli device wifi connect  password

Desktopumgebung einrichten

Es kann eine beliebige Desktopumgebung installiert werden - ich habe mich für KDE Plasma entschieden. Ausserdem wird der Display Server Xorg benötigt.

pacman -S xorg-server xorg xorg-xinit plasma

Treiber für Intel & AMD Grafikkarten. Sollte auch installiert werden, damit die Grafikausgabe der CPU funktioniert.

pacman -S mesa

Treiber für Nvidia Grafikkarten. Muss gleich sein mit dem Kernel, also LTS auch installieren:

pacman -S nvidia nvidia-lts nvidia-settings

Plasma empfiehlt den sddm Display Manager (wird mit dem plasma Paket mitgeliefert). Ein Display Manager zeigt nach dem Bootprozess eine grafische Log-in-Oberfläche an.

systemctl enable sddm

X11 Tastatur Keymap einstellen:

localectl set-keymap de_CH-latin1
localectl set-x11-keymap ch

Neustart, reboot. Das System sollte danach in eine Grafische Umgebung starten. Falls das Tastaturlayout immer noch falsch sein sollte, den letzten Schritt wiederholen - samt Neustart.

Automatische Snapshots mit Snapper

Automatische Snapshots des Systems bei Updates einrichten. Außerdem wird das GRUB Menu auch automatisch aktualisiert und ermöglicht das direkte Booten in den ausgewählten Snapshot (read-only). Snapshots sind nützlich, wenn bei einem Update (oder durch Nutzerfehler) das System unbrauchbar gemacht wird - es kann ruckzuck auf einen noch funktionierenden Systemstand gewechselt werden. Wichtig: Snapshots sind keine Backups.

Vom /home Verzeichnis erstelle ich keine Snapshots, da ich von diesen Daten bereits auf einer separaten Festplatte ein richtiges Backup halte. Falls gewünscht, können die Schritte für /home wiederholt werden.

Snapper installieren:

sudo pacman -S snapper

Bevor wir snapper konfigurieren, müssen wir unsere @snapshots Subvolume unmounten und den Mountpoint Ordner löschen, denn Snapper erstellt selbst einen gleichnamigen Ordner und Subvolume.

sudo umount /.snapshots
sudo rm -r /.snapshots

Snapper config erstellen mit dem Namen root

sudo snapper -c root create-config /

Die von Snapper erstellte Subvolume und den Ordner löschen (zuerst sicherstellen, dass die neue Subvolume erstellt worden ist).

sudo btrfs subvolume list /
sudo btrfs subvolume delete /.snapshots
sudo rm -r /.snapshots

Nun erstellen wir erneut einen Ordner, und mounten unsere bei der Installation erstellte Subvolume erneut.

sudo mkdir /.snapshots
sudo mount -a

Wir benötigen noch Lese-, Schreib- und Ausfuhrerlaubnis für unsere Snapshots, damit wir auf sie zugreifen können.

sudo chmod 750 /.snapshots

Die Snapper Konfigurationsdatei bei /etc/snapper/configs/root mit Sudo-Rechten anpassen. Den Namen des Standardusers bei ALLOW_USERS=username hinzufügen und die Aufbewahrungsfrist für timeline snapshots (automatische Snapshots) bearbeiten:

# limits for timeline cleanup

TIMELINE_MIN_AGE="1800"
TIMELINE_LIMIT_HOURLY="5"
TIMELINE_LIMIT_DAILY="7"
TIMELINE_LIMIT_WEEKLY="2"
TIMELINE_LIMIT_MONTHLY="1"
TIMELINE_LIMIT_YEARLY="0"

Snapper timeline Services aktivieren:

sudo systemctl enable --now snapper-timeline.timer
sudo systemctl enable --now snapper-cleanup.timer

Wir brauchen Pakete, die nicht in den Offiziellen Repositories vorhanden sind. Diese finden wir auf dem Arch User Repository. Wir installieren einen AUR helper namens yay (der Befehl yay ohne Optionen updated zugleich das ganze System):

git clone https://aur.archlinux.org/yay
cd yay
makepkg -si PKGBUILD

snap-pac-grub und rsync installieren. snap-pac-grub (genauer gesagt, die Dependency snap-pac) nimmt bei jeder Änderung des Systems einen Snapshot auf (Update, Paket löschen/installieren) und stellt die Snapshots im GRUB Menu zur Verfügung (grub-btrfs Dependency), um von ihnen booten zu können.

yay -S snap-pac-grub rsync

/etc/mkinitcpio.conf editieren und grub-btrfs-overlayfs ans Ende der HOOKS variable hinzufügen und initramfs regenerieren. Dieser Schritt aktualisiert das Grub Menu mit dem neuen Snapshot.

sudo mkinitcpio -P

Da /boot auf einer separaten Partition existiert, wird der Ordner bis jetzt bislang nicht beachtet. Das Backup von /boot erstellen wir separat mit rsync. Dies erlaubt einen Fallback auf den alten Kernel, falls bei einem Update auf eine neue Kernel Version Instabilität eingeführt wird.

/etc/pacman.d/hooks erstellen und darin eine Hook definieren, die vor jedem Systemupdate ausgeführt wird.

sudo mkdir /etc/pacman.d/hooks
sudo vim /etc/pacman.d/hooks/0-bootbackup-preupdate.hook

Folgenden Inhalt einfügen:

[Trigger]

Operation = Upgrade
Operation = Install
Operation = Remove

Type = Path
Target = usr/lib/modules/*/vmlinuz

[Action]

Depends = rsync
Description = Backing up /boot before updating...

When = PreTransaction

Exec = /usr/bin/rsync -a --delete /boot /.bootbackup/preupdate

Diesen Hook als 95-bootbackup-postupdate.hook kopieren, und für den Postupdate Konfigurieren:

sudo cp /etc/pacman.d/hooks/0-bootbackup-preupdate.hook /etc/pacman.d/hooks/95-bootbackup-postupdate.hook

Editieren mit folgendem Inhalt (Pre wird zu Post):

[Trigger]

Operation = Upgrade
Operation = Install
Operation = Remove

Type = Path
Target = usr/lib/modules/*/vmlinuz

[Action]

Depends = rsync
Description = Backing up /boot after updating...

When = PostTransaction

Exec = /usr/bin/rsync -a --delete /boot /.bootbackup/postupdate

Als Test einen Snapshot erstellen, der auch gleichzeitig als "Clean Fallback" dient:

sudo snapper -c root create --description “Saubere BTRFS Installation mit Snapper”

Fertig!, reboot

Installation fertig, Post Installation

An dieser Stelle lohnt es sich, in den General recommendations auf der Archwiki Webseite zu stöbern. Nvidia Nutzer sollten sich mit den Archwiki-Seiten Nvidia tips and tricks und Nvidia troubleshooting bekannt machen. Um hibernation zu aktivieren, folgende Wikiseite aufsuchen: Power management.

Hier sind einige wichtige Punkte aufgelistet:

Weitere verschlüsselte Partitionen bei Boot mounten

Mit jedem jetzigen Init System ist es nicht möglich, mit Eingabe eines Passwortes mehrere verschlüsselte Partitionen zu entschlüsseln. Deswegen wechsle ich auf das Systemd init System.

Zu Systemd init System wechseln

Dazu die Datei /etc/mkinitcpio.conf bearbeiten. Die Hooks base, udev (-> systemd), keymap, consolefont (-> sd-vconsole) und encyrypt (-> sd-encrypt) müssen ersetzt werden. Ausserdem kann die resume Hook entfernt werden.

sudo vim /etc/mkinitcpio.conf
# Im Moment sieht die Zeile noch etwa so aus:
# HOOKS=(base udev autodetect modconf keyboard kms keymap consolefont block encrypt filesystems fsck resume grub-btrfs-overlayfs)
# Neuer Inhalt
HOOKS=(systemd autodetect modconf kms keyboard sd-vconsole block sd-encrypt filesystems fsck grub-btrfs-overlayfs)

Datei schliessen und initramfs neu bauen (mkinitcpio -P). Danach müssen die Kernel Parameter zur Entschlüsselung der Partition bei boot bearbeitet werden:

sudo vim /etc/default/grub
# Den Parameter bearbeiten:
# cryptdevice=UUID=b525e45e-874e-4b98-bafa-ae7f1daa75e0:cryptroot:allow-discards
# Neu:
rd.luks.name=b525e45e-874e-4b98-bafa-ae7f1daa75e0=cryptroot rd.luks.options=discard,password-echo=no

Grub Konfiguration neu generieren

sudo grub-mkconfig -o /boot/grub/grub.cfg

Der Computer läuft nun auf einem Systemd Init System.

Weitere Partitionen entschlüsseln

Die /etc/crypttab Datei anpassen, um bei der Entschlüsselung im Bootprozess das Passwort im Cache zu nutzen.

sudo vim /etc/crypttab
# Folgenden Inhalt einfügen
# "home" ist der name der entschlüsselten Partition, /dev/home/crypthome die eigentliche verschlüsselte Partition, none für kein Keyfile (nutzt Passsword im Cache)
home /dev/home/crypthome none

Danach die /etc/fstab Datei bearbeiten und die entschlüsselte Partition an der gewünschten Stelle mounten. Bei mir sieht es so aus: (etwas unkonventionell, ich erstelle bind mounts auf die Verzeichnisse in /home).

# /dev/mapper/home LABEL=home
/dev/mapper/home /run/media/hddhome/ ext4 defaults 0 0

/run/media/hddhome/Pictures /home/seid/Pictures none defaults,bind 0 0
/run/media/hddhome/Videos /home/seid/Videos none defaults,bind 0 0
/run/media/hddhome/Documents /home/seid/Documents none defaults,bind 0 0
/run/media/hddhome/Downloads /home/seid/Downloads none defaults,bind 0 0
/run/media/hddhome/Games /home/seid/Games none defaults,bind 0 0
/run/media/hddhome/Music /home/seid/Music none defaults,bind 0 0
/run/media/hddhome/Software /home/seid/Software none defaults,bind 0 0
/run/media/hddhome/Templates /home/seid/Templates none defaults,bind 0 0
/run/media/hddhome/Public /home/seid/Templates none defaults,bind 0 0
/run/media/hddhome/Phone /home/seid/Phone none defaults,bind 0 0

Package Management

Pacman Konfigurieren

/etc/pacman.conf anpassen, folgende Linien unter "Misc Options" auskommentieren bzw. bearbeiten:

Color
ParallelDownloads = 5 # AUF 10 STELLEN
ILoveCandy # Hinzufügen am Ende

Mirrorlist optimieren

Reflector Paket installieren:

$ sudo pacman -S reflector

Sicherungskopie der alten Mirrorlist erstellen:

$ sudo cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak

Mirrorlist optimieren:

$ sudo reflector --verbose --latest 10 --protocol https --sort rate --save /etc/pacman.d/mirrorlist

Lokale Paketdatenbank updaten:

$ sudo pacman -Sy

Wir automatisieren diesen Schritt, damit Reflector uns in Zukunft Arbeit abnimmt. /etc/xdg/reflector/reflector.conf editieren und folgende Linien anpassen:

--save /etc/pacman.d/mirrorlist
--protocol https
--country Switzerland
--latest 10
--sort rate

Systemd Service aktivieren und voilà.

$ sudo systemctl enable reflector.timer

Firewall einrichten

ufw Paket installieren:

sudo pacman -S ufw

Simple Konfiguration:

# Alle Verbindungen ablehnen
ufw default deny
# Verbindungen aus dem lokalen Netzwerk erlauben
ufw allow from 192.168.0.0/24

# Beispiel: kdeconnect Rules
sudo ufw allow 1714:1764/udp
sudo ufw allow 1714:1764/tcp

# ssh rate limiten, schützt vor brute-force Attacken
ufw limit ssh

sudo ufw reload

UFW selbst und den systemd service einschalten:

sudo ufw enable
sudo systemctl enable ufw

Reboot und prüfen

sudo systemctl ufw status
ufw status

Bluetooth & Audio einrichten

sudo pacman -S bluez bluez-utils pipewire pipewire-pulse pipewire-jack pipewire-alsa wireplumber pavucontrol
sudo modprobe btusb
sudo systemctl enable bluetooth
sudo systemctl start bluetooth

Pipewire bei Systemstart für den Benutzer aktivieren:

systemctl --user enable pipewire.service pipewire-pulse.service

Bluetooth pairing

Um in einem Dual boot System Bluetoothgeräte mit beiden Betriebssystemen verbinden zu können, müssen die Pairing Keys auf der Linux Installation mit den von Windows übereingestimmt werden. Da ich Windows nur noch sehr selten nutze, habe ich mir nicht die Mühe gemacht dies zu implementieren. Details sind im Archwiki verzeichnet.

Schöner Boot Splashscreen

Nicht notwendig, aber schön. Das Softwarepaket Plymouth erstellt schöne Boot Splashscreens.

Kernel Parameter bearbeiten, quiet und splash Parameter einbauen. Ausserdem einige GRUB Optionen setzen, sodass es nicht sichtbar ist. Durch Drücken der ESC Taste im Bootprozess kommt man ins GRUB Menu, so kann auch Plymouth ein- oder ausgeschaltet werden.

sudo vim /etc/default/grub

# GRUB Einstellungen
GRUB_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_TIMEOUT_STYLE=hidden

# Kernel Parameter, ganz am Anfang rein. "loglevel=3" löschen
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Initramfs bearbeiten, plymouth hook nach systemd einbauen.

sudo vim /etc/mkinitcpio.conf
# Inhalt:
HOOKS(systemd plymouth ...)

Plymouth HiDPI Scaling in der Konfigurationsdatei aktivieren:

sudo vim /etc/plymouth/plymouthd.conf
# unter [Deamon]
DeviceScale=an-integer-scaling-factor

Ein Plymouth Theme auswählen und setzen. Kann mit der Shell gemacht werden. Ich nutze einfach die Einstellung "Boot Splash Screen" in KDE. Es können Screens im KDE Store heruntergeladen werden, ich nutze einen der Defaults - bgrt. In der vorherigen Konfigurationsdatei nachschauen, ob es wirklich gesetzt wurde. Ein Preview kann wie folgt angeschaut werden:

# als root
plymouthd; plymouth --show-splash; sleep 5; plymouth --quit

Initramfs neu erbauen, grub cfg neu bauen. Nach dem Setzen eines neuen Splashscreens muss das Initramfs immer neu gebaut werden.

sudo mkinitcpio -P
sudo grub-mkconfig -o /boot/grub/grub.cfg

Snapshots restoren

Die Pakete snapper-rollback (CLI) oder btrfs-assistant (GUI) aus dem AUR installieren. Hier erkläre ich, wie snapper-rollback funktioniert.

Die Datei /etc/snapper-rollback.conf bearbeiten, und bei der Option mountpoint den Mountpoint der BTRFS Toplevel Subvolume angeben (BTRFS root). Falls dem Installationstutorial gefolgt wurde, ist das in /mnt/btrfs-root. Speichern und schliessen. Danach wie folgt vorgehen:

# Alle Subvolumes und Snapshots listen (nicht nötig, aber nice to know)
sudo btrfs subvolume list -t /
# Besser: Snapper Snapshots auflisten und die gewünschte ID aussuchen
snapper list
# Oder: Snapper Snapshots einer bestimmten Konfiguration anzeigen
snapper -c configname list
# Snapshot restoren mit snapper-rollback und neustarten
sudo snapper-rollback ID
sudo reboot -h now
# Nach neustart pacman db lock datei löschen
sudo rm /var/lib/pacman/db.lck

snapper-rollback hat automatisch ein Backup des zuletzt gebrauchten Subvolume erstellt. Diese kann gelöscht werden bei Bedarf, kann einfach mit btrfs-assistant gemacht werden.

Falls das System komplett unbrauchbar ist, zuerst im GRUB Menü in den funktionierenden Snapshot booten. Dabei ist es wichtig, sich die ID jetzt zu merken (ist im Pfad ersichtlich z. B. @snapshots/5408/snapshot). Dann im eingeloggten Systemsnapper-rollback IDNUMMER ausführen und neu starten.

Quellen:
https://wiki.archlinux.org/title/installation_guide
https://wiki.archlinux.org/title/Dual_boot_with_Windows
https://wiki.archlinux.org/title/Dm-crypt/Encrypting_an_entire_system
https://wiki.archlinux.org/title/Dm-crypt/Drive_preparation
https://wiki.archlinux.org/title/Arch_boot_process
https://wiki.archlinux.org/title/NVIDIA/Tips_and_tricks
https://wiki.archlinux.org/title/NVIDIA/Troubleshooting
https://wiki.archlinux.org/title/Power_management/Suspend_and_hibernate
https://wiki.archlinux.org/title/General_recommendations
https://www.codyhou.com/arch-encrypt-swap/
https://dev.to/tassavarat/installing-arch-linux-with-btrfs-and-encryption-48na


GNU/Linux.ch ist ein Community-Projekt. Bei uns kannst du nicht nur mitlesen, sondern auch selbst aktiv werden. Wir freuen uns, wenn du mit uns über die Artikel in unseren Chat-Gruppen oder im Fediverse diskutierst. Auch du selbst kannst Autor werden. Reiche uns deinen Artikelvorschlag über das Formular auf unserer Webseite ein.

Dieser Artikel fasst die Veröffentlichungstermine für Firefox und Firefox ESR im Jahr 2025 übersichtlich zusammen.

Neue Major-Releases von Firefox erscheinen in der Regel alle vier Wochen. Auf diese Weise erreichen Neuerungen schneller den Endnutzer und man muss nicht viele Monate auf bereits implementierte Funktionen warten. Mittlerweile sind auch Veröffentlichungstermine von Firefox für das Jahr 2025 bekannt.

Das sind die Firefox Release-Termine 2025

Firefox 134, Firefox ESR 128.6, Firefox ESR 115.19
7. Januar 2025 (6 Wochen nach Firefox 133)

Firefox 135, Firefox ESR 128.7, Firefox ESR 115.20
4. Februar 2025 (4 Wochen nach Firefox 134)

Firefox 136, Firefox ESR 128.8, Firefox ESR 115.21
4. März 2025 (4 Wochen nach Firefox 135)

Firefox 137, Firefox ESR 128.9
1. April 2025 (4 Wochen nach Firefox 136)

Firefox 138, Firefox ESR 128.10
29. April 2025 (4 Wochen nach Firefox 137)

Firefox 139, Firefox ESR 128.11
27. Mai 2025 (4 Wochen nach Firefox 138)

Firefox 140, Firefox ESR 140.0, Firefox ESR 128.12
24. Juni 2025 (4 Wochen nach Firefox 139)

Firefox 141, Firefox ESR 140.1, Firefox ESR 128.13
22. Juli 2025 (4 Wochen nach Firefox 140)

Firefox 142, Firefox ESR 140.2, Firefox ESR 128.14
19. August 2025 (4 Wochen nach Firefox 141)

Firefox 143, Firefox ESR 140.3
16. September 2025 (4 Wochen nach Firefox 142)

Firefox 144, Firefox ESR 140.4
14. Oktober 2025 (4 Wochen nach Firefox 143)

Firefox 145, Firefox ESR 140.5
11. November 2025 (4 Wochen nach Firefox 144)

Firefox 146, Firefox ESR 140.6
9. Dezember 2025 (4 Wochen nach Firefox 145)

Firefox 147, Firefox ESR 140.7
13. Januar 2026 (5 Wochen nach Firefox 146)

Der Beitrag Firefox: Release-Termine 2025 erschien zuerst auf soeren-hentzschel.at.

Debian Linux auf älterer Mac Hardware - Ein Experiment.

Einleitung

Für diejenigen Leser, denen der Weihnachtsmann - schon wieder - keinen Kleinstrechner beschert hat, bzw. für Leute mit lieben Verwandten, die vom Hersteller mit nicht weiter "verarzteter" Hardware zurückgelassen wurden, soll es hier darum gehen, sich mit nur wenigen Handgriffen - oder wahlweise auch ein paar mehr - eine Art "Apple GUI" zu erzeugen.

In unserem Fall handelt es sich bei der Hardware um ein "Macbook Pro" von 2011 sowie - zum Vergleich - ein gleich altes sogenanntes "Netbook", welches ebenfalls in 2011 hergestellt wurde. Beide besitzen Intel CPUs, die 64-bit können. Die Anwenderin, unser "Versuchsobjekt", nähert sich im März 2025 der Vollendung ihres 80sten Lebensjahres, womit sie noch einmal deutlich älter ist.

$ lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit

Eine 500 GB SATA SSD haben wir besorgt, welche die bislang verwendete Festplatte ersetzen soll.

Leider wäre es erforderlich gewesen, vorab den umfangreichen Datenbestand der letzten 15 Jahre zu sortieren und geregelt einem Backup zuzuführen, womit das "Experiment" vermutlich im März fortgeführt werden muß, und wir uns hier zunächst auf "Vorgeplänkel" beschränken.

Hauptteil

Gute Linux Distributionen gibt es bekanntlich eine ganze Menge, und neben auf Arch basierten gibt es auch welche, die auf Debian basieren, oder gar Debian selbst. In unserer Betrachtung beschränken wir uns auf Debian "netinstall", und hier - für das Macbook - auf die Images für Apple Hardware, die seit einiger Zeit keine "Klimmzüge" für Firmware mehr erfordern.

Die "netinstall" Images bieten wahlweise eine Installation ganz ohne Desktop Environment, lassen die Auswahl ausgewählter Fenstermanager zu, oder - halt doch - die Auswahl kompletter Desktop Environments ("DE"s).

https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/

Hier interessiert uns natürlich insbesondere das folgende Image (Es handelt sich um "Netzinstallationen", die - während der Installation - aktualisierte Pakete herunterladen, bzw. explizit ausgewählte ergänzen, aber für Apple geeignete Firmware bereits mitbringen, aktuell ist die Debian Version "12.8"):

https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-mac-12.8.0-amd64-netinst.iso

Für das Netbook nehmen wir das hier (anstatt "debian-mac" nur "debian"):

https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-12.8.0-amd64-netinst.iso

Die Installation selbst verläuft dann quasi wie jede andere, nur das man u. a. Gelegenheit hat, seine WLAN Kennung zu übermitteln. Ein wichtiger Punkt sind die zu installierenden Pakete. Eine etwas ältere Beschreibung - mit Screenshots - zur "netinstall" Installation wäre diese:

https://www.securitronlinux.com/bejiitaswrath/installing-debian-from-the-netinstall-iso-image-is-very-easy/

In unserem Fall nehmen wir im Punkt "Software selection" zunächst ALLE(!) gesetzten Häkchen raus, und es soll auch z. B. kein "Server" werden. Den Punkt "Debian desktop environment" lassen wir leer, wobei wir jedoch einen Haken setzen bei "standard system utilities" sowie einen bei "LXDE".

Eine Anmerkung: Im März werden wir möglicherweise auf LXQt zurückgreifen (anstatt LXDE), und wer will, darf natürlich auch beide Environments installieren. Die "Dickschiffe" unter den DE's wären für halbwegs aktuelle Hardware immerhin eine Option.

Am nunmehr frisch aufgesetzten Rechner öffnen wir ein Terminal, um die Software zu aktualisieren (hier über sudo), wobei es hier kaum mehr etwas geben dürfte, weil ja "netinstall" verwendet wurde. Wir haben aber auch Gelegenheit, erforderliche Pakete zu ergänzen. Fertige Konfigurationen können natürlich ins Homeverzeichnis - an geeignete Stelle - kopiert werden:

$ sudo apt update $ sudo apt dist-upgrade

LXDE bringt noch X11 mit, und wir installieren uns die 'Plank' Leiste sowie 'xcompmgr' (für Transparenz und Schatten) und -willkürlich- 'synaptic' (zur grafischen Paketverwaltung) und wahlweise einige - hier wirklich rein optionale - Tools. 'Scite' z.B. ist ein grafischer Editor:

$ sudo apt install plank xcompmgr synaptic scite units when wcalc

Mac Icons sind u.a. hier verfügbar, oben quasi der "Vollausbau" mit Xfce, unten - unter 'Files' - die Icons:

https://www.pling.com/s/XFCE/p/1408712 https://www.pling.com/p/1400021/

Wir hingegen beschränken uns auf LXDE und die Icons. Zunächst entpacken wir die Dinge und verschieben den Unterordner 'Mkos-Big-Sur' nach ~/.local/share/icons/

Unter 'Default applications for LXSession', dort unter 'Autostart' setzen wir plank und xcompmgr, vgl. Screenshot '

Wer keinen Neustart durchführen will, kann den Fenstermanager 'openbox' neu starten mit:

$ openbox --reconfigure

Die LXDE Leiste verlegen wir nach oben, und die Plank Leiste nach unten. Unter 'Erscheinungsbild anpassen' können wir unter dem Reiter "Symbolthema" anstatt des - ebenfalls sehr guten 'Gnome-Brave' - nunmehr 'Mkos-Big-Sur' auswählen.

Ehe wir uns wieder dem Weihnachtsessen zuwenden, hier noch einige Anmerkungen und Hinweise zur Plank Leiste. Leider funktioniert sie bislang nicht unter Wayland. Einstellungen können vorgenommen werden, indem man in der Leiste - bei gedrückter Steuerungstaste - in den Leerraum "rechtsklickt".

Im März werde ich hier wieder vor Ort sein können, um dann zu berichten, wie das Experiment konkret Form annimmt, und welche Probleme und Hürden im praktischen Einsatz dabei "umschifft" wurden oder noch werden. Auf Firefox ESR und Libreoffice wurde bereits erfolgreich umgestellt.

Allerseits ein Frohes Fest und eine Guten Rutsch!

Quellen:
Verwendet wurden URLs aus dem Internet und von mir selbst angefertigte Screenshots. Ursprünglich waren es das Hauptbild und vier weitere, wobei ich einsehe, dass dies etwas über das Ziel hinausschießt. Letztlich bleibt es beim Hauptbild, sowie Bild1 (Autostarts unter LXDE) und Bild3 (zum Plank Erscheinungsbild).


GNU/Linux.ch ist ein Community-Projekt. Bei uns kannst du nicht nur mitlesen, sondern auch selbst aktiv werden. Wir freuen uns, wenn du mit uns über die Artikel in unseren Chat-Gruppen oder im Fediverse diskutierst. Auch du selbst kannst Autor werden. Reiche uns deinen Artikelvorschlag über das Formular auf unserer Webseite ein.

Multimedia Codecs unter openSUSE 15.6 nachinstallieren.

Weihnachtszeit ist für viele von uns Familien-Admin-Zeit. Und so ergeht es auch mir regelmäßig. In diesem Jahr darf ich einen neuen Acer Aspire 3 Laptop für meine Mutter installieren, da das alte Gerät irreparabel defekt ist. Die Distribution der Wahl ist für solche Fälle openSUSE mit Xfce.

Standardmäßig unterstützt openSUSE allerdings aus rechtlichen Gründen (US-Softwarepatente und Digital Millennium Copyright Act (DMCA)) nur freie, offene und nicht mit Patenten belastete Formate wie Ogg Theora, Ogg Vorbis und Flac.

Wer dennoch, wie meine Mutter, darauf angewiesen ist, unfreie Formate abzuspielen, kann die benötigten Codecs einfach nachinstallieren.

Dazu lässt sich zunächst mit Root-Rechten das Packman-Repositories über das Terminal anbinden:

sudo zypper addrepo -f http://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Leap_15.6/ packman

Daraufhin können die benötigten Pakete mit zypper installiert werden:

sudo zypper install --allow-vendor-change ffmpeg-4 gstreamer-plugins-bad gstreamer-plugins-libav gstreamer-plugins-ugly lame libavdevice58_13 vlc-codecs

Zunächst muss der GPG-Signing-Key des Packman-Repositories akzeptiert werden. Der ausgegebene Fingerprint kann dazu mit den Angaben auf der Webseite des Projektes verglichen werden. Bei einer Übereinstimmung kann der Key durch Eingabe von i (immer), dauerhaft übernommen werden.

Falls außerdem eine Meldung bezüglich Abhängigkeitskonflikten angezeigt wird, sollte die Option zum Anbieterwechsel auf das Packman-Repository ausgewählt werden. Zu beachten ist, dass unter openSUSE in der Xfce Variante der VLC-Player nicht mehr standardmäßig mitinstalliert wird. Die obige Paketliste sollte in diesem Falle durch vlc ergänzt werden, falls der Multimedia-Player beötigt wird.

Abschließend muss sichergestellt werden, dass alle bereits installierten Multimedia-Pakete in Zukunft aus dem Packman-Repository bezogen werden. Dazu öffnet man YaST Software Management / View / Repositories und wählt das Packman Repository. Oberhalb der Paketliste wählt man daraufhin Switch system packages und bestätigt dies mit Accept.

Alternativ kann folgender Befehl im Terminal ausgeführt werden:

sudo zypper dup --allow-vendor-change --from http://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Leap_15.6/

Bildquelle: so sieht es bei meiner Mutter zu Weihnachten aus. Auf dem Bild ist der neue Acer zu sehen, auf dem die Installation von openSUSE 15.6 läuft.


GNU/Linux.ch ist ein Community-Projekt. Bei uns kannst du nicht nur mitlesen, sondern auch selbst aktiv werden. Wir freuen uns, wenn du mit uns über die Artikel in unseren Chat-Gruppen oder im Fediverse diskutierst. Auch du selbst kannst Autor werden. Reiche uns deinen Artikelvorschlag über das Formular auf unserer Webseite ein.

19. Dezember 2024

Mozilla hat seine Partnerschaft mit Ecosia erweitert und liefert deren Suchmaschine nun von Haus aus in mehreren Ländern aus.

Wenige Tage nach Veröffentlichung des Finanzberichts für das Jahr 2023, aus welchem hervorging, dass der Gesamtumsatz zwar gesteigert werden konnte, aber die Einnahmen durch Suchmaschinen um ca. 15 Millionen auf 495 Millionen USD gesunken sind, hat Mozilla eine Erweiterung seiner Suchmaschinen-Partnerschaft mit Ecosia angekündigt.

Bislang stand Ecosia ausschließlich von Haus aus in Firefox zur Verfügung, wenn Firefox in deutscher Sprache genutzt worden ist. Ab sofort steht Ecosia unabhängig von der verwendeten Browsersprache für Nutzer in den folgenden Ländern zur Verfügung: Deutschland, Österreich, Schweiz, Belgien, Italien, Niederlande, Schweden und Spanien.

Ecosia ist eine Suchmaschine aus Deutschland, welche unter der Haube von Google und Bing beliefert wird. Erst im November wurde angekündigt, gemeinsam mit der Suchmaschine Qwant einen europäischen Suchindex aufzubauen, der ergänzend zum Einsatz kommen soll. Die Besonderheit von Ecosia ist das Versprechen, 100 Prozent des Gewinnes für den Klima- und Umweltschutz zu nutzen. Unter anderem pflanzt Ecosia im Gegenzug für durchgeführte Suchanfragen Bäume. Jeden Monat veröffentlicht Ecosia außerdem einen Bericht, in welchem sie offenlegen, wie viel Geld sie eingenommen und wie viel Geld sie ausgegeben haben.

Der Beitrag Mozilla erweitert Suchmaschinen-Partnerschaft mit Ecosia erschien zuerst auf soeren-hentzschel.at.

18. Dezember 2024

Wer über Mozilla auf dem Laufenden bleiben und keinen Artikel verpassen möchte, kann diesem Blog auch auf Mastodon folgen. Auch die Kanäle auf X (ehemals Twitter), Facebook und Threads sind weiterhin verfügbar. Der Mastodon-Kanal ist nun jedoch umgezogen.

Was ist Mastodon?

Mastodon ist der wohl bekannteste Vertreter des sogenannten Fediverse und erlebt aktuell einen regelrechten Hype. Für diejenigen, welche mit dem Begriff Fediverse nichts anfangen können, hat Wikipedia eine Beschreibung parat:

Die Idee des „Fediverse“ ist, dass es möglich sein soll, ein Benutzerkonto auf einer beliebigen Plattform im Fediverse anzulegen und sich darüber mit Nutzern auf allen anderen Plattformen austauschen zu können, ohne dort ein weiteres Konto anlegen zu müssen. Ermöglicht wird das dadurch, dass die einzelnen Plattformen mittels bestimmter Kommunikationsprotokolle miteinander verbunden sind und so die föderierte Identität und Inhalte jeweils auf andere verbundene Plattformen und Instanzen verteilt werden. Diese Praxis steht im Gegensatz zu geschlossenen sozialen Netzwerken wie Twitter oder Facebook, bei denen Benutzer ein eigenes Benutzerkonto in jedem der Netzwerke benötigen, wenn sie mit anderen Nutzern des jeweiligen Netzwerks interagieren möchten.

Mastodon-Kanal

Nach der Einstellung von Mozilla Social musste ich mit meinem Mastodon-Kanal umziehen. Dieser befindet sich ab sofort auf einer selbst gehosteten Instanz, was für mich den Vorteil hat, bei Antworten auf Fragen oder in Diskussionen nicht mehr in der Zeichenanzahl limitiert zu sein. Außerdem konnte ich dadurch vermeiden, erneut (es handelt sich nicht um meinen ersten Mastodon-Umzug) mit einem komplett leeren Konto beginnen zu müssen, wie es sonst leider üblich ist. Durch den Import meines X-Archives startet der Kanal statt mit 0 Beiträgen mit über 6.800 Beiträgen seit dem Jahr 2010. Die meisten Follower, die mir auf Mastodon bereits folgten, wurden automatisch übernommen. Dennoch empfehle ich eine Kontrolle, um sicherzugehen, dass nichts verpasst wird.

@s_hentzschel auf Mastodon folgen

Natürlich werde ich auch weiterhin auf X (ehemals Twitter), Facebook und Threads vertreten sein.

@s_hentzschel auf X (Twitter) folgen
@soerenhentzschelAT auf Facebook folgen
@soeren.hentzschel auf Threads folgen

Der Beitrag In eigener Sache: Neue Mastodon-Instanz erschien zuerst auf soeren-hentzschel.at.