Beta wersja dystrybucji Ubuntu 24.04 „Noble Numbat” została udostępniona, po której nastąpiło całkowite zamrożenie bazy pakietów, a deweloperzy przeszli do końcowego testowania i poprawiania błędów. Wydanie zaplanowane jest na 25 kwietnia. Gałąź 24.04 została zaliczona do kategorii wydania z długoterminowym wsparciem (LTS), dla którego aktualizacje będą dostępne przez 12 lat (5 lat — publiczne, plus dodatkowe 7 lat dla użytkowników serwisu Ubuntu Pro). Gotowe obrazy testowe zostały utworzone dla Ubuntu, Ubuntu Server, Lubuntu, Kubuntu, Ubuntu Mate, Ubuntu Budgie, Ubuntu Studio, Xubuntu, UbuntuKylin (edycja dla Chin), Ubuntu Unity, Edubuntu oraz Ubuntu Cinnamon.
Główne zmiany:
- Pulpit zaktualizowano do wersji GNOME 46, w której dodano funkcję globalnego wyszukiwania, poprawiono wydajność menedżera plików i emulatorów terminala, wprowadzono eksperymentalne wsparcie dla mechanizmu VRR (Variable Refresh Rate), poprawiono jakość wyjścia przy pośrednim skalowaniu, rozszerzono możliwości połączenia z zewnętrznymi usługami, zaktualizowano konfigurator oraz poprawiono system powiadomień. W GTK zastosowano nowy silnik renderujący, oparty na API Vulkan. Aplikacja do obsługi kamery Cheese została zastąpiona przez GNOME Snapshot.
- Jądro Linux zaktualizowano do wersji 6.8.
- Podobnie jak w przypadku zmian w Arch Linux i Fedora Linux, parametr sysctl vm.max_map_count, określający maksymalną liczbę obszarów mapowania pamięci dostępnych dla procesu, domyślnie zwiększono z 65530 do 1048576. Zmiana ta poprawiła kompatybilność z grami Windows uruchamianymi przez Wine (na przykład przy starych ustawieniach nie uruchamiały się gry DayZ, Hogwarts Legacy, Counter Strike 2, Star Citizen i THE FINALS) oraz rozwiązała niektóre problemy z wydajnością aplikacji intensywnie korzystających z pamięci.
- Zaktualizowano wersje GCC 14-pre, LLVM 18, Python 3.12, OpenJDK 21 (opcjonalnie dostępne OpenJDK 8, 11 i 17), Rust 1.76, Go 1.22, .NET 8, PHP 8.3.3 oraz Ruby 3.2.3.
- Zaktualizowano aplikacje użytkowe: Firefox 124 (skompilowany z obsługą Wayland), LibreOffice 24.2, Thunderbird 115, Ardour 8.4.0, OBS Studio 30.0.2, Audacity 3.4.2, Transmission 4.0, digiKam 8.2.0, Kdenlive 23.08.5 oraz Krita 5.2.2.
- Zaktualizowane podsystemy: Mesa 24.0.3, systemd 253.5, BlueZ 5.72, Cairo 1.18, NetworkManager 1.46, Pipewire 1.0.4, Poppler 24.02 oraz xdg-desktop-portal 1.18.
- Zaktualizowane pakiety serwerowe: Nginx 1.24, Apache httpd 2.4.58, Samba 4.19, Exim 4.97, Clamav 1.0.0, Chrony 4.5, containerd 1.7.12, Django 4.2.11, Docker 24.0.7, Dovecot 2.3.21, GlusterFS 11.1, HAProxy 2.8.5, Kea DHCP 2.4.1, libvirt 10.0.0, NetSNMP 5.9.4, OpenLDAP 2.6.7, open-vm-tools 12.3.5, PostgreSQL 16.2, Runc 1.1.12, QEMU 8.2.1, SpamAssassin 4.0.0, Squid 6.6, SSSD 2.9.4, Pacemaker 2.1.6, OpenStack 2024.1, Ceph 19.2.0, Openvswitch 3.3.0 oraz Open Virtual Network 24.03.
- Klient poczty Thunderbird jest teraz dostarczany wyłącznie w formacie snap. Pakiet DEB z Thunderbird zawiera zatyczkę do instalacji pakietu snap.
- Dla aplikacji korzystających z gnutls przymusowo wyłączono wsparcie dla protokołów TLS 1.0, TLS 1.1 i DTLS 1.0, które trzy lata temu zostały oficjalnie uznane przez komitet IETF (Internet Engineering Task Force) za przestarzałe technologie. Dla openssl podobna zmiana została wprowadzona w Ubuntu 20.04.
- W Apparmor domyślnie włączono udostępnianie dostępu tym aplikacjom do plików konfiguracyjnych bibliotek GnuTLS i OpenSSL. Wcześniejsze selektywne udostępnianie dostępu prowadziło do problemów, które były trudne do zdiagnozowania z powodu braku komunikatów o błędach w przypadku niedostępu do plików konfiguracyjnych.
- Usunięto pakiety pptpd oraz bcrelay z powodu potencjalnych problemów z bezpieczeństwem oraz zakończenia wsparcia dla głównych baz kodowych. Usunięto również moduł PAM pam_lastlog.so, w którym nie rozwiązano problemu z 2038 roku.
- Podczas kompilacji pakietów domyślnie włączono opcje kompilatora, które utrudniają wykorzystanie luk w zabezpieczeniach. W gcc i dpkg domyślnie włączony jest tryb „-D_FORTIFY_SOURCE=3”, który wykrywa potencjalne przepełnienia bufora przy wykonywaniu funkcji ciągowych określonych w pliku nagłówkowym string.h. Różnica w stosunku do wcześniej stosowanego trybu „_FORTIFY_SOURCE=2” polega na dodatkowych kontrolach. Teoretycznie dodatkowe kontrole mogą prowadzić do obniżenia wydajności, ale w praktyce testy SPEC2000 i SPEC2017 nie wykazały różnic, a od użytkowników w trakcie testów nie wpłynęły skargi dotyczące obniżonej wydajności.
- W dpkg dodano flagę „-mbranch-protection=standard” w celu włączenia na systemach ARM64 ochrony wykonania zestawów instrukcji, na które nie powinny wykonywać się przejścia przy przerywaniu (ARMv8.5-BTI — Branch Target Indicator). Blokowanie przejść do dowolnych fragmentów kodu zostało wdrożone w celu przeciwdziałania tworzeniu gadżetów w exploitach wykorzystujących techniki programowania zorientowanego na powroty (ROP — Return-Oriented Programming).
- W menedżerze pakietów APT zmieniono priorytet dla repozytorium „proposed pocket”, w którym przeprowadza się wstępne testowanie nowych wersji pakietów, przed ich umieszczeniem w głównych repozytoriach dla szerokiej publiczności. Zmiana ma na celu zmniejszenie prawdopodobieństwa automatycznego zainstalowania niestabilnych aktualizacji w przypadku włączenia repozytorium „proposed pocket”, które mogą prowadzić do zakłócenia działania systemu. Po włączeniu „proposed pocket” nie będą teraz przenoszone wszystkie aktualizacje, ale użytkownik będzie mógł wybiórczo zainstalować aktualizacje potrzebnych pakietów, używając komendy „apt install \-proposed”.
- Domyślnie zaprzestano dostarczania usługi irqbalance, która rozdzielała przetwarzanie przerwań sprzętowych na różne rdzenie CPU. W większości sytuacji wystarczające są wbudowane mechanizmy rozdzielania obsługi, zapewniane przez jądro Linux. Korzystanie z irqbalance może być uzasadnione w niektórych sytuacjach, ale przy odpowiedniej konfiguracji przez administratora. Ponadto w określonych konfiguracjach irqbalance prowadzi do problemów, np. podczas używania w systemach wirtualizacji, a także może przeszkadzać w ręcznym konfigurowaniu parametrów wpływających na zużycie energii i opóźnienia.
- Do konfiguracji sieci wykorzystano wydanie narzędzia Netplan 1.0, które umożliwia przechowywanie ustawień w formacie YAML i dostarcza backendy, które abstrahują dostęp do konfiguracji dla NetworkManager i systemd-networkd. W nowej wersji dodano możliwość jednoczesnego korzystania z WPA2 i WPA3, oraz dodano wsparcie dla urządzeń sieciowych Mellanox VF-LAG z SR-IOV (Single-Root I/O Virtualization), a także zrealizowano polecenie „netplan status —diff” do wizualnej oceny różnic między aktualnym stanem ustawień a plikami konfiguracyjnymi. W Ubuntu Desktop jako domyślny backend konfiguracji włączono NetworkManager.
- Zmodernizowano instalator ubuntu-desktop-installer, który teraz rozwija się w ramach większego projektu ubuntu-desktop-provision i został przemianowany na ubuntu-desktop-bootstrap. Istotą nowego projektu jest podział instalatora na etapy, które są wykonywane przed instalacją (partycjonowanie dysku i kopiowanie pakietów) oraz podczas pierwszego uruchomienia systemu (wstępna konfiguracja systemu). Wśród wprowadzonych zmian zauważono ulepszony wygląd interfejsu instalatora, dodanie strony do wskazywania URL do pobrania skryptu automatycznej instalacji autoinstall.yaml oraz możliwość zmiany domyślnego zachowania i stylu wyświetlania za pomocą pliku konfiguracyjnego. Dodano obsługę aktualizacji samego instalatora — w przypadku dostępności nowej wersji na wczesnym etapie instalacji wyświetlane jest zapytanie o aktualizację instalatora.
W instalatorze zauważono również możliwości wprowadzone w poprzedniej wersji Ubuntu 23.10, takie jak wsparcie dla systemu plików ZFS oraz możliwość szyfrowania dysków, która nie wymaga wprowadzania hasła odblokowującego dysk podczas uruchamiania, dzięki przechowywaniu informacji potrzebnych do odszyfrowania kluczy w TPM (Trusted Platform Module).
- Włączono mechanizm Active Directory Certificate Auto Enrollment (ADSys), który umożliwia automatyczne uzyskiwanie certyfikatów z usług Active Directory w przypadku włączenia polityk grupowych. Automatyczne uzyskiwanie certyfikatów przez Active Directory jest również stosowane podczas łączenia z korporacyjnymi sieciami bezprzewodowymi i VPN.
- Ulepszony nowy menedżer aplikacji Ubuntu App Center, napisany w języku Dart z wykorzystaniem frameworka Flutter oraz adaptacyjnych metod układania interfejsu, zapewniający prawidłowe działanie na ekranach różnej wielkości. Sklep Ubuntu wprowadza zintegrowany interfejs do obsługi pakietów w formacie DEB i Snap (w przypadku dostępności jednej aplikacji w pakietach deb i snap domyślnie wybierany jest snap), umożliwia przeszukiwanie oraz nawigację po katalogu snapcraft.io i dołączonych repozytoriach DEB, pozwala zarządzać instalacją, usuwaniem oraz aktualizacją aplikacji, a także instalować pojedyncze pakiety deb z lokalnych plików. W aplikacji zastosowano system oceniania, w którym pięciostopniowa skala oceny została zastąpiona głosowaniem w formacie lubię/nienawidzę (+1/-1), na podstawie którego wyliczany jest wirtualny pięciogwiazdkowy rating.
Centrum aplikacji Ubuntu zastąpiło stary interfejs Snap Store. W porównaniu do Ubuntu 23.10 dodano nową kategorię aplikacji — Gry (z tej dostawy usunięto gry GNOME). Wprowadzono osobny interfejs do aktualizacji oprogramowania układowego — Firmware Updater, dostępny dla systemów opartych na architekturze amd64 i arm64, umożliwiający aktualizację oprogramowania układowego bez uruchamiania pełnoprawnego menedżera aplikacji w tle.
- Pakiety dla 32-bitowej architektury Armhf zostały przetłumaczone na użycie 64-bitowego typu time_t. Zmiana ta dotknęła ponad tysiąca pakietów. Poprzednio używany 32-bitowy typ time_t nie może być stosowany do przetwarzania czasu po 19 stycznia 2038 roku z powodu przepełnienia licznika sekund, które upłynęły od 1 stycznia 1970 roku.
- Zaktualizowano kompilacje dla płyt Raspberry Pi 5 (serwerowe i użytkowe) oraz StarFive VisionFive 2 (RISC-V).
- W Ubuntu Cinnamon wykorzystano niestandardowe środowisko Cinnamon 6.0 z wstępnym wsparciem dla Wayland.
- W Xubuntu kontynuowana jest dostawa środowiska opartego na Xfce 4.18.
- W Ubuntu Mate wykorzystano środowisko graficzne MATE 1.28, które jak na razie nie zostało oficjalnie ogłoszone.
- W Ubuntu Budgie zastosowano środowisko graficzne Budgie 10.9.
- W Kubuntu domyślnie kontynuowana jest dostawa KDE Plasma 5.27. KDE 6 zostanie zaproponowane w jesiennym wydaniu Kubuntu 24.10. Zaktualizowano logo i kolorystykę.
- W Lubuntu poprawiono instalator oparty na frameworku Calamares. Dodana została strona do konfigurowania ustawień instalacji, takich jak instalacja dostępnych aktualizacji, instalacja kodeków i własnościowych sterowników oraz instalacja dodatkowych programów. Dodano tryby minimalnej, pełnej i normalnej instalacji. Dodano ekran pierwszego uruchomienia, który umożliwia skonfigurowanie języka i połączenia z siecią bezprzewodową oraz wybór uruchamiania instalatora lub przejścia do trybu Live. Dodano menedżera Bluetooth oraz edytor ustawień menedżera wyświetlania SDDM. Środowisko graficzne zaktualizowano do wersji LXQt 1.4.
- W Ubuntu Studio dodano narzędzie Ubuntu Studio Audio Configuration do dostosowania parametrów PipeWire.
Źródło: opennet.ru
