Представлен релиз дистрибутива Fedora Linux 38. Для загрузки подготовлены продукты Fedora Workstation, Fedora Server, Fedora CoreOS, Fedora Cloud Base, Fedora IoT Edition и Live-сборки, поставляемые в форме спинов c десктоп-окружениями KDE Plasma 5, Xfce, MATE, Cinnamon, LXDE, Phosh, LXQt, Budgie и Sway. Сборки сформированы для архитектур x86_64, Power64 и ARM64 (AArch64). Публикация сборок Fedora Silverblue задерживается.
Наиболее значимые изменения в Fedora Linux 38:
- Реализована первая стадия перехода на модернизированный процесс загрузки, предложенный Леннартом Поттерингом. Отличия от классической загрузки сводятся к использованию вместо образа initrd, формируемого на локальной системе при установке пакета с ядром, унифицированного образа ядра UKI (Unified Kernel Image), генерируемого в инфраструктуре дистрибутива и заверенного цифровой подписью дистрибутива. UKI объединяет в одном файле обработчик для загрузки ядра из UEFI (UEFI boot stub), образ ядра Linux и загружаемое в память системное окружение initrd. При вызове образа UKI из UEFI предоставляется возможность проверки целостности и достоверности по цифровой подписи не только ядра, но и содержимого initrd, проверка достоверности которого важна так как в данном окружении осуществляется извлечение ключей для расшифровки корневой ФС. На первой стадии поддержка UKI добавлена в загрузчик, реализован инструментарий для установки и обновления UKI, а также сформирован экспериментальный образ UKI, сфокусированный на загрузке виртуальных машин с ограниченным набором компонентов и драйверов.
- В пакетном менеджере RPM для разбора ключей и цифровых подписей задействован пакет Sequoia, предлагающий реализацию OpenPGP на языке Rust. Ранее в RPM использовался собственный код для разбора OpenPGP, имеющий нерешённые проблемы и ограничения. В число прямых зависимостей к RPM добавлен пакет rpm-sequoia, в котором поддержка криптографических алгоритмов основана на библиотеке Nettle, написанной на языке Си (в планах предоставление возможности использования OpenSSL).
- Реализован первый этап внедрения нового пакетного менеджера Microdnf, который идёт на смену ныне используемому DNF. Инструментарий Microdnf значительно обновлён и теперь поддерживает все основные возможности DNF, но при этом отличается высокой производительностью и компактностью. Ключевым отличием Microdnf от DNF является использование для разработки языка Си, вместо Python, что позволяет избавиться от большого числа зависимостей. Некоторые другие достоинства Microdnf: более наглядная индикация прогресса выполнения операций; улучшенная реализация таблицы транзакций; возможность вывода в отчётах о выполненных транзакциях информации, выдаваемой встроенными в пакеты скриптами (scriplets); поддержка использования локальных RPM-пакетов для транзакций; более продвинутая система автодополнения ввода для bash; поддержка выполнения команды builddep без установки Python в системе.
- Рабочий стол в Fedora Workstation обновлён до выпуска GNOME 44, в котором продолжен перевод приложений на использование GTK 4 и библиотеки libadwaita (на GTK4 среди прочего переведена пользовательская оболочка GNOME Shell и композитный менеджер Mutter). В диалог выбора файлов добавлен режим отображения содержимого в форме сетки значков. Внесены многочисленные изменения в конфигуратор. В меню быстрого изменения настроек добавлена секция для управления Bluetooth.
- Пользовательское окружение Xfce обновлено до версии 4.18.
- Началось формирование сборок с пользовательским окружением LXQt для архитектуры AArch64.
- В дисплейном менеджере SDDM по умолчанию задействован интерфейс входа, использующий Wayland. Изменение позволяет перевести на Wayland менеджер входа в сборках с рабочим столом KDE.
- В сборках с рабочим столом KDE из поставки удалён мастер настройки при первом запуске (Initial Setup), так как большая часть его возможностей не используется в KDE Spin и Kinoite, а начальная настройка параметров осуществляется на этапе установки силами инсталлятора Anaconda.
- Предоставлен полный доступ к каталогу приложений Flathub (отключён фильтр, который убирал неофициальные пакеты, проприетарные программы и приложения с ограничивающими лицензионными требованиями). При наличии flatpak- и rpm-пакетов с одинаковыми программами при использовании GNOME Software в первую очередь будут ставиться Flatpak-пакеты от проекта Fedora, затем RPM-пакеты, после чего пакеты с Flathub.
- Началось формирование сборок для мобильных устройств, поставляемых с оболочкой Phosh, которая основана на технологиях GNOME и библиотеке GTK, использует композитный сервер Phoc, работающий поверх Wayland, а также собственную экранную клавиатуру squeekboard. Окружение изначально развивалось компанией Purism в качестве аналога GNOME Shell для смартфона Librem 5, но затем вошло в число неофициальных проектов GNOME и теперь также используется в postmarketOS, Mobian и некоторых прошивках для устройств Pine64.
- Добавлена сборка Fedora Budgie Spin с графической оболочкой Budgie, которая базируется на технологиях GNOME, оконном менеджере Budgie Window Manager (BWM) и собственной реализации оболочки GNOME Shell. Основу Budgie составляет панель, близкая по организации работы к классическим панелям рабочего стола. Все элементы панели являются апплетами, что позволяет гибко настраивать состав, менять размещение и заменять реализации основных элементов панели на свой вкус.
- Добавлена сборка Fedora Sway Spin с пользовательским окружением Sway, построенном с использованием протокола Wayland и полностью совместимым с мозаичным оконным менеджером i3 и панелью i3bar. Для обустройства полноценного пользовательского окружения предлагаются сопутствующие компоненты: swayidle (фоновый процесс с реализацией протокола KDE idle), swaylock (хранитель экрана), mako (менеджер уведомлений), grim (создание скриншотов), slurp (выделение области на экране), wf-recorder (захват видео), waybar (панель приложений), virtboard (экранная клавиатура), wl-clipboard (работа с буфером обмена), wallutils (управление обоями рабочего стола).
- В инсталляторе Anaconda для поддержки предоставляемых прошивками программных RAID (BIOS RAID, Firmware RAID, Fake RAID) вместо dmraid задействован инструментарий mdadm.
- Добавлен упрощённый инсталлятор для установки образов с IoT-редакцией Fedora на устройства интернета вещей. Инсталлятор основан на
coreos-installer и использует прямое копирование готового образа OStree без взаимодействия с пользователем. - Модернизированы Live-образы, в которых появилась поддержка автоматического включения слоя для постоянного хранения данных при загрузке с USB-накопителя.
- В X-сервере и Xwayland из-за потенциальных проблем с безопасностью по умолчанию запрещено подключение клиентов с систем, имеющих иной порядок байтов.
- В компиляторе по умолчанию включены флаги “-fno-omit-frame-pointer” и “-mno-omit-leaf-frame-pointer”, расширяющие возможности профилирования и отладки, а также позволяющие диагностировать проблемы с производительностью без необходимости перекомпиляции пакетов.
- Обеспечена сборка пакетов с включением режима защиты “_FORTIFY_SOURCE=3”, выявляющего возможные переполнения буфера при выполнении строковых функций, определённых в заголовочном файле string.h. Отличие от режима “_FORTIFY_SOURCE=2” сводится к дополнительным проверкам. Теоретически дополнительные проверки могут приводить к снижению производительности, но на практике тесты SPEC2000 и SPEC2017 не показали различий и в процессе тестирования от пользователей не поступало жалоб на снижение производительности.
- Таймер принудительного завершения юнитов systemd во время завершения работы уменьшен с 2 минут до 45 секунд.
- Проведена реструктуризация пакетов с платформой Node.js. Предоставлена возможность устанавливать в системе одновременно разные ветки Node.js (например, теперь можно одновременно установить пакеты nodejs-16, nodejs-18 и nodejs-20).
- Обновлены версии пакетов, среди которых 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.
Одновременно для Fedora 38 введены в строй “free” и “nonfree” репозитории проекта RPM Fusion, в которых доступны пакеты с дополнительными мультимедиа приложениями (MPlayer, VLC, Xine), видео/аудио кодеками, поддержкой DVD, проприетарными драйверами AMD и NVIDIA, игровыми программами и эмуляторами.