Rozpoczęły się testy beta Fedory Linux 38. Wersja beta oznacza przejście do ostatecznego etapu testów, który umożliwia jedynie poprawki krytycznych błędów. Wydanie planowane jest na 18 kwietnia. To wydanie obejmuje Fedorę Workstation, Fedorę Server, Fedorę Silverblue, Fedorę IoT, Fedorę CoreOS, Fedorę Cloud Base oraz kompilacje Live, które są dostarczane jako wersje środowisk graficznych KDE Plasma 5, Xfce, MATE, Cinnamon, LXDE, Phosh, LXQt, Budgie i Sway. Kompilacje są dostępne dla architektur x86_64, Power64 i ARM64 (AArch64).
Najważniejsze zmiany w Fedorze Linux 38 to:
- Zaimplementowano pierwszy etap przejścia na zmodernizowany proces rozruchu, zaproponowany przez Lennarta Poetteringa. Różnice w stosunku do klasycznego procesu rozruchu sprowadzają się do użycia zunifikowanego obrazu jądra (UKI) generowanego w ramach infrastruktury dystrybucji i podpisanego cyfrowo przez dystrybucję, zamiast obrazu initrd generowanego w systemie lokalnym podczas instalacji pakietu jądra. UKI łączy w sobie moduł obsługi ładowania jądra z UEFI (ścieżka rozruchowa UEFI), obraz jądra Linuksa oraz środowisko systemowe initrd ładowane do pamięci w jednym pliku. Podczas wywoływania obrazu UKI z UEFI możliwe jest zweryfikowanie integralności i autentyczności nie tylko jądra, ale także zawartości initrd za pomocą podpisu cyfrowego, którego ważność jest istotna, ponieważ środowisko to służy do wyodrębniania kluczy do deszyfrowania głównego systemu plików. W tym pierwszym etapie dodano obsługę UKI do bootloadera, zaimplementowano narzędzia do instalacji i aktualizacji UKI oraz stworzono eksperymentalny obraz UKI skoncentrowany na rozruchu. maszyna wirtualna z ograniczonym zestawem komponentów i sterowników.
- Menedżer pakietów RPM używa pakietu Sequoia, który oferuje implementację OpenPGP w języku Rust, do analizowania kluczy i podpisów cyfrowych. Wcześniej RPM używał własnego kodu do analizowania OpenPGP, który miał nierozwiązane problemy i ograniczenia. Pakiet rpm-sequoia został dodany do listy bezpośrednich zależności pakietu RPM, w którym obsługa algorytmów kryptograficznych oparta jest na bibliotece Nettle, napisanej w języku C (w planach jest umożliwienie wykorzystania biblioteki OpenSSL).
- Zakończono pierwszy etap wdrażania nowego menedżera pakietów Microdnf, który zastępuje obecnie używanego DNF. Zestaw narzędzi Microdnf został znacząco zaktualizowany i teraz obsługuje wszystkie podstawowe funkcje DNF, zachowując przy tym wysoką wydajność i kompaktowość. Główną różnicą pomiędzy Microdnf i DNF jest wykorzystanie języka C do tworzenia oprogramowania, a nie Pythona, co pozwala pozbyć się dużej liczby zależności. Inne zalety Microdnf: bardziej wizualna sygnalizacja postępu operacji; ulepszona implementacja tabeli transakcji; możliwość wyświetlania informacji w raportach na temat zakończonych transakcji, dostarczanych przez skryptlety wbudowane w pakiety; wsparcie dla wykorzystania lokalnych pakietów RPM do transakcji; bardziej zaawansowany system uzupełniania danych wejściowych dla powłoki Bash; wsparcie dla uruchamiania polecenia builddep bez instalowania Pythona w systemie.
- Pulpit Fedora Workstation został zaktualizowany do wersji GNOME 44, której wydanie planowane jest na 22 marca. Nowe funkcje w GNOME 44 obejmują nową implementację ekranu blokady i sekcję „aplikacje działające w tle” w menu stanu.
- Środowisko użytkownika Xfce zostało zaktualizowane do wersji 4.18.
- Rozpoczęło się tworzenie zestawów ze środowiskiem użytkownika LXQt dla architektury AArch64.
- Menedżer wyświetlania SDDM domyślnie używa interfejsu logowania przy użyciu Waylanda. Zmiana umożliwia migrację menedżera logowania do Wayland w kompilacjach z pulpitem KDE.
- W kompilacjach z środowiskiem graficznym KDE kreator konfiguracji początkowej został usunięty z dystrybucji, ponieważ większość jego możliwości nie jest wykorzystywana w KDE Spin i Kinoite, a konfiguracja początkowa parametrów jest wykonywana na etapie instalacji przez instalator Anacondy.
- Przyznano pełny dostęp do katalogu aplikacji Flathub (filtr usuwający nieoficjalne pakiety, oprogramowanie zastrzeżone i aplikacje z restrykcyjnymi wymaganiami licencyjnymi został wyłączony). Jeśli masz pakiety flatpak i rpm z tymi samymi programami, to podczas korzystania ze środowiska GNOME Software najpierw zostaną zainstalowane pakiety Flatpak z projektu Fedora, następnie pakiety RPM, a na końcu pakiety z Flathub.
- Rozpoczęło się tworzenie buildów na urządzenia mobilne, dostarczanych z powłoką Phosh, która bazuje na technologiach GNOME i bibliotece GTK, wykorzystuje kompozytowy serwer Phoc działający na wierzchu Waylanda, a także własną klawiaturę ekranową Squeekboard. Środowisko zostało pierwotnie opracowane przez Purism jako odpowiednik GNOME Shell dla smartfona Librem 5, ale potem stało się częścią nieoficjalnych projektów GNOME i jest teraz używane również w postmarketOS, Mobian i niektórych firmware dla urządzeń Pine64.
- Dodano kompilację Fedora Budgie Spin z powłoką graficzną Budgie, która jest oparta na technologiach GNOME, menedżerze okien Budgie Window Manager (BWM) oraz własnej implementacji powłoki GNOME. Sercem Budgie jest panel, którego organizacja jest podobna do klasycznych paneli komputerów stacjonarnych. Wszystkie elementy panelu są apletami, co pozwala na elastyczne dostosowywanie kompozycji, zmianę rozmieszczenia i zastępowanie implementacji głównych elementów panelu według własnego gustu.
- Dodano kompilację Fedora Sway Spin z niestandardowym środowiskiem Sway zbudowanym przy użyciu protokołu Wayland i w pełni kompatybilnym z menedżerem okien kafelkowych i3 oraz panelem i3bar. Aby utworzyć kompletne środowisko użytkownika, oferowane są następujące dodatkowe komponenty: swayidle (proces działający w tle, implementujący protokół bezczynności środowiska KDE), swaylock (wygaszacz ekranu), mako (menedżer powiadomień), grim (tworzenie zrzutów ekranu), slurp (zaznaczanie obszaru na ekranie), wf-recorder (przechwytywanie wideo), waybar (panel aplikacji), virtboard (klawiatura ekranowa), wl-clipboard (praca ze schowkiem), wallutils (zarządzanie tapetą pulpitu).
- Instalator Anacondy używa zestawu narzędzi mdadm zamiast dmraid w celu obsługi oprogramowania RAID dostarczanego przez oprogramowanie układowe (BIOS RAID, Firmware RAID, Fake RAID).
- Dodano uproszczony instalator do instalowania obrazów Fedora IoT Edition na urządzeniach IoT. Instalator bazuje na programie coreos-installer i wykorzystuje bezpośrednie kopiowanie gotowego obrazu OStree bez konieczności interakcji z użytkownikiem.
- Obrazy na żywo zostały zaktualizowane, aby obsługiwały automatyczne dołączanie warstwy do trwałego przechowywania danych podczas uruchamiania z dysku USB.
- Na serwerze X i Xwayland, ze względu na potencjalne problemy z bezpieczeństwem, domyślnie klienci nie mogą łączyć się z systemów, które mają inną kolejność bajtów.
- Kompilator ma domyślnie włączone flagi -fno-omit-frame-pointer i -mno-omit-leaf-frame-pointer, które zapewniają rozszerzone możliwości profilowania i debugowania, a także umożliwiają diagnozowanie problemów z wydajnością bez konieczności ponownej kompilacji pakietów.
- Pakiety są teraz kompilowane z włączonym trybem ochrony „_FORTIFY_SOURCE=3”, który wykrywa potencjalne przepełnienia bufora podczas wykonywania funkcji łańcuchowych zdefiniowanych w pliku nagłówkowym string.h. Różnica w stosunku do trybu „_FORTIFY_SOURCE=2” ogranicza się do dodatkowych sprawdzeń. Teoretycznie te dodatkowe sprawdzenia mogłyby prowadzić do spadku wydajności, ale w praktyce testy porównawcze SPEC2000 i SPEC2017 nie wykazały żadnych różnic, a podczas testów nie zgłoszono żadnych skarg użytkowników na spadek wydajności.
- Zmniejszono czas do wymuszenia opuszczenia jednostek systemowych podczas zamykania systemu z 2 minut do 45 sekund.
- Pakiety z platformą Node.js zostały przebudowane. Teraz można zainstalować w systemie różne gałęzie Node.js jednocześnie (na przykład można teraz zainstalować jednocześnie pakiety nodejs-16, nodejs-18 i nodejs-20).
- Zaktualizowane wersje pakietów obejmują 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.
Źródło: opennet.ru
