The release of Fedora Linux 38 has been announced. The products prepared for download include Fedora Workstation, Fedora Server, Fedora CoreOS, Fedora Cloud Base, Fedora IoT Edition, and Live builds provided in the form of spins with desktop environments KDE Plasma 5, Xfce, MATE, Cinnamon, LXDE, Phosh, LXQt, Budgie, and Sway. Builds are created for the x86_64, Power64, and ARM64 (AArch64) architectures. The release of Fedora Silverblue builds has been delayed.
The most significant changes in Fedora Linux 38:
- The first phase of the transition to a modernized boot process proposed by Lennart Poettering has been implemented. The differences from the classic boot process consist of using a unified kernel image (UKI) instead of the initrd image created on the local system when the kernel package is installed. UKI is generated within the distribution infrastructure and is digitally signed by the distribution. UKI combines a boot handler for loading the kernel from UEFI (UEFI boot stub), the Linux kernel image, and the initrd, which is loaded into memory. When the UKI image is called from UEFI, it allows for the integrity and authenticity verification through digital signatures, not only of the kernel but also of the initrd content, the authenticity of which is crucial as keys for decrypting the root filesystem are extracted in this environment. In this first phase, UKI support has been added to the bootloader, tools for installing and updating UKI have been implemented, and an experimental UKI image has been created, focusing on booting of virtual machines with a limited set of components and drivers.
- In the RPM package manager, the Sequoia package, which offers an implementation of OpenPGP in Rust, is used for parsing keys and digital signatures. Previously, RPM used its own code for parsing OpenPGP, which had unresolved issues and limitations. The package rpm-sequoia has been added as a direct dependency to RPM, where the support for cryptographic algorithms is based on the Nettle library, written in C (with plans to provide the option of using OpenSSL).
- The first stage of implementing the new package manager Microdnf has been completed, which is replacing the currently used DNF. The Microdnf toolkit has been significantly updated and now supports all the main features of DNF, while also offering high performance and compactness. A key difference between Microdnf and DNF is the use of the C language for development instead of Python, which allows for the elimination of many dependencies. Other advantages of Microdnf include clearer progress indication for operations; improved implementation of the transaction table; the ability to output information from scripts embedded in packages (scriplets) in reports on completed transactions; support for using local RPM packages for transactions; a more advanced auto-completion system for bash; and support for executing the builddep command without requiring Python to be installed in the system.
- The desktop in Fedora Workstation has been updated to the GNOME 44 release, which continues the transition of applications to use GTK 4 and the libadwaita library (the GNOME Shell user interface and the Mutter compositing manager have been transitioned to GTK4 among other components). The file selection dialog now includes a grid view mode for content display. Numerous changes have been made to the configurator. A section for managing Bluetooth has been added to the quick settings menu.
- The Xfce desktop environment has been updated to version 4.18.
- Builds with the LXQt desktop environment for the AArch64 architecture have begun to take shape.
- The display manager SDDM now defaults to a login interface that uses Wayland. This change allows the login manager in builds with the KDE desktop to transition to Wayland.
- In builds with the KDE desktop, the initial setup wizard has been removed from the delivery since most of its functionalities are not utilized in KDE Spin and Kinoite, and the initial configuration of settings is performed during installation by the Anaconda installer.
- Full access to the Flathub application catalog has been granted (the filter that removed unofficial packages, proprietary programs, and applications with restrictive licensing requirements has been disabled). When both flatpak and rpm packages with the same software are available, GNOME Software will prioritize installing Flatpak packages from the Fedora project first, followed by RPM packages, and then packages from Flathub.
- The creation of builds for mobile devices featuring the Phosh shell has begun. This shell is based on GNOME technologies and the GTK library, utilizing a composite Phoc that operates atop Wayland, as well as its own on-screen keyboard, squeekboard. Initially developed by Purism as an alternative to GNOME Shell for the Librem 5 smartphone, it has since been included among unofficial GNOME projects and is now also used in postmarketOS, Mobian, and some firmware for Pine64 devices. server A Fedora Budgie Spin build with the Budgie graphical environment has been added. This environment is based on GNOME technologies, featuring the Budgie Window Manager (BWM) and its own implementation of GNOME Shell. The core of Budgie consists of a panel that operates similarly to classic desktop panels. All elements of the panel are applets, allowing flexible customization of content, placement, and replacement of the main panel components to suit individual preferences.
- A Fedora Sway Spin build featuring the Sway user environment has been added. This environment is built using the Wayland protocol and is fully compatible with the i3 tiling window manager and the i3bar panel. To create a complete user environment, several accompanying components are offered: swayidle (a background process implementing the KDE idle protocol), swaylock (screen locker), mako (notification manager), grim (screenshot tool), slurp (screen area selection tool), wf-recorder (video capture), waybar (application panel), virtboard (on-screen keyboard), wl-clipboard (clipboard manager), and wallutils (desktop wallpaper management).
- In the Anaconda installer, the mdadm tool has been utilized instead of dmraid for supporting the provided firmware software RAID (BIOS RAID, Firmware RAID, Fake RAID).
- In the Anaconda installer, the mdadm tool has been utilized instead of dmraid to support software RAIDs (BIOS RAID, Firmware RAID, Fake RAID) provided by the firmware.
- A simplified installer has been added for deploying Fedora IoT edition images on IoT devices. The installer is based on coreos-installer and uses direct copying of the OStree image without user interaction.
- Live images have been modernized with support to automatically enable a layer for persistent data storage when booting from a USB drive.
- In the X server and Xwayland, connecting clients from systems with different byte order is disabled by default due to potential security issues.
- The compiler now defaults to including the flags "-fno-omit-frame-pointer" and "-mno-omit-leaf-frame-pointer", which expand profiling and debugging capabilities and allow diagnosing performance issues without needing to recompile packages.
- Package builds now include the "_FORTIFY_SOURCE=3" protection mode, which detects potential buffer overflows during the execution of string functions defined in the string.h header file. The difference from the "_FORTIFY_SOURCE=2" mode lies in additional checks. Theoretically, these checks could lead to a performance decrease, but in practice, tests with SPEC2000 and SPEC2017 did not show differences, and there were no complaints from users during testing about performance reduction.
- The systemd unit timeout during shutdown has been reduced from 2 minutes to 45 seconds.
- The Node.js package structure has been restructured, allowing the installation of different Node.js branches simultaneously in the system (for example, you can now install nodejs-16, nodejs-18, and nodejs-20 at the same time).
- Package versions have been updated, including Ruby 3.2, gcc 13, LLVM 16, Golang 1.20, PHP 8.2, binutils 2.39, glibc 2.37, gdb 12.1, GNU Make 4.4, cups-filters 2.0b, TeXLive 2022, ImageMagick 7, PostgreSQL 15.
Alongside Fedora 38, the "free" and "nonfree" repositories of the RPM Fusion project have been brought online, providing packages with additional multimedia applications (MPlayer, VLC, Xine), video/audio codecs, DVD support, proprietary drivers for AMD and NVIDIA, gaming programs, and emulators.
Source: opennet.ru
