Linux w końcu oficjalnie dla procesorów ARM64. Działa świetnie, ale mam istotną uwagę
Ubuntu 25.04 jest pierwszym systemem linuxowym dla zwykłych użytkowników, który bez żadnych utrudnień i kombinacji działa bez problemu na komputerach z chipami od innych producentów niż AMD i Intel. Po kilku godzinach pracy ogłaszam ten wysiłek zarówno triumfem, jak i porażką.

Ubuntu 25.04 = znane pod nazwą kodową Plucky Puffin = kontynuuje tradycję integracji najnowszych technologii open source w łatwej w użyciu dystrybucji Linuksa. To wydanie jest owocem intensywnej pracy zespołu Canonical we współpracy ze społecznością i partnerami, którego celem było wprowadzenie nowych funkcji i naprawienie błędów.
System będzie otrzymywał aktualizacje konserwacyjne przez okres 9 miesięcy, co dotyczy również wszystkich oficjalnych odmian Ubuntu wydanych wraz z wersją 25.04. Ubuntu 25.04 bazuje na jądrze Linux 6.14, które wprowadza nowy system planowania z sched_ext, ulepszone wsparcie dla gier poprzez Wine/Proton dzięki nowemu sterownikowi NTSYNC oraz lepsze narzędzia kontenerowe poprzez rozdzielone bpftools i linux-perf.
Czytaj też:
Najważniejsza jest jednak oficjalna zgodność Ubuntu z architekturą ARM64. Czy to wartościowa alternatywa dla Windowsa i macOS-a?

Oczywiście obsługa architektury ARM64 w świecie systemów linuxowych to absolutnie nic nowego. Ba, ta była w nich obecna na długo przed Windowsem NT i desktopowym systemem Apple’a. Nawet Canonical udostępnia od pewnego czasu eksperymentalne obrazy instalacyjne systemu Ubuntu na procesory ARM64, takie jak Qualcomm Snapdragon X obecne w nowych laptopach od wszystkich wiodących producentów. Nigdy jednak nie były oficjalnie obsługiwane przez system przeznaczony dla zwykłego użytkownika.
Canonical nawiązał współpracę z Qualcomm Technologies, aby zapewnić płynne działanie Ubuntu na urządzeniach wyposażonych w procesory Snapdragon, co ma przyspieszyć innowacje i adopcję sztucznej inteligencji. Obraz ARM64 wspiera szerszy zakres sprzętu ARM, w tym maszyny wirtualne, urządzenia z ACPI + EFI, laptopy z Snapdragonem i Windowsem.
Są też inne nowości
Ubuntu 25.04 wprowadza ulepszoną obsługę BitLockera, a także GNOME 48 z potrójnym buforowaniem dla płynniejszej wydajności, ustawieniami HDR i nowymi funkcjami, takimi jak Panel dobrego samopoczucia (Wellbeing Panel) i tryb zachowania kondycji baterii. System zastępuje dotychczasową aplikację do przeglądania dokumentów Evince nowym czytnikiem PDF o nazwie Papers, który jest teraz domyślny. Ubuntu 25.04 wprowadza też pełną obsługę procesorów Intel Core Ultra 200V z wbudowanymi układami graficznymi Intel Arc oraz układów graficznych Intel Arc B580 i B570 Battlemage.
Nowe funkcje obejmują ulepszoną wydajność renderowania z ray tracingiem na GPU i CPU w aplikacjach z obsługą Intel Embree, takich jak Blender (v4.2+), gdzie sprzętowe przyspieszenie ray tracingu na GPU poprawia renderowanie klatek o 20-30 proc. dzięki 2-4-krotnemu przyspieszeniu komponentu ray tracingu. Praca programistów zostaje ułatwiona dzięki wprowadzeniu devpacks - pakietów snap dostarczających najnowsze ekosystemy Go i Spring, wraz z aktualizowanymi łańcuchami narzędzi dla Pythona, Rust, .NET, LLVM, OpenJDK i innych. Ubuntu 25.04 rozszerza również poufne przetwarzanie na środowiska lokalne dzięki obsłudze hosta AMD SEV-SNP.

W zakresie sieci i zarządzania tożsamością Ubuntu 25.04 zawiera najnowsze wydanie NetworkManager 1.52, które oferuje kilka praktycznych ulepszeń, w tym lepszą obsługę nowoczesnych połączeń internetowych, z ulepszonymi opcjami sieci IPv6 oraz obsługą DNS over TLS (DoT). Ponadto system wprowadza bezpieczną synchronizację czasu z NTS, lepszą integrację z Active Directory (AD), uwierzytelnianie w chmurze za pomocą EntraID i tożsamości Google oraz logikę oczekiwania online z uwzględnieniem DNS z Netplan.
Ubuntu 25.04 dodaje również obsługę Nvidia Dynamic Boost na kompatybilnych laptopach - funkcji zarządzania energią, która dynamicznie alokuje zasoby systemowe, redystrybuując moc między CPU a GPU podczas intensywnych obciążeń. To potencjalnie poprawia wydajność podczas pracy z aplikacjami, narzędziami i grami intensywnie wykorzystującymi GPU.
Spędziłem dobę z Ubuntu na moim laptopie z Snapdragonem X Elite. Wszystko działa… do pewnego momentu
Jedyną dziwność jaką zauważyłem to strasznie długi proces instalacji. Instalator Ubuntu przetwarzał zadania na tyle niespiesznie, że w niektórych momentach podejrzewałem wręcz go o awarię. System zainstalował się jednak bez najmniejszego problemu i rozpoznał niemal wszystkie urządzenia peryferyjne w moim komputerze (Yoga Slim 7x), nawet kamerę internetową.

Ubuntu 25.04 działa na Snapdragonie X Elite bardzo szybko i bardzo stabilnie. Czuć mocno efekt wow związany z responsywnością komputerów z układami ARM64, które choć nie są najszybszymi czipami na rynku konsumenckim, tak zazwyczaj zapewniają bardzo wysoką responsywność oprogramowania. To dokładnie ten sam efekt co po przesiadce z MacBooka z Intelem na MacBooka z Apple M. Czy ze smukłego laptopa z czipem Intela na Copilot+ PC z Snapdragonem X.
Nie doświadczyłem też żadnych problemów ze stabilnością. Dostarczone z Ubuntu aplikacje działały w trakcie testów bezbłędnie. Pracowałem w przeglądarce Firefox, zmusiłem się też na potrzeby eksperymentu do pracy z LibreOffice. Dlaczego nie korzystałem z moich ulubionych programów? Niestety docieramy do kluczowego problemu.
Windows i macOS zapewniają zgodność aplikacji x64 z czipami ARM64. Na Ubuntu czy innym Linuksie na dziś do wyboru jest kilka rodzajów piekła

Co się stanie, jeżeli na laptopie z Windowsem czy na MacBooku z czipem ARM64 uruchomimy aplikację napisaną dla czipów x64? Z punktu widzenia użytkownika nic szczególnego. Oba systemy mają wbudowane zaawansowane systemy emulacji i translacji, dzięki czemu - nie licząc drobnych wyjątków - problem ze zgodnością oprogramowania nie istnieje. Na dodatek Windows i Mac, jako platformy mainstreamowe, są w centrum uwagi deweloperów. Coraz trudniej znaleźć aplikację dla Windowsa i Maca dostępną wyłącznie w formie x64, bez wersji ARM64.
W przypadku Ubuntu czy innych dystrybucji Linuxa oferta aplikacji ARM64 właściwie nie istnieje. Nie licząc niszowych specjalistycznych narzędzi nie ma absolutnie nic. Chrome, Slack, Spotify, większość mainstreamowego oprogramowania dostępna jest wyłącznie dla czipów Intela i AMD (w linuxowym świecie najczęściej oznaczane jako AMD64). Dotyczy to zarówno instalacji przez APT, jak i pobierania plików .deb przeznaczonych dla amd64 – pojawi się błąd niezgodności architektury.

Istnieje możliwość uruchomienia aplikacji amd64 na ARM64 przez emulację za pomocą QEMU oraz konfigurację multiarch. To jednak rozwiązanie eksperymentalne, wymagające instalacji narzędzi takich jak qemu, binfmt-support i qemu-user-static. Pozwala to na uruchamianie prostych aplikacji, ale wydajność jest znacznie niższa i mogą wystąpić problemy z zależnościami oraz bibliotekami.
Ktoś mógłby zauważyć, że Linux to świat open-source i że przecież można sobie samemu kompilować kod źródłowy do posiadanego przez siebie sprzętu. To nie do końca prawda, nawet jeżeli pominiemy relatywnie absurdalne oczekiwanie względem typowego użytkownika, że ten ma w ogóle sobie coś kompilować. I to, że prosta rekompilacja pod inną architekturę bez żadnej ingerencji to rozwiązanie dalekie od optymalnego.
Faktycznie w przypadku bardzo prostych aplikacji jest to możliwe. Wystarczy jednak że pojawią się instrukcje specyficzne dla x86 lub x64, wymagane modyfikacje w plikach konfiguracyjnych, wymagania brakujących bibliotek czy kilka innych możliwych problemów i bez szerszej wiedzy programistycznej zadanie to okazuje się niewykonalne.

Wniosek? Ubuntu na komputerze z Snapdragonem instalować można. Jednak z uwagi na problemy z dostępnością oprogramowania innego niż to będące częścią dystrybucji nie do końca ma to większy sens. Windows 11 oferuje pełną zgodność z aplikacjami dla Linuxa, a Ubuntu na dziś nie oferuje żadnej korzyści nad Windowsem właśnie z uwagi na niedostępność aplikacji. To zapewne z czasem się zmieni i wtedy do tematu zapewne wrócę. Na dziś mogę tylko potwierdzić: działa i działa bardzo dobrze. Choć jeszcze nie do końca jest jasne po co.