❌

Normale Ansicht

Firefox 161 erweitert Theme-Auswahl um klassische Themes und OLED-Schwarz

02. November 2026 um 21:33

Mit Firefox 157 hatte Mozilla unter anderem das neue „Nova“-Design an den Start gebracht. Zu den bereits angebotenen Farbvarianten kommen mit Firefox 161 auch noch „klassische“ Varianten ohne Farbverlauf in die integrierte Auswahl dazu. Darunter auch ein „OLED-Theme“.

Nova – das neue Design von Firefox 157

Mit Firefox 157 hat Mozilla eine neue Optik für seinen Browser eingeführt. Diese wurde intern unter dem Projektnamen „Nova“ entwickelt. Charakteristisch für das neue Design von Firefox sind vor allem die starken Rundungen. Auch zahlreiche Icons wurden erneuert. Wo bislang Grau oder Blau als Akzentfarbe eingesetzt worden ist, setzt Mozilla nun auf Violetttöne. Und während Flächen bislang einfarbig und graue Farben dominant waren, setzt Mozilla mit „Nova“ auf mehr Farbe und teilweise auch auf dezente Verläufe. Dabei hat der Nutzer standardmäßig die Auswahl zwischen jeweils zwölf hellen sowie dunklen Farbstimmungen.

Firefox 161 bringt „klassische” Themes

Während man sagen kann, dass das neue Design durch die Rundungen sowie Farbwahl den aktuellen Zeitgeist trifft, liegt es natürlich auf der Hand, dass es auch Nutzer gibt, welche die bisherige Optik bevorzugen. Für diese Nutzer hatte Mozilla bereits das Proton-Theme auf seiner offiziellen Erweiterungs-Plattform veröffentlicht, welches zwar nicht die Rundungen und Icons verändert, aber zumindest farblich nahe an der bisherigen Optik ist.

Mit Firefox 161 geht Mozilla einen Schritt weiter: Zur bisherigen Standard-Auswahl kommen unter der Überschrift „Klassische Themes“ weitere elf Farbvarianten hinzu, jeweils in einer hellen und dunklen Ausführung. Dabei entspricht die Variante „Grau“ dem bereits genannten Proton-Theme. Der Unterschied zu den bisherigen Farbvarianten: Die „klassischen” Themes setzen auf einfarbige Symbolleisten anstelle von Farbverläufen. Wie bei den anderen Nicht-Standard-Varianten wird außerdem nicht so stark auf Violett als Akzentfarbe gesetzt.

Themes in Firefox 161

Einige Elemente auf Inhaltsseiten wie den Firefox-Einstellungen nutzen weiterhin Violett, da diese Stellen nicht durch Firefox-Themes angesprochen werden. An prominenten Stellen wie der Adressleiste, dem Menü oder diversen Panels verschwindet mit den angebotenen Farbvarianten hingegen das Violett aus Firefox.

„OLED-Theme” für Firefox

Eines der neuen „klassischen” Themes ist ein Theme mit sogenanntem „OLED-Schwarz“. Gemeint ist damit ein Theme, welches reines Schwarz als Hintergrundfarbe verwendet.

Bei der Displaytechnik OLED leuchten die Pixel selbst. Bei reinem Schwarz bleiben die entsprechenden Pixel ausgeschaltet. Dadurch erscheinen diese Flächen vollständig schwarz und verbrauchen keine Energie für die Lichterzeugung. Dunkle Themes verwenden aus ästhetischen Gründen in der Regel kein reines Schwarz. Mit einem „OLED-Theme” lässt sich dieser Vorteil für die entsprechend eingefärbten Bereiche ausnutzen.

Über 515.000 weitere Themes

Wem das nicht reicht, der findet auf addons.mozilla.org im Übrigen eine Auswahl von mehr als 515.000 kostenlosen Themes, die größtenteils von Drittanbietern stammen.

Der Beitrag Firefox 161 erweitert Theme-Auswahl um klassische Themes und OLED-Schwarz erschien zuerst auf soeren-hentzschel.at.

Der Coding-Agent Pi — die Claude-Code-Antithese

02. November 2026 um 18:40

Vor ein paar Wochen habe ich hier beschrieben, wie ich das Sprachmodell Qwen 3.8 Flash Next auf einem Rechner mit Strix-Halo-CPU und 128 GB RAM ausführe. Dort habe ich auch angekündigt, den Coding-Agenten Pi vorzustellen, mit dem ich das lokale Modell getestet habe: Pi ist so ziemlich das Gegenteil von Claude Code — minimalistisch, sparsam mit dem Kontext und gerade deswegen ideal für lokal ausgeführte Sprachmodelle.

Das Problem: Claude Code und lokale Modelle

Claude Code ist für mich aktuell das beste CLI-Coding-Tool. Das gilt aber nicht für das Zusammenspiel mit lokalen Modellen. Zwar lässt sich Claude Code über die Umgebungsvariable ANTHROPIC_BASE_URL mit LM Studio, llama.cpp & Co. verbinden, aber die Ergebnisse sind ernüchternd: Schon für einen Miniprompt wie »Can we talk?« vergehen je nach Modell Minuten, bis die erste Antwort erscheint.

Eine Ursache dafür ist das sogenannte Context Bloating. Claude Code schickt bei jedem Prompt einen riesigen Basiskontext mit. Wenn Sie in einer leeren Session nach »Can we talk?« das Kommando /context ausführen, zeigt Claude Code eine Kontextnutzung von 50k bis 60k Token an:

  • Der Systemprompt beansprucht ca. 10k Token. Das ist eine Grundanleitung, wie Claude Code agieren soll.
  • Ungefähr weitere 30k Token ergeben sich aus der Anleitung, wie der Agent Tools wie Bash, Edit, Read oder Write aufrufen soll.
  • Der Rest stammt von Skills, Plugins, MCP-Servern usw.

Bei den Anthropic-Modellen mit einem Kontextfenster von einer Million Token ist das (fast) vernachlässigbar. Ein lokales Modell mit einem Kontextfenster von 260.000 Token ist aber schon zu 20 bis 25 Prozent gefüllt, bevor Sie überhaupt etwas Sinnvolles gefragt haben. Und all diese Token müssen von Ihrer lokalen Hardware verarbeitet werden, die nun mal nicht mit Cloud-Rechenzentren mithalten kann. Manche Kritiker sprechen bei Claude Code deswegen nicht nur von Context, sondern auch von Feature Bloating.

Die Idee hinter Pi

Hinter Pi steckt Mario Zechner: Der Österreicher hat unter anderem das Game-Framework libGDX entwickelt. Als ihm Claude Code zu komplex und zu geschwätzig wurde, hat er kurzerhand einen eigenen Agenten geschrieben. Der Code steht unter der MIT-Lizenz und wird mittlerweile von der Organisation Earendil weiterentwickelt. Seit 1.10.2026 gibt es die Version 1.0, aktuell (Anfang November 2026) ist schon Version 1.5.

Die Grundidee lässt sich schnell zusammenfassen: Moderne Sprachmodelle wissen ohnehin schon, wie man eine Shell bedient, wie ein Git-Repository funktioniert und wie man eine Datei bearbeitet. Vieles von dem, was ein Systemprompt, AGENTS.md, Skills usw. hinzufügen, kostet zuerst einmal Token und lenkt ab. (Das sagen übrigens nicht nur die Pi-Entwickler, das sagt interessanterweise — wenn auch in einem etwas anderen Zusammenhang — sogar Anthropic!)

Pi aktiviert deswegen standardmäßig nur vier Tools: read, write, edit und bash. Es gibt kein eigenes Tool für die Volltextsuche, keines für Webzugriffe. Wer suchen will, ruft über bash einfach grep oder rg auf. Der komplette Systemprompt inklusive aller Tool-Definitionen beträgt nur gut 1.000 Token. Das ist ein Fünfzigstel von dem, was Claude Code mindestens braucht! Bei einem lokalen Modell mit 130.000 oder 260.000 Token ist das der Unterschied zwischen »unbrauchbar langsam« und »funktioniert«.

Der Preis für diese Sparsamkeit sind weniger Funktionen, weniger Komfort im Terminal und weniger Tools. Pi ist aber erweiterbar (dazu gleich mehr). Erfreulich für Umsteiger: Pi liest beim Start AGENTS.md und ersatzweise CLAUDE.md, und zwar global, aus allen übergeordneten Verzeichnissen sowie aus dem aktuellen Verzeichnis.

Installation

Pi setzt Node.js (Version 22.19 oder neuer) voraus. Zur Installation verwenden Sie am einfachsten das Installations-Script oder npm (hier zur Referenz die Originalanleitung).

$ curl -fsSL https://pi.dev/install.sh | sh                  # Linux, macOS
> powershell -c "irm https://pi.dev/install.ps1 | iex"       # Windows
$ npm i -g --ignore-scripts @earendil-works/pi-coding-agent  # Node.js

Das Installations-Script hat den Vorteil, dass es alle Abhängigkeiten auf exakte Versionen fixiert; Updates führen Sie dann mit pi update durch. Weitere Installationsvarianten beschreibt https://pi.dev.

Anschließend starten Sie den Agenten im Projektverzeichnis mit pi und melden sich mit /login bei einem der über 40 unterstützten Anbieter an. Neben Anthropic, OpenAI und Google funktionieren auch OpenRouter, DeepSeek oder Groq. Bei OpenAI können Sie sogar ein ChatGPT-Abo verwenden.

Auch die Startseite von Pi ist minimalistisch

Lokale Modelle anbinden

Für mich viel interessanter ist aber die Anbindung eines lokalen Modells. Dazu tragen Sie den Server in ~/.pi/agent/models.json ein. Das folgende Beispiel geht davon aus, dass LM Studio auf dem lokalen Rechner läuft und dort das Modell Qwen 3.8 Flash Next geladen ist:

{
  "providers": {
    "lmstudio": {
      "baseUrl": "http://localhost:1234/v1",
      "api":     "openai-completions",
      "apiKey":  "lmstudio",
      "models": [
        { "id": "qwen3.8-flash-next",
          "contextWindow": 262144 }
      ]
    }
  }
}

Pi spricht mit LM Studio über die OpenAI-kompatible Schnittstelle. Die meisten Inferenz-Engines unterstützen diese API, d.h., die gleiche Konfiguration funktioniert sinngemäß auch für Ollama, vLLM oder die auf Strix Halo optimierten Engines, die ich in meinem Artikel zu Qwen 3.8 Flash Next vorgestellt habe. Sie müssen nur baseUrl und die Modell-ID anpassen. Die Angabe von contextWindow ist optional; ohne sie nimmt Pi 128.000 Token an. Welche Modelle gerade zur Auswahl stehen, zeigt /model.

Mittlerweile hat Pi außerdem einen eingebauten Provider für den Router-Modus von llama.cpp. Dabei verwaltet llama serve mehrere GGUF-Modelle und lädt diese bei Bedarf. In Pi richten Sie die Verbindung mit /login llama.cpp ein, laden mit /llama ein Modell und wählen es dann mit /model aus.

Hinweis: Achten Sie darauf, dass Sie in Ihrer Inferenz-Engine ein ausreichend großes Kontextfenster einstellen. Viele Engines verwenden per Default einen winzigen Kontext von 4.096 oder 32.768 Token. Für agentisches Coding ist das viel zu wenig, auch mit Pi. Ich verwende auf meinem 128-GB-Rechner das Maximum, das viele lokale Modelle aktuell unterstützen, also 256k Token (262144).

Erweiterungsmechanismen

Ein Agent mit so wenigen Tools klingt trostlos. Pi kompensiert den anfänglichen Minimalismus mit vier Erweiterungsmechanismen:

  • Skills: Im Kontext steht dauerhaft nur die Beschreibung eines Skills. Die eigentliche Anleitung wird erst geladen, wenn der Skill tatsächlich gebraucht wird.
  • Extensions: Das sind TypeScript-Module, die eigene Tools, Slash-Kommandos oder Hooks (ebenfalls auf TypeScript-Basis) zur Verfügung stellen.
  • Prompt Templates: wiederverwendbare Prompt-Bausteine, vergleichbar mit den Slash-Kommandos von Claude Code.
  • Themes und Keybindings: Farbschemata und Tastenkürzel.

Skills liest Pi aus den folgenden Verzeichnissen:

~/.pi/agent/skills
~/.agents/skills
projektverzeichnis/.pi/skills
projektverzeichnis/.agents/skills

Alle vier Mechanismen lassen sich zu einem Pi Package zusammenfassen und über npm oder Git weitergeben. Installiert werden Pakete mit pi install npm:paketname.

MCP: Kehrtwende mit Kontext-Spartrick

Lange Zeit war die Meinung der Pi-Entwickler zu MCP klar: »No MCP. Build CLI tools with READMEs.« Wer partout MCP wollte, musste das Paket pi-mcp-adapter installieren.

Mit Version 0.99 (Ende September 2026) hat sich das geändert: Pi unterstützt MCP-Server jetzt direkt, sowohl lokal (stdio) als auch remote (Streamable HTTP, inklusive OAuth-Login). Die Konfiguration erfolgt in ~/.pi/agent/mcp.json bzw. projektspezifisch in .pi/mcp.json. Das Format entspricht dem von Claude Code, d.h., Sie können vorhandene mcpServers-Einträge einfach kopieren. Alternativ richten Sie Server mit pi mcp add ein:

$ pi mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem .
$ pi mcp add docs --url https://example.com/mcp --bearer-token-env-var DOCS_TOKEN
$ pi mcp list

Innerhalb von Pi zeigt /mcp den Zustand aller Server an. Dort können Sie Server auch aktivieren oder deaktivieren und sich bei OAuth-Servern anmelden.

Interessant ist, wie Pi das Kontextproblem löst, das MCP-Server üblicherweise verursachen. Per Default landen die Tool-Definitionen der MCP-Server nämlich gar nicht im Kontext. Stattdessen aktiviert Pi ein zusätzliches Tool namens Codemode. Damit schreibt das Sprachmodell kleine JavaScript-Programme, die in einer Sandbox ausgeführt werden. Dort kann das Modell mit searchTools() nach passenden MCP-Tools suchen, diese aufrufen, die Ergebnisse filtern und nur die wirklich relevanten Ergebnisse zurückgeben. Im Systemprompt steht pro MCP-Server nur eine Zeile mit einer Kurzbeschreibung. Alternativ können Sie in mcp.json für jeden Server bzw. für einzelne Tools einstellen, ob diese direkt deklariert werden (direct), erst nach einer Suche mit tool_search (deferred) oder gar nicht (hidden).

Ob dieses Konzept auch mit lokalen Modellen gut funktioniert, hängt vom Modell ab: Ein Modell, das zuverlässig JavaScript schreibt und Tools sucht, profitiert davon. Für kleinere Modelle ist es vermutlich besser, wenige wichtige Tools mit direct freizugeben.

Keine Websuche

Zu den Lücken in Pi zählt nach wie vor die Websuche. Pi greift auf das bash-Tool mit curl zurück, um einzelne Webseiten mit bekannter URL zu lesen, aber das ist kein echter Ersatz. Hier liegt kein technisches Problem vor, sondern ein wirtschaftliches: Die meisten Suchmaschinen leben von der Werbung. Sie erkennen agentische Websuchen und blockieren diese rasch. Die fehlende Websuche ist kein Pi-spezifisches Problem, sondern betrifft auch andere Open-Source-Agenten außerhalb des reinen Coding-Umfelds, z.B. Hermes und OpenClaw.

Glücklicherweise gibt es Packages, die eine Suchfunktion für Pi nachliefern. Die meisten davon benötigen aber einen Key oder ein Abo. Beispielsweise nutzt npm:@burneikis/pi-web-search die Websuche von Anthropic; dass setzt aber einen Claude-API-Key voraus. Ich habe stattdessen pi-anysearch-tools ausprobiert. Die Installation ist unkompliziert:

$ pi install npm:pi-anysearch-tools

Das Paket erfordert allerdings eine Registrierung und einen Key bei https://anysearch.com. AnySearch hat (Stand: November 2026) einen großzügigen Free Plan, der immerhin 1.000 Suchanfragen pro Tag erlaubt. Für mehr Suchen oder eine bessere Suchqualität müssen Sie ein Abo abschließen. Den Key tragen Sie in ~/.pi/agent/anysearch.json ein:

{
  "anysearchApiKey": "as_sk_xxx"
}

Bei meinen Tests hat das Zusammenspiel zwischen Pi und AnySearch ausgezeichnet funktioniert. Seit Pi MCP unterstützt, können Sie natürlich auch einen MCP-Server für die Websuche einbinden.

Keine Permissions

Pi hat kein Permission-System. Das Modell ruft bash auf. Damit läuft jedes Kommando mit Ihren Rechten; im Worst Case gilt das auch für rm -rf! Im Unterschied zu Claude Code gibt es weder einen Auto-Modus noch einen Classifier, der Kommandos vor der Ausführung begutachtet. Wer die Grenzen der Permission-Systeme kommerzieller Coding-Agenten kennt, mag das konsequent finden. Tatsächlich habe ich mit Pi durchwegs gute Erfahrungen gemacht. Dennoch gilt: Pi ist nur so gut wie die Modelle, die es nutzt.

Immerhin gibt es einen sogenannten Project Trust: Wenn ein Projektverzeichnis eigene Einstellungen, Extensions, Skills oder MCP-Server mitbringt (also z.B. .pi/settings.json oder .pi/mcp.json), fragt Pi beim Start, ob Sie diesem Projekt vertrauen. Das verhindert, dass ein fremdes Repository unbemerkt Code in den Pi-Prozess lädt. Auf die Aktionen des Sprachmodells hat das aber keinen Einfluss.

Die Dokumentation empfiehlt stattdessen, Pi in einen Container oder eine virtuelle Maschine zu stecken, und beschreibt dafür mehrere Varianten. Das ist nicht so komfortabel wie die Sandboxing-Systeme kommerzieller Coding-Agenten, aber sicherheitstechnisch ein vernünftiger Ansatz.

Was sonst noch fehlt

Ebenfalls nicht eingebaut sind Subagenten, ein Planungsmodus, Hintergrund-Tasks oder eine Worktree-Unterstützung. Die Entwickler argumentieren, dass solche Features besser als Extension aufgehoben sind. Tatsächlich gibt es fertige Pakete, die genau das nachrüsten. Wer alles auf einmal will, greift zu omp: Das ist ein Fork von Pi, der LSP-Integration, Debugger-Anbindung, Subagenten und Planungsmodus mitbringt. Leider ist man damit wieder bei der Komplexität, vor der Pi ursprünglich geflüchtet ist.

Sessions, Slash-Kommandos und Optionen

Pi speichert jede Session als JSONL-Datei in ~/.pi/agent/sessions, sortiert nach Arbeitsverzeichnis. Mit /resume kehren Sie zu einer früheren Session zurück, mit /fork zweigen Sie von einer beliebigen Nachricht eine neue ab. /compact fasst den bisherigen Verlauf zusammen.

Neuartig aus Claude-Code-Perspektive ist /tree: Das Kommando stellt die Session als Baum dar, in dem Sie navigieren und zwischen Zweigen wechseln können. Wenn Sie einen Prompt zurücknehmen und anders formulieren, geht der alte Ast nicht verloren; Sie können jederzeit dorthin zurückspringen und beide Varianten vergleichen. Das ist deutlich mächtiger als eine lineare Rewind-Funktion.

Für die Automatisierung gibt es Betriebsarten ohne Benutzeroberfläche: pi -p "prompt" liefert die Antwort und endet dann. --mode json gibt einen Event-Stream aus, --mode rpc erlaubt die Steuerung über stdin und stdout. Mit --export machen Sie aus einer Session eine HTML-Datei. Mit --tools bzw. -t bestimmen Sie, welche Tools aktiv sind. Beispielsweise aktiviert pi -t +codemode,-write zusätzlich codemode und deaktiviert write.

Praktische Erfahrungen

Ich habe Pi mit dem lokalen Modell Qwen 3.8 Flash Next getestet (siehe auch meinen Blog-Artikel zu Qwen 3.8 Flash Next). Als ersten Test habe ich Pi gebeten, ein Spiel in der Art von Space Invaders zu programmieren. Die erste, fehlerfrei spielbare Version war nach vier Minuten fertig. Auch meine Verbesserungswünsche samt einem größeren Refactoring wurden anstandslos und zügig ausgeführt.

Pi startet einen größeren Refactoring-Prozess
Das abgeschlossene Refactoring

Ein einfaches Browser-Spiel ist ein netter Test, aber wie sieht es mit realem Code aus? Pi und Qwen 3.8 Flash Next schlagen sich wacker. Heute habe ich in einer größeren PHP-Datei (ca. 2000 Zeilen / 60 kByte Code) eine Sicherheitsanalyse durchgeführt. Pi musste natürlich auch diverse verknüpfte Code-Dateien lesen. Das Ergebnis war inhaltlich exzellent und formal gut aufbereitet, aber Claude Code (oder Pi im Zusammenspiel mit kommerziellen Cloud-Modellen) wäre viel schneller fertig gewesen. Wenn Sie diesbezüglich einmal verwöhnt sind, fällt diese Gemächlichkeit schwer, zumal gleichzeitig der Lüfter hochdreht, um die CPU zu kühlen. Lokale Modelle verdeutlichen den mit der KI verbundenen Ressourcenaufwand viel spürbarer als Cloud-Modelle!

Ich verwende KI-Agenten nicht nur für das Coding, sondern auch für eine erste Korrektur meiner in Markdown-Syntax verfassten Texte (Rechtschreibfehler, Grammatik, inhaltliche Fehler, Redundanzen etc.). Die Geschwindigkeit spielt dabei eine untergeordnete Rolle; bei längeren Texten kann ich Korrekturläufe auch über Nacht ausführen. Mit dem Coding-Agent Pi hat dieser Test zugegebenermaßen wenig zu tun, vielmehr betreffen die Ergebnisse das von mir genutzte Sprachmodell.

Das Korrekturlesen für diesen Text samt einer inhaltlichen Kontrolle hat mehr als eine Viertelstunde gedauert. Qwen-3.8-flash-next ist dabei übertrieben pingelig vorgegangen. In Pi können Sie dem Sprachmodell beim »Denken« zusehen. Qwen hat immer wieder dieselben Dinge überprüft und viele — aus meiner Sicht — komplett sinnlose Doppel- und Dreifachkontrollen durchgeführt. (Hinterlassen Sie einen Kommentar, wenn Sie doch noch einen Fehler finden!) Mein Prompt war: »proofread @pi-agent.md: fix obvious typos or grammar errors; list everything else; also check content on factual errors«

Korrektur dieses Artikels mit Pi und Qwen-3.8-flash-next

Um es zusammenzufassen: Pi mit Qwen 3.8 Flash Next funktioniert ausgezeichnet, aber kommerzielle Coding-Agenten bzw. Pi in Kombination mit kommerziellen Modellen arbeiten eben noch besser.

Fazit

Für mich kann Pi plus ein lokales Modell Claude Code noch nicht vollständig ersetzen. Das habe ich zu Beginn meiner Tests auch nicht erwartet. Für große Software-Projekte bieten kommerzielle CLIs von Anthropic, OpenAI oder Mistral mehr Qualität, Geschwindigkeit und Arbeitskomfort.

Aber Pi zeigt, wie wenig ein Coding-Agent braucht. Pi glänzt da, wo kommerzielle Agenten schwächeln: im Zusammenspiel mit lokalen Modellen mit begrenztem Kontext und begrenzter Rechenleistung. Wenn Sie aus Gründen des Datenschutzes oder der Unabhängigkeit mit einem lokalen Modell arbeiten möchten, ist Pi die erste Wahl.

Von der geringeren Geschwindigkeit und Qualität lokaler Modelle einmal abgesehen, empfand ich die fehlende Websuche als das größte Hindernis für produktives Arbeiten: Für mich ist ein Coding-Agent auch ein Hilfsmittel zur Recherche. Bei Bugs im Zusammenspiel mit modernen Bibliotheken oder bei Setup-Problemen mit neuen Tools erwarte ich, dass der Agent aktuelle Infos aus dem Internet beschaffen kann. Bei Open-Source-Coding-Agenten wie Pi ist dazu die Anbindung an einen externen Suchdienst notwendig, die zumindest bei intensiver Nutzung zusätzliche Kosten verursacht.

Quellen/Links

APT 3.3.5: Abhängigkeitsauflösung bis zu 20 Prozent schneller

Von: MK
02. November 2026 um 07:00

Der Paketmanager APT, der unter Debian, Ubuntu und anderen Debian-basierten Linux-Distributionen zum Installieren und Verwalten von Software dient, ist in Version 3.3.5 erschienen. Das Update beschleunigt die Auflösung von Paketabhängigkeiten, verbessert die Leistungsanalyse und bringt Änderungen an der Konfiguration von Repository-Signaturschlüsseln. Die wichtigste Neuerung betrifft den Abhängigkeitslöser. Laut Changelog arbeitet dieser durch Optimierungen nun 10 […]

Der Beitrag APT 3.3.5: Abhängigkeitsauflösung bis zu 20 Prozent schneller erschien zuerst auf fosstopia.

Linux Mint 27: Neue Schlafmodi, Systemmonitor und Terminal geplant

Von: MK
02. November 2026 um 06:30

Das Linux-Mint-Team hat einen Ausblick auf kommende Neuerungen von Linux Mint 27 gegeben. Die nächste Version soll unter anderem den Ruhezustand verbessern, dem Dateimanager Nemo eine Vorschauansicht spendieren und mehrere neue Anwendungen mitbringen. Dazu gehören ein umfangreicher Systemmonitor, ein neues Terminal und ein schlanker Archivmanager. Sämtliche Funktionen befinden sich noch in Entwicklung. Eine wichtige Änderung […]

Der Beitrag Linux Mint 27: Neue Schlafmodi, Systemmonitor und Terminal geplant erschien zuerst auf fosstopia.

LibreOffice 26.8.2 behebt zahlreiche Fehler und Abstürze

Von: MK
02. November 2026 um 06:00

Die Document Foundation hat LibreOffice 26.8.2 veröffentlicht. Das zweite Wartungsupdate der Versionsreihe korrigiert mehr als 35 gemeldete Fehler, darunter Abstürze, Probleme beim Austausch von Office-Dokumenten und Fehler in den Anwendungen Writer, Calc und Impress. Auch Linux-Nutzer profitieren von mehreren Korrekturen. In Writer wurden unter anderem Abstürze bei der AutoKorrektur innerhalb von Textformularfeldern behoben. Ein weiterer […]

Der Beitrag LibreOffice 26.8.2 behebt zahlreiche Fehler und Abstürze erschien zuerst auf fosstopia.

Ideen-Verwaltung – Wie macht ihr das?

02. November 2026 um 06:00

Wenn ich lange genug Urlaub mache, kommt mein Gehirn in eine kreative Phase und ich habe lauter Ideen, was ich lernen, lesen, ausprobieren und worüber ich dann bloggen möchte. Dabei kommen mir so viele Ideen, dass ein Urlaub viel zu kurz ist, um sich allen widmen zu können. Viele schreibe ich mir auf, um sie nicht zu vergessen.

Nach dem Urlaub wartet zuhause aber meist eine Liste mit wichtigen und dringenden Dingen auf mich, die zuerst erledigt werden müssen. Auch diese Liste ist meist lang und ich benötige einige Tage, bis ich wieder frei Durchatmen kann. Und so geht es weiter und weiter und viele tolle Ideen aus dem Urlaub vergammeln in meinem nahezu endlosen Backlog, das ich gar nicht so gerne anschauen mag, eben weil es schon so lang ist.

Wie verwaltet ihr Ideen, die euch kommen, die ihr aber nicht direkt angehen könnt? Schreibt ihr sie auf Notizzettel oder -bücher? Pflegt ihr Kanban-Boards oder Aufgabenlisten mit Tags und Kategorieren? Wieviel von dem, was ihr in diesen Listen verwaltet, setzt ihr mit der Zeit um? Habt ihr auch einen Haufen, der nie verfolgten Ideen?

Ich freue mich, wenn ihr eure Vorgehensweise und eure Werkzeuge in den Kommentaren zu diesem Beitrag teilt. Falls euer Beitrag moderiert werden muss, habt bitte ein wenig Geduld. Ich schalte ihn so schnell wie möglich frei.

Ich selbst habe es in der Vergangenheit mit Kanban und Aufgabenlisten versucht, was mir beides nicht so gut gefallen hat. Für Dinge, die sich gut terminieren lassen bzw. die terminiert werden müssen, verwende ich heute einfach meinen digitalen Kalender und speichere alle relvanten Informationen mit im Termin oder referenziere von dort auf sie. Für Dinge, die nicht terminiert werden können/müssen, nutze ich eine Methode aus dem Journaling. Ich schreibe mir stichpunktartig in mein handschriftlich geführtes Journal welches die wichtigsten Dinge für den Tag bzw. die Woche sind, die ich unbedingt erledigen möchte. Es ist für mich ein positives Erlebnis, diese anschließend abhaken zu können. Wenn ich mal keine Punkte habe, schreibe ich halt auch mal einen Tag nix auf.

Nun freue ich mich, von euch zu lesen. :-)

Mozilla entwickelt Klänge für Firefox

01. November 2026 um 22:49

Mozilla hat drei Klänge für Firefox entwickelt. Neben Klängen für das Firefox-Logo und das Maskottchen Kit soll auch ein neuer Benachrichtigungston zukünftig im Browser zu hören sein.

Mozilla hat gemeinsam mit dem auf Sounddesign spezialisierten Unternehmen Sounds Like These drei neue Klänge für Firefox entwickelt. Dabei wurden auch Firefox-Nutzer, Mitwirkende und Mozilla-Mitarbeiter aus aller Welt einbezogen. Diese wurden dazu aufgerufen, Audioaufnahmen oder Beschreibungen einzureichen, welche ihrer Meinung nach den Klang von Firefox repräsentieren. Die Rückmeldungen dienten anschließend als Inspiration für die Gestaltung der neuen Klänge.

Firefox-Logo mit Stimmen von 23 Mozilla-Mitarbeitern

Der Klang des Firefox-Logos kombiniert natürliche Geräusche wie Vogelgesang und das Klopfen auf Holz mit den Stimmen von insgesamt 23 Mozilla-Mitarbeitern, die das Wort „Firefox“ aussprechen.

Ursprünglich war geplant, die Stimmen im Rahmen einer professionellen Aufnahme an einem zentralen Standort aufzuzeichnen. Um auch Mitarbeiter aus anderen Regionen berücksichtigen zu können, wurde schließlich darauf verzichtet. Stattdessen konnten die Mitarbeiter ihre Stimmen unabhängig von ihrem Standort selbst aufnehmen.

Dabei wurden bewusst nicht sämtliche Hintergrundgeräusche entfernt. Auch die unterschiedlichen Akzente, Stimmlagen und zeitlichen Abweichungen zwischen den Aufnahmen sind Teil des fertigen Klangs. Auf diese Weise wollte Mozilla einen möglichst natürlichen Klang schaffen, der die Menschen hinter Firefox repräsentiert.

Klang für das Firefox-Maskottchen Kit

Auch das Firefox-Maskottchen Kit hat einen eigenen Klang erhalten. Kit wurde im März 2026 offiziell vorgestellt und kann unter anderem bei der Einrichtung von Firefox, beim Kennenlernen neuer Funktionen oder nach einer erfolgreich geänderten Einstellung erscheinen.

Für den Klang von Kit wurden zunächst verschiedene Ansätze untersucht. Dazu gehörten echte Tiergeräusche ebenso wie abstrakte musikalische Klänge. Unter anderem wurde mit dem Schnurren einer Katze experimentiert. Dieses vermittelte zwar die gewünschte Vertrautheit, klang letztlich aber zu sehr nach einer tatsächlichen Katze.

Die endgültige Lösung basiert deshalb auf einer menschlichen Stimme, die anschließend so bearbeitet und mit weiteren Klängen kombiniert wurde, dass sie an ein sanftes Schnurren erinnert, ohne ein bestimmtes Tier nachzuahmen.

Der Klang soll sich für unterschiedliche Animationen und Gefühlsausdrücke von Kit verwenden lassen und dabei wiedererkennbar bleiben.

Neuer Benachrichtigungston für Firefox

Der dritte neue Klang soll mit einem zukünftigen Firefox-Update direkt in den Browser integriert werden.

Dabei handelt es sich um einen Benachrichtigungston, der möglichst unaufdringlich sein soll. Inspiriert wurde dieser unter anderem von Rückmeldungen aus der Community, die das Gefühl bei der Nutzung von Firefox mit dem Öffnen einer Tür verglichen hatten.

Der fertige Klang besteht aus einem sanften Rauschen, das an eine sich öffnende Tür erinnern soll, gefolgt von einem dezenten Klickgeräusch.

Der Beitrag Mozilla entwickelt Klänge für Firefox erschien zuerst auf soeren-hentzschel.at.

Mozilla veröffentlicht Firefox 159 für Apple iOS

31. Oktober 2026 um 16:33

Mozilla hat Firefox 159 für Apple iOS veröffentlicht. Dieser Artikel beschreibt die Neuerungen von Firefox 159.

Die Neuerungen von Firefox 159 für Apple iOS

Mozilla hat Firefox 159 für das iPhone, iPad sowie iPod touch veröffentlicht. Die neue Version steht im Apple App Store zum Download bereit.

Für Nutzer eines englischsprachigen Firefox in den USA besitzt Firefox einen sprachbasierten KI-Assistenten. Diesem wurde ein neues Aussehen spendiert. Ansonsten bringt das Update wie immer Detail-Verbesserungen, Fehlerbehebungen sowie Optimierungen unter der Haube.

Der Beitrag Mozilla veröffentlicht Firefox 159 für Apple iOS erschien zuerst auf soeren-hentzschel.at.

GPG-verschlüsselte Dateien im Emacs

01. November 2026 um 12:26

Auf meinen Rechnern verschlüssele ich Dateien mit Passwörtern oder anderen vertraulichen Daten, vor allem dann, wenn ich sie zwischen mehreren Rechnern teilen möchte oder wenn diese in Backups auf externen Datenträgern landen. Den einfachsten Weg dazu bietet das Kommando gpg -c file.txt. Es fragt (zur Sicherheit gleich zweimal) nach einem Passwort, verschlüsselt die Datei file.txt symmetrisch und macht daraus file.txt.gpg. gpg -d file.txt.gpg entschlüsselt die Datei wieder. (Symmetrisch bedeutet, dass Sie kein Schlüsselpaar brauchen. gpg verwendet zum Ver- und Entschlüsseln dasselbe Passwort, das oft passphrase genannt wird. Verwenden Sie eine ausreichend lange Zeichenkette, die Sie sich gut merken können!)

Kürzlich habe ich entdeckt, dass mein Lieblingseditor Emacs solche Dateien fast transparent beim Laden ent- und beim Speichern wieder verschlüsseln kann. Das Feature ist keineswegs neu, ich bin einfach noch nie darüber gestolpert. Es gibt keine temporäre Klartextdateien, die versehentlich liegen bleibt.

Emacs bringt mit EasyPG (epa-file) alles Nötige schon mit. Einzig gpg wird vorausgesetzt. Unter Linux ist dieses Kommando meist schon installiert, unter macOS führt brew install gnupg zum Ziel.

Mit Strg+X Strg+F öffnen Sie eine Datei mit der Endung .gpg. Emacs fragt nach dem Passwort und zeigt die Datei dann unverschlüsselt an. Wenn Sie eine Datei wie geheim.txt.gpg speichern, fragt Emacs nach dem gewünschten Verschlüsselungspasswort.

Mehr Komfort

Ohne Konfiguration fragt Emacs bei jedem Speichervorgang nach dem Passwort, das zur Sicherheit dann doppelt eingegeben werde muss. Mit einer Zusatzzeile in .emacs merkt sich Emacs das Passwort pro Datei im Speicher. (Das ist natürlich ein gewisses Sicherheitsrisiko. Solange der Editor läuft, befindet sich das Passwort im Arbeitsspeicher. Aber Sie können nun beliebig oft speichern, es wird immer automatisch das einmal beim Laden oder beim ersten Speichern festgelegte Passwort verwendet.)

;; in .emacs
;; GPG-Passwort pro Datei im Speicher halten
(setq epa-file-cache-passphrase-for-symmetric-encryption t)

Standardmäßig versucht gpg die Passworteingabe an ein externes pinentry-Programm zu delegieren. Sie können ein solches Programm installieren (z.B. brew install pinentry-mac). Viel besser ist es aber, zur Passworteingabe direkt den Minibuffer von Emacs zu verwenden:

;; direkte Passworteingabe ohne externen pinentry-Dialog
(setq epg-pinentry-mode 'loopback)

Beim Speichern neuer Dateien mit GPG-Kennung fragt Emacs nach den Empfängeradressen. Diese sind für die symmetrische Verschlüsselung aber nicht nötig. Sie überspringen den Dialog ohne Auswahl mit OK. Aber noch besser ist es, wenn er gar nicht angezeigt wird. (Das setzt voraus, dass Sie die asymmetrische Verschlüsselung nie verwenden!)

;; Frage nach GPG-Empfängern überspringen
(setq epa-file-select-keys 'silent)

Quellen/Links

Alles Open Source, alles unsicher

31. Oktober 2026 um 22:40

Was soll man noch nach diesem Monat sagen? Ich habe gerade gesehen, dass wir diesen Monat auch rückwirkend Black October nennen können. Zeit, mal den Monat Revue passieren zu lassen.

Das Thema der KI hat dem Bereich der IT-Sicherheit in den letzten Monaten echt den Rang abgelaufen, daher war ich außerordentlich überrascht, zu sehen, dass die PHP-Lücke so hohe Wellen schlug. Dass tatsächlich ein Teil des WWW abgeschaltet wurde, weil der Patch einer Lücke erwartet wurde, zeigt in erster Linie, dass es einige Admins gibt, die noch schnell reagieren.

Andererseits wurde IT-Sicherheit auch vereinfacht. Wozu aufwändiges Schlüsselmanagement aufbauen, wenn die Zahl 4 auch reicht?

Es zeigt aber auch, dass wir einen Großteil der bei uns im Einsatz befindlichen Software schwer überblicken können. Das wird insbesondere beim Blick auf den PHP-"Fix" schnell deutlich, da es sich dabei nicht nur einfach um einen geänderten Check oder Systemaufruf handelt, sondern an tausenden Stellen Teile verändert werden mussten. Natürlich auch durch die Hilfe durch LLMs.

Wer jetzt allerdings sagt, proprietäre Software sei ja aufgrund des fehlenden Drucks durch Transparenz so viel unsicherer, der kann beruhigt sein, denn: alle Software ist ja mittlerweile Open Source. Zumindest, wenn es nach dem Projekt "Reverse Engineer Anything" (rea) geht, das auf GitHub trendet und gerne eingesetzt wird, um Spiele zu "erweitern" oder Software zu klonen.

Bei rea bin ich auch überrascht, aber nur, weil ich damit gerechnet hatte, dass wir schneller an diesem Punkt ankämen. Software zu kompilieren ist einfach, das Kompilat zu sinnvollem Code rückzuentwickeln ist schwierig – das ist eigentlich eine der Aufgaben, wo maschinelles Lernen am besten glänzen kann. Und das tut es offenbar.

Was der letzte Monat uns aber eigentlich gezeigt hat, ist, dass KI die Hürden zwischen einer Idee und ihrer Umsetzung abbaut. Und das ist das, was vielen eigentlich das Kopfzerbrechen bereitet. Bisher galt: eine Idee ist nicht viel wert, wenn man sie nicht umgesetzt bekommt. Daher lag der Burggraben ("Moat") oft in der Fähigkeit, etwas umzusetzen. Man musste sich keine Sorgen machen, dass jemand anderes die Idee schon vorher hatte. Aber genau das kehrt sich jetzt um. Sei es, dass Software entwickelt oder originalgetreu nachgebaut werden kann, oder dass Lücken in Software gefunden werden können.

Wir leben schon in einer spannenden Welt, wo die Idee "ich möchte in das System einbrechen" jemanden schon so nah an das Ziel bringt. Und Möglichkeiten hierfür gibt es offenbar zuhauf. Das Open-Source-Argument der transparenten Entwicklung hat uns offenbar weder vor der PHP-Lücke noch vor solchen Krachern wie der CVE-2026-99999 bewahrt.

Aber das gilt eben in beide Richtungen. Die gleichen Werkzeuge, die aus der Idee eines Einbruchs einen Einbruch machen, machen aus "wir sollten unseren Code aufräumen" ein tatsächliches Refactoring. Die Hürde sinkt für Angreifer wie für Verteidiger. Nur hatten Verteidiger bisher selten die Zeit, das Budget oder schlicht die Lust dazu.

Ich bin gespannt, was der nächste Monat bringt. In wenigen Tagen soll aus all den öffentlichkeitswirksamen Wohltaten ein Börsengang werden. Ruhiger wird der kommende Monat vermutlich nicht. Sicherlich nicht.

Mozilla veröffentlicht Firefox 159 für Android

30. Oktober 2026 um 20:44

Mozilla hat Firefox 159 für Android veröffentlicht. Dieser Artikel beschreibt die Neuerungen von Firefox 159 für Android.

Download Firefox für Android im Google Play Store

Neuerungen von Firefox 159 für Android

Die Häufigkeit, mit der Tabs auf Xiaomi- und Redmi-Geräten unerwartet neu geladen werden, wurde deutlich reduziert. Dazu kommen neue Plattform-Features der aktuellen GeckoView-Engine, diverse Fehlerbehebungen, geschlossene Sicherheitslücken sowie Verbesserungen unter der Haube.

Der Beitrag Mozilla veröffentlicht Firefox 159 für Android erschien zuerst auf soeren-hentzschel.at.

Tenacious T-Rex: Canonical startet Entwicklung von Ubuntu 27.04

31. Oktober 2026 um 15:30

Canonical lässt den Dino los und beginnt mit der Entwicklung von Ubuntu 27.04 „Tenacious T-Rex“. Schon in Kürze soll auch der automatische Paketabgleich mit Debian aktiviert werden, wodurch die Paketbasis der kommenden Ubuntu-Version aktualisiert wird. Die finale Veröffentlichung ist für den 22. April 2027 geplant.

Podcast: Linux Coffee Talk 10/2026

Von: MK
31. Oktober 2026 um 09:00

Der Linux Coffee Talk ist das entspannte Monatsformat bei fosstopia. Hier fassen wir die spannendsten Ereignisse und Entwicklungen der letzten Wochen für Euch zusammen und ordnen sie bestmöglich ein. Also schnappt euch einen Kaffee, Tee oder Euer Lieblingsgetränk, macht es euch gemütlich und lasst uns den Oktober 2026 Revue passieren.

Der Beitrag Podcast: Linux Coffee Talk 10/2026 erschien zuerst auf fosstopia.

Linux Coffee Talk 10/2026

Von: MK
31. Oktober 2026 um 09:00

Der Linux Coffee Talk ist das entspannte Format rund um Linux, Open Source und Technik im Alltag. Ohne Hype und ohne unnötige Aufgeregtheit, dafür mit ehrlichen Einordnungen, persönlichen Meinungen und einem Überblick über die wichtigsten Linux- und FOSS-Themen aus dem Oktober 2026. Wir sprechen über Distributionen, spannende Projekte, Datenschutz, praktische Werkzeuge und alles, was Linux-Nutzer […]

Der Beitrag Linux Coffee Talk 10/2026 erschien zuerst auf fosstopia.

Mozilla veröffentlicht Firefox Klar 159 für Android mit neuem Menü-Design

29. Oktober 2026 um 22:59

Firefox Klar ist ein spezialisierter Privatsphäre-Browser. Nun hat Mozilla Firefox Klar 159 für Android veröffentlicht und überarbeitet damit das Menü-Design.

Download Mozilla Firefox Klar für Google Android

Mozilla hat Firefox Klar 159 (internationaler Name: Firefox Focus 159) für Android veröffentlicht.

Die Neuerungen von Firefox Klar 159 für Android

Mit Firefox Klar 159 hat Mozilla das Menü-Design überarbeitet, welches optisch nun an das Menü-Design von Firefox erinnert. Dazu kommen wie immer neue Plattform-Features der aktuellen GeckoView-Engine sowie geschlossene Sicherheitslücken.

Firefox Klar 159 für Android

Der Beitrag Mozilla veröffentlicht Firefox Klar 159 für Android mit neuem Menü-Design erschien zuerst auf soeren-hentzschel.at.

Ubuntu-Server-Update von 24.04 auf 26.04

30. Oktober 2026 um 10:59

Über Ubuntu 26.04 habe ich hier schon berichtet. Heute habe ich meinen ersten Ubuntu-Server von Version 24.04 auf 26.04 aktualisiert. Es ist eigentlich recht gut gegangen. Dieser Beitrag fasst die wichtigsten Erkenntnisse zusammen.

  • MySQL-Passwörter
  • Dovecot-Konfiguration (Update 2.3 -> 2.4)
  • SSH-Server-Konfiguration
  • Externe und obsolete Pakete aufräumen

Grundsätzliche Vorgehensweise

Logischerweise sollten Sie zuerst ein Backup machen. Mein System ist eine virtuelle Maschine (KVM), ich habe also ein Backup des Images gemacht (LVM-Snapshot im laufenden Betrieb). Wäre irgendetwas total schief gegangen, hätte ich den ganzen Server blitzschnell in den alten Zustand zurückversetzen können.

Wichtig: Falls Sie Nextcloud verwenden, aktualisieren Sie die Nextcloud-Version zuerst und führen Sie das Ubuntu-Update erst danach durch. Andernfalls kann es Ihnen passieren, dass Nextcloud danach nicht mehr startet (Fehlermeldung: This version of Nextcloud is not compatible with PHP>=8.5. You are currently running 8.5.4). Es ist ziemlich mühsam, aus dieser Falle wieder herauszukommen, weil die üblichen Update-Mechanismen PHP voraussetzen!

Am Zielsystem habe ich dann ein letztes Update durchgeführt und dann do-release-upgrade gestartet. Der erste Lauf scheiterte an alten MySQL-Passwörtern. Nachdem ich diese umgestellt hatte (Details folgen gleich), lief do-release-upgrade ziemlich problemlos durch.

Bei sämtlichen Rückfragen, ob ich meine geänderten Konfigurationsdateien behalten oder lieber die neuen Konfigurationsdateien verwenden möchte, habe ich mich für meine alten Konfigurationsdateien entschieden. (Die Entscheidung ist nicht ganz einfach: Die neuen Konfigurationsdateien enthalten in der Regel bessere/neuere Einstellungen, die vorzuziehen wären. Umgekehrt will ich aber auch nicht die in der Vergangenheit vorgenommenen Änderungen verlieren.)

Danach ein Reboot, nach 30 Sekunden war ein neuer SSH-Login möglich. Sehr gut!

Jetzt begannen die Aufräumarbeiten. Es gab zwei Hauptprobleme:

  • Dovecot funktionierte nicht mehr (das war zu erwarten).
  • PHP auch nicht (das kam überraschend).

Vor dem Ubuntu-Update: MySQL-Passwörter

Mit Ubuntu 26.04 kommt MySQL 8.4. Diese Version des Datenbank-Servers unterstützt standardmäßig keine mysql_native_password-Passwörter mehr. Das ist an sich vernünftig, die Passwörter werden nach einem unsicheren Verfahren verschlüsselt. Es gibt zwei Lösungen: Eine besteht darin, das nicht mehr empfohlene Plugin mysql_native_password doch wieder zu aktivieren. (In Version 9 wird das aber nicht mehr gehen.) Die andere besteht darin, für alle betroffenen Benutzer ein neues Passwort mit dem Verfahren caching_sha2_password einzurichten, im Wesentlichen so:

ALTER USER name@localhost IDENTIFIED WITH caching_sha2_password BY 'topsecret';

Ich habe mich für diese Variante entschieden, zumal es ohnedies nur wenige betroffene Accounts gab. Zwei bereiteten mir allerdings Kopfzerbrechen. Welche Passwörter sollte ich für die (in der Vergangenheit) automatisch eingerichteten Accounts 'debian-sys-maint'@localhost und mysql.session@localhost verwenden? Eine kurze Recherche ergab, dass sich das Passwort für ersteren Account (eine Debian/Ubuntu-Spezialität) in /etc/mysql/debian.cnf befindet. Der zweite Account ist MySQL-intern. Es muss existieren, ist aber nicht für einen Login gedacht. Jedes zufällige Passwort ist OK.

Das eigentliche Update habe ich NACH den MySQL-Änderungen gestartet.

Nach dem Ubuntu-Update: PHP

Nach dem Update liefen Apache und der MySQL-Server auf Anhieb, nur PHP wollte nicht. Die Fehlermeldung im Apache-Log lautete:

(2)No such file or directory: AH02454: FCGI: attempt to connect to Unix domain socket /run/php/php8.3-fpm.sock (localhost:8000) failed

Der Fehler war leicht zu finden: Ich verwende PHP mit dem FastCGI Process Manager (FPM). Die PHP-Version wurde auf 8.5 aktualisiert, aber die Konfiguration verwies weiter auf die FPM-8.3-Version. Abhilfe:

apt install php-fpm
systemctl enable --now php8.5-fpm
a2disconf php8.3-fpm
a2enconf php8.5-fpm
systemctl restart apache2

Warum der Upgrade-Prozess sich um diese Details nicht gekümmert hat, kann ich nicht sagen. Möglicherweise hatte ich unter Ubuntu 24.04 irgendeine Abweichung von der Default-Konfiguration durchgeführt und die Konfigurationsdateien wurden deswegen nicht aktualisiert.

Ein letzter Hinweis zu PHP: Mit PHP 8.5 werden neue Konfigurationsdateien nach /etc/php/8.5 installiert. In meinem Fall (FPM) ist die Datei /etc/php/8.5/fpm/php.ini relevant. Änderungen, die in der Vergangenheit in der 8.3er-Version von php.ini vorgenommen wurden, müssen jetzt in der 8.5er-Version wiederholt werden. (In meinem Fall war vor allem memory_limit = 512M wichtig, damit Nextcloud ordentlich läuft. Der Defaultwert 128M ist zu klein.)

Dovecot

Dovecot (ein IMAP-Server) macht mit Ubuntu 26.04 einen Versionssprung von 2.3 auf 2.4. Das klingt unspektakulär, aber tatsächlich hat Dovecot mit der neuen Version die Syntax der Konfigurationsdateien grundlegend geändert. Solange die Dateien nicht angepasst werden und insbesondere die Anweisungen dovecot_config_version = 2.4.0 sowie dovecot_storage_version = 2.4.0 an den Beginn von /etc/dovecot.conf eingebaut werden, startet der Dienst nicht.

Upgrading Dovecot CE from 2.3 to 2.4 enthält eine umfassende Migrationsanleitung. Die simple Übernahme der neuen Konfigurationsdateien ist (in meinem Fall) unmöglich, weil ich diverse eigene Anpassungen vorgenommen habe. Schon vor dem Ubuntu-Update habe ich deswegen sicherheitshalber ein Backup des alten Konfigurationsverzeichnisses /etc/dovecot durchgeführt.

Die manuelle Migration erschien mir recht mühsam. Also habe ich Claude Code SSH-Zugriff auf meinen Server gegeben (für einen normalen Account, nicht für root) und habe den folgenden Prompt formuliert:

you can ssh to example.com (no root); go to /etc/dovecot and look at the config files; these are partially from 2.3 and must be updated to 2.4 (see also https://doc.dovecot.org/main/installation/upgrade/2.3-to-2.4.html); explain me what to change, don’t try to do it yourself; summarize your findings locally (not on example.com) into dovecot-migration-plan.md

Diesen Plan habe ich anschließend manuell umgesetzt. Anbei eine Kurzfassung:

Dovecot 2.3 -> 2.4: config changes

dovecot.conf

  Add these as the very first settings:

    dovecot_config_version = 2.4.0
    dovecot_storage_version = 2.4.0

  Remove the empty "dict { }" block.

conf.d/10-auth.conf

  Old: auth_username_format = %Ln
  New: auth_username_format = %{user | username | lower}

conf.d/auth-system.conf.ext

  passdb and userdb blocks need a name:

    passdb pam {
    }
    userdb passwd {
    }

conf.d/10-mail.conf

  mail_location is gone:

    mail_driver = maildir
    mail_path = ~/Maildir

conf.d/10-master.conf

  Old: user = $default_internal_user
  New: user = $SET:default_internal_user

conf.d/10-ssl.conf

  New setting names, no more "<" before file names:

    ssl = yes
    ssl_server_cert_file = /etc/letsencrypt/live/
                           example.com/fullchain.pem
    ssl_server_key_file  = /etc/letsencrypt/live/
                           example.com/privkey.pem
    ssl_server_dh_file   = /etc/dovecot/dh.pem
    ssl_server_prefer_ciphers = server

  (Each path belongs on one line; it is split here only
  for readability.)

  ssl_server_prefer_ciphers accepts "client" or "server";
  "yes" is a fatal error. The DH file is only needed for
  non-ECC key exchange and can be omitted.

conf.d/20-lmtp.conf

  "mail_plugins = $mail_plugins sieve" no longer works:

    protocol lmtp {
      postmaster_address = postmaster@example.com
      mail_plugins {
        sieve = yes
      }
    }

conf.d/90-sieve.conf

  The plugin { } block is gone. Use named script blocks:

    sieve_script personal {
      driver = file
      path = ~/sieve
      active_path = ~/.dovecot.sieve
    }
    sieve_script after {
      type = after
      driver = file
      path = /etc/dovecot/sieve-after
    }

  Recompile global sieve scripts (as root):

    sievec /etc/dovecot/sieve-after/spam-to-folder.sieve

  Users' own scripts are recompiled automatically.

Protocols

  2.4 enables no protocols by default. On Debian they come
  from /usr/share/dovecot/protocols.d, i.e. one file per
  installed package (imapd, lmtpd, managesieved, ...).

Testing

  doveconf -n          # must run without errors
  systemctl restart dovecot
  journalctl -u dovecot -n 50

  Then check IMAP login, LMTP delivery from Postfix, SMTP
  auth via the Postfix SASL socket and sieve filtering.

Eine halbe Stunde später konnte ich in Thunderbird meine Mails wieder abrufen.

Update Configuration File (UCF)

Eine Debian/Ubuntu-Pakete verwenden das Verfahren Update Configuration File (UCF). Bei diesen Paketen wird parallel zur unverändert belassenen Konfigurationsdateien die neue Version der Konfigurationsdatei mit der Kennung *.ucf-dist angelegt. Das ist praktisch, weil Sie unkompliziert danach suchen können:

find /etc -name '*.ucf-dist'

Leider wird UCF nur von ausgewählten Paketen verwendet (auf jeden Fall: apt, dovecot und ssh).

SSH-Server

Der SSH-Server (openssh-server 10.2) läuft zwar auf Anhieb (alles andere wäre ja eine Katastrophe), aber journalctl -u ssh liefert diverse Warnungen:

sshd: rexec line 16: Deprecated option UsePrivilegeSeparation
sshd: rexec line 19: Deprecated option KeyRegenerationInterval
sshd: rexec line 20: Deprecated option ServerKeyBits
sshd: rexec line 31: Deprecated option RSAAuthentication
sshd: rexec line 38: Deprecated option RhostsRSAAuthentication

Also habe ich auch diese Datei etwas aufgeräumt, wobei Claude Code einige weitere Verbesserungsvorschläge gemacht hat (ChallengeResponseAuthentication -> KbdInteractiveAuthentication, PermitRootLogin without-password -> PermitRootLogin prohibit-password, HostKey /etc/ssh/ssh_host_dsa_key entfernen).

Docker

In Ubuntu 24.04 hatte ich Docker-Pakete direkt aus dem Docker-Repo installiert. Die alten Pakete wurden unverändert belassen, Docker funktionierte weiter. Allerdings wurde im Rahmen des Updates die Docker-Paketquelle deaktiviert (siehe /etc/apt/sources.list.d/*.disabled), d.h. ich würde keine Updates mehr erhalten. Ich habe daher die folgende Datei docker.sources neu eingerichtet:

Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: resolute
Components: stable
Architectures: amd64
Signed-By: /etc/apt/keyrings/docker.asc

apt update und apt list --upgradable zeigt jetzt zu Ubuntu 26.04 passende Docker-Pakete an, die ich mit apt dist-upgrade installierte. Ein kurzer Test mit docker ps zeigt, dass alle Docker-Container wie geplant laufen.

Obsolete Pakete entfernen

Das Kommando

apt list '?obsolete'

liefert eine Liste von Paketen, die aus früheren Ubuntu-Versionen stammen (zu meiner Schande bis zurück nach 14.04) und zu denen es keine aktive Paketquellen mehr gibt (z.T. uralte Kernel-Versionen). Höchste Zeit, auch hier aufzuräumen. Ich habe Claude Code um eine Analyse gebeten.

find obsolete packages and access which can be safely removed

In der Folge habe ich die meisten betreffenden Pakete mit apt purge entfernt.

Quellen/Links

Linux-Kernel-Lücke mit höchster Risikostufe von Claude gefunden

Von: MK
30. Oktober 2026 um 07:15

Eine kritische Sicherheitslücke im TCP-Stack des Linux-Kernels sorgt für Handlungsbedarf bei Linux Distrtros und Admins. Die als CVE-2026-98432 geführte Schwachstelle erhält vom Kernel-Team einen CVSS-Wert von 9,8. Während die Kernel Entwickler die Sache dringlich erachten, stufen einige Distros die Kritikalität geringer ein. Besondere Aufmerksamkeit erhielt die Lücke, nachdem Anthropic am 27. Oktober demonstrierte, dass das […]

Der Beitrag Linux-Kernel-Lücke mit höchster Risikostufe von Claude gefunden erschien zuerst auf fosstopia.

CISA warnt vor Angriffen auf Linux-Kernel und VMware ESX

Von: MK
30. Oktober 2026 um 07:00

Angreifer nutzen derzeit mehrere bekannte Sicherheitslücken in älteren Linux-Kernel-Versionen und VMware ESX aus. Die Schwachstellen dienen dazu, nach einem erfolgreichen Einbruch ihre Spuren zu verwischen oder zusätzliche Systemrechte zu erlangen. Die US-amerikanische Cybersicherheitsbehörde CISA hat beide Fälle inzwischen in ihren Katalog aktiv ausgenutzter Sicherheitslücken aufgenommen. Eine der Schwachstellen betrifft die Protokollierung in Broadcoms Virtualisierungsplattform VMware […]

Der Beitrag CISA warnt vor Angriffen auf Linux-Kernel und VMware ESX erschien zuerst auf fosstopia.

Tor Browser 16.0: Mehr Privatsphäre und ARM64-Unterstützung unter Linux

Von: MK
30. Oktober 2026 um 06:30

Das Tor Project hat Tor Browser 16.0 veröffentlicht. Die neue Version des datenschutzorientierten Browsers basiert auf Firefox ESR 153 und bringt eine überarbeitete Einstellungsoberfläche, zusätzliche Schutzfunktionen und native Unterstützung für Linux-Systeme mit ARM64-Prozessoren. Gleichzeitig endet die Unterstützung für 32-Bit-x86-Systeme unter Linux. Die Einstellungen wurden grundlegend neu gestaltet und orientieren sich an der überarbeiteten Oberfläche von […]

Der Beitrag Tor Browser 16.0: Mehr Privatsphäre und ARM64-Unterstützung unter Linux erschien zuerst auf fosstopia.

Linux Foundation warnt vor minderwertigem KI-Code

Von: MK
30. Oktober 2026 um 06:00

Generative KI verändert die Entwicklung von Open-Source-Software und stellt Maintainer vor neue Herausforderungen. Eine aktuelle Studie von LF Research, der Forschungsabteilung der Linux Foundation, kommt zu dem Ergebnis, dass schätzungsweise 25 Prozent der eingereichten Pull Requests qualitativ minderwertige, KI-generierte Beiträge enthalten. Bei größeren Projekten mit mehr als 50 Entwicklern steigt dieser Anteil laut den Befragten […]

Der Beitrag Linux Foundation warnt vor minderwertigem KI-Code erschien zuerst auf fosstopia.

Canonical belebt Ubuntu Core Desktop wieder und plant Neustart für 2027

Von: MK
29. Oktober 2026 um 07:00

Canonical will die Entwicklung von Ubuntu Core Desktop wieder deutlich beschleunigen. Das unveränderliche Linux-Desktop-System, das bereits 2023 erstmals vorgestellt wurde, soll im Entwicklungszyklus von Ubuntu 27.04 stärker in den Mittelpunkt rücken. Geplant sind tägliche Testversionen sowie gezielte Einsatzprofile für Browser-Systeme, Entwickler-Arbeitsplätze und Gaming-Rechner. Jon Seager, Entwicklungschef bei Canonical, räumte ein, dass die Vorschau von 2023 […]

Der Beitrag Canonical belebt Ubuntu Core Desktop wieder und plant Neustart für 2027 erschien zuerst auf fosstopia.

❌