Die Veröffentlichung der Linux-Distribution Fedora 34 wurde angekündigt. Die Produkte Fedora Workstation, Fedora Server, CoreOS und Fedora IoT Edition stehen zum Download bereit, sowie eine Reihe von „Spins“ mit Live-Images für die Desktop-Umgebungen KDE Plasma 5, Xfce, i3, MATE, Cinnamon, LXDE und LXQt. Die Builds wurden für die Architekturen x86_64, Power64, ARM64 (AArch64) und verschiedene Geräte mit 32-Bit ARM-Prozessoren erstellt. Die Veröffentlichung der Fedora Silverblue Builds verzögert sich.
Die bemerkenswertesten Verbesserungen in Fedora 34:
- Alle Audio-Streams wurden auf das Multimedia-System der Server PipeWire umgestellt, das nun standardmäßig anstelle von PulseAudio und JACK verwendet wird. Der Einsatz von PipeWire ermöglicht in der regulären Desktop-Edition professionelle Audiobearbeitungsfunktionen, beseitigt Fragmentierung und vereinheitlicht die Audio-Infrastruktur für verschiedene Anwendungen.
In früheren Ausgaben wurde in Fedora Workstation der Hintergrundprozess PulseAudio zur Audioverarbeitung verwendet, während die Anwendungen auf die Client-Bibliothek zurückgriffen, um mit diesem Prozess zu interagieren, Klangströme zu mischen und zu steuern. Für professionelle Audioverarbeitung kam der Soundserver JACK und die dazugehörige Client-Bibliothek zum Einsatz. Um die Kompatibilität zu gewährleisten, wurde eine über PipeWire arbeitende Schicht hinzugefügt, die es ermöglicht, die Funktionalität aller bestehenden PulseAudio- und JACK-Clients sowie der in Flatpak gelieferten Anwendungen zu erhalten. Für ältere Clients, die eine Low-Level-API von ALSA nutzen, wurde ein ALSA-Plugin eingerichtet, das die Audioströme direkt an PipeWire leitet.
- Die Standard-KDE-Desktop-Umgebungen wurden auf die Verwendung von Wayland umgestellt. Die Sitzung basierend auf X11 wurde zur Option. Es wird festgestellt, dass die in Fedora 34 gelieferte Version KDE Plasma 5.20 nahezu paritätisch in der Funktionalität mit dem X11-Modus ist, einschließlich der Behebung von Problemen mit der Aufnahme von Screenshots und dem Einfügen per Mitteltaste der Maus. Für den Betrieb mit proprietären NVIDIA-Treibern wird das Paket kwin-wayland-nvidia verwendet. Die Kompatibilität mit X11-Anwendungen wird durch das XWayland-Element sichergestellt.
- Die Unterstützung von Wayland wurde verbessert. Es wurde die Möglichkeit hinzugefügt, das XWayland-Element in Systemen mit proprietären NVIDIA-Treibern zu verwenden. In Umgebungen basierend auf Wayland wurde die Unterstützung für den Betrieb im headless-Modus realisiert, was es ermöglicht, Desktop-Komponenten auf entfernten Serversystemen zu starten, mit Zugang über VNC oder RDP.
- Der Desktop Fedora Workstation wurde auf die Version GNOME 40 und die GTK 4-Bibliothek aktualisiert. In GNOME 40 wurden die virtuellen Desktops im Aktivitätsüberblick auf eine horizontale Ausrichtung umgestellt und werden als fortlaufende Kette von links nach rechts angezeigt. Auf jedem Desktop, der im Aktivitätsüberblick angezeigt wird, sind die verfügbaren Fenster übersichtlich dargestellt, wobei dynamisches Scrollen und Zoomen bei der Benutzerinteraktion zur Anwendung kommen. Es wird ein nahtloser Übergang zwischen der Programmliste und den virtuellen Desktops ermöglicht. Die Organisation der Arbeit mit mehreren Monitoren wurde verbessert. Viele Anwendungen wurden modernisiert. Im GNOME Shell wird die GPU zur Renderung von Shadern verwendet.

- Alle Fedora-Versionen wurden so angepasst, dass sie den systemd-oomd-Mechanismus zur frühzeitigen Reaktion auf einen Speichermangel im System anstelle des zuvor verwendeten Prozesses earlyoom nutzen. Systemd-oomd basiert auf der Kernel-Subsystem PSI (Pressure Stall Information), die es ermöglicht, im Benutzerraum Informationen über die Wartezeiten beim Zugriff auf verschiedene Ressourcen (CPU, Arbeitsspeicher, Ein-/Ausgabe) zu analysieren, um den Belastungsgrad des Systems und die Art der Leistungsbeeinträchtigung präzise zu bewerten. PSI bietet die Möglichkeit, den Beginn von Verzögerungen aufgrund von Ressourcenmangel zu identifizieren und gezielt ressourcenschwere Prozesse zu beenden, während sich das System noch nicht in einem kritischen Zustand befindet und noch nicht intensiv mit dem Kürzen von Cache und dem Auslagern von Daten in die Swap-Partition beginnt.
- Das Btrfs-Dateisystem, das seit der letzten Veröffentlichung standardmäßig in den Desktop-Varianten von Fedora (Fedora Workstation, Fedora KDE usw.) verwendet wird, bietet eine transparente Datenkompression mit dem ZSTD-Algorithmus. Die Kompression wird standardmäßig für neue Fedora 34-Installationen angewendet. Benutzer vorhandener Systeme können die Kompression aktivieren, indem sie die Option „compress=zstd:1“ in die /etc/fstab einfügen und „sudo btrfs filesystem defrag -czstd -rv / /home/“ ausführen, um bereits vorhandene Daten zu komprimieren. Zur Bewertung der Effizienz der Kompression kann das Tool „compsize“ verwendet werden. Es wird festgestellt, dass die Speicherung von Daten in komprimierter Form nicht nur Speicherplatz spart, sondern auch die Lebensdauer von SSD-Speichermedien erhöht, da die Anzahl der Schreiboperationen verringert wird. Außerdem verbessert es die Lese- und Schreibgeschwindigkeit von großen, gut komprimierbaren Dateien auf langsamen Speichern.
- Zu den offiziellen Editionen der Distribution gehört eine Variante mit dem Fenstermanager i3, der einen mosaikartigen Modus für die Anordnung von Fenstern auf dem Desktop bietet.
- Die Erstellung von Images mit KDE-Desktop für Systeme auf Basis der AArch64-Architektur hat begonnen, zusätzlich zu den Builds mit GNOME- und Xfce-Desktops sowie Images für Serversysteme.
- Ein neues Image, der Comp Neuro Container, wurde hinzugefügt, das eine Sammlung von Anwendungen für Modellierung und Simulation umfasst, die bei der Forschung im Bereich Neurowissenschaften nützlich sind.
- In die Version für das Internet der Dinge (Fedora IoT), die eine minimalistische Systemumgebung bietet, deren Aktualisierung atomar durch den Austausch des gesamten System-Images erfolgt und bei der Anwendungen durch isolierte Container von dem Hauptsystem getrennt sind (verwaltet durch podman), wurde die Unterstützung für ARM-Plattformen wie Pine64, RockPro64 und Jetson Xavier NX hinzugefügt, außerdem wurde die Unterstützung für SoC i.MX8-basierte Plattformen wie 96boards Thor96 und Solid Run HummingBoard-M verbessert. Die Verwendung von Hardware-Fehlerüberwachungsmechanismen (Watchdog) für die automatische Wiederherstellung des Systems wurde sichergestellt.
- Die separate Erstellung von Paketen mit Bibliotheken, die in Projekten auf Basis von Node.js verwendet werden, wurde eingestellt. Stattdessen werden für Node.js nur die grundlegenden Pakete mit dem Interpreter, den Header-Dateien, den primären Bibliotheken, den Binärmodulen und den wesentlichen Tools zur Paketverwaltung (NPM, yarn) bereitgestellt. In den in den Fedora-Repositories angebotenen Anwendungen, die Node.js nutzen, ist es erlaubt, alle vorhandenen Abhängigkeiten in ein einziges Paket zu integrieren, ohne sie in separate Pakete aufzuteilen. Die Integration von Bibliotheken reduziert die Fülle kleiner Pakete, vereinfacht die Wartung dieser Pakete (früher verbrachte der Paketbetreuer mehr Zeit mit der Überprüfung und dem Testen von Hunderten von Paketen mit Bibliotheken als mit dem Hauptpaket eines Programms), befreit die Infrastruktur von Bibliothekskonflikten und löst die Probleme mit der Bindung an Bibliotheksversionen (die Betreuer werden getestete und funktionsgeprüfte Versionen in das Paket aufnehmen).
- Die Schriftengine FreeType wurde auf die Verwendung der Glyphenlayout-Engine HarfBuzz umgestellt. Der Einsatz von HarfBuzz in FreeType hat die Qualität des Hintings (Glättung der Konturen von Glyphen beim Rasterisieren zur Verbesserung der Schärfe auf Bildschirmen mit niedriger Auflösung) beim Anzeigen von Text in Sprachen mit komplexem Textlayout verbessert, in denen Glyphen aus mehreren Zeichen bestehen können. Insbesondere ermöglicht die Anwendung von HarfBuzz die Behebung des Problems, dass Ligaturen beim Hinting ignoriert werden, für die keine separaten Unicode-Zeichen existieren.
- Die Möglichkeit, SELinux während des Betriebs zu deaktivieren, wurde entfernt – das Deaktivieren durch Ändern der Einstellungen in /etc/selinux/config (SELINUX=disabled) wird nun nicht mehr unterstützt. Nach der Initialisierung wird der SELinux LSM-Handler nun in den Nur-Lese-Modus versetzt, was den Schutz vor Angriffen erhöht, die darauf abzielen, SELinux nach der Ausnutzung von Sicherheitsanfälligkeiten, die das Ändern des Kernelspeichers ermöglichen, zu deaktivieren. Um SELinux zu deaktivieren, kann das System mit dem Parameter „selinux=0“ beim Kernelstart neu gestartet werden. Die Möglichkeit, zwischen den Modi „enforcing“ und „permissive“ beim Bootvorgang zu wechseln, bleibt erhalten.
- Das DDX-Komponente Xwayland, das den Start des X.Org Servers ermöglicht, um die Ausführung von X11-Anwendungen in Wayland-basierten Umgebungen zu organisieren, wurde in ein separates Paket verschoben, das aus einem aktuellen Code-Basis erstellt wird und nicht von stabilen Versionen abhängt. Server X.Org.
- Ein Neustart aller aktualisierten systemd-Dienste wird nach Abschluss der Transaktion im RPM-Paketmanager sichergestellt. Früher wurde der Dienst direkt nach der Aktualisierung jedes darüber liegenden Pakets neu gestartet, jetzt wird eine Warteschlange gebildet und die Dienste werden am Ende der RPM-Session neu gestartet, nachdem alle Pakete und Bibliotheken aktualisiert wurden.
- Die Images für ARMv7 (armhfp) sind standardmäßig auf die Verwendung von UEFI umgestellt.
- Die Größe des virtuellen Swap-Geräts, das vom zRAM-Mechanismus bereitgestellt wird, wurde von einem viertel auf die Hälfte des physikalischen Speichers erhöht und auf ein Limit von 8 GB beschränkt. Diese Änderung ermöglicht den erfolgreichen Start des Anaconda-Installers auf Systemen mit begrenztem RAM.
- In der stabilen Version werden crate-Pakete für die Programmiersprache Rust bereitgestellt. Die Pakete werden mit dem Präfix „rust- „ angeboten.
- Zur Reduzierung der Größe der Installations-ISO-Abbilder wurde reines SquashFS bereitgestellt, ohne die historisch bedingte EXT4-Schicht.
- Die Konfigurationsdateien des Bootloaders GRUB wurden für alle unterstützten Architekturen vereinheitlicht, unabhängig von der EFI-Unterstützung.
- Um den Speicherplatzverbrauch zu verringern, wurden die Firmware-Dateien, die vom Linux-Kernel verwendet werden (seit Kernel 5.3 wird die Ladeunterstützung für xz-Archive angeboten), komprimiert. Entpackt nehmen alle Firmware-Dateien etwa 900 MB ein, und durch die Kompression konnte die Größe auf die Hälfte reduziert werden.
- Das ntp-Paket (Server zur Synchronisierung der genauen Zeit) wurde durch den Fork ntpsec ersetzt.
- Die Pakete xemacs, xemacs-packages-base, xemacs-packages-extra und neXtaw wurden als veraltet erklärt, da deren Entwicklung längst eingestellt wurde. Auch das Paket nscd wurde als veraltet erklärt – zur Caching von Host-Daten wird jetzt systemd-resolved verwendet, und für das Caching von Diensten kann sssd eingesetzt werden.
- Die Lieferung von X11-Utility-Sammlungen xorg-x11-* wurde eingestellt, jede Utility wird jetzt in einem eigenen Paket angeboten.
- Die Verwendung des Begriffs „master“ in Git-Repositorys wurde eingestellt, da dieses Wort in letzter Zeit als nicht politisch korrekt gilt. Als Standardname für Branches in Git-Repositorys wird nun „main“ verwendet, während in Repositorys mit Paketen wie src.fedoraproject.org/rpms der Branch „rawhide“ zum Einsatz kommt.
- Die Versionen der Pakete wurden aktualisiert, darunter: GCC 11, LLVM/Clang 12, Glibc 2.33, Binutils 2.35, Golang 1.16, Ruby 3.0, Ruby on Rails 6.1, BIND 9.16, MariaDB 10.5, PostgreSQL 13. Außerdem wurden die Desktop-Umgebungen LXQt 0.16.0 und Xfce 4.16 aktualisiert.
- Ein neues Logo wurde vorgestellt.

Gleichzeitig wurden für Fedora 34 die "free" und "nonfree" Repositorys des Projekts RPM Fusion aktiviert, in denen Pakete mit zusätzlichen Multimedia-Anwendungen (MPlayer, VLC, Xine), Video-/Audio-Codecs, DVD-Unterstützung, proprietären Treibern von AMD und NVIDIA sowie Spieleanwendungen und Emulatoren verfügbar sind.
Quelle: opennet.ru


