reklama

Firefox już nie dla egzotycznych platform. Mozilla chce Rusta, by uciec w przyszłość

Strona główna Aktualności

O autorze

Hodowca maszyn wirtualnych i psów, poza tym stary linuksiarz, bonvivant i śmieszek. W 2012 roku napisał na DP o algorytmie haszowania Keccak i wciąż pamięta, jak on działa.

Firefox był przez długie lata jedyną „pierwszoligową” przeglądarką, z której mogli korzystać użytkownicy bardziej egzotycznych systemów. I nie mamy tu na myśli względnie mało egzotycznych Maków na PowerPC, ale np. stacji roboczych z procesorem Itanium i systemem HP/UX czy procesorem Sparc i Solarisem. Niebawem ta wszechdostępność Firefoksa się skończy – wszystko za sprawą nowego języka Rust.

Ted Mielczarek, inżynier Mozilla Corporation, wyjaśnia: W pewnym momencie będziemy wymagali Rusta do skompilowania Firefoksa. Jego brak blokuje tworzenie jakichkolwiek kluczowych komponentów w tym języku (…) to już teraz głównie polityczna decyzja, oznacza ona, że na wszystkich drugorzędnych platformach skompilowanie Firefoksa będzie trudniejsze, ale myślę, że możemy z tym żyć.

Konsekwencje tej politycznej decyzji są jednak szersze, bo samo postawienie Rusta w systemie nie jest trywialne. Aby przyszłości zrobić sobie Firefoksa po swojemu, na swoją platformę, trzeba będzie mieć zainstalowane środowisko kompilacyjne LLVM/clang, do którego stworzenia trzeba mieć (przynajmniej na Linuksie) najnowsze wersje kompilatora gcc. Oznacza to, że przenoszenie Firefoksa będzie w przyszłości wymagało przenoszenia najnowszych wersji LLVM i gcc – spore wyzwanie dla tych mało popularnych platform, którymi nierzadko opiekuje się kilka osób.

Ale te wspomniane na początku egzotyczne platformy to nie wszystko. Obecnie wsparcie dla Rusta na najwyższym poziomie (Tier 1) gwarantowane jest tylko na 32- i 64-bitowych architekturach x86 (dla Windowsa, Linuksa i macOS-a). Tier 2, gdzie Rust daje się skompilować, jest oficjalnie dostępny ale nie został kompleksowo przetestowany, to spory zbiór architektur sprzętowych – a software’owo głównie Linux, ale też iOS, 32-bitowy Android, FreeBSD czy NetBSD. Tier 3, gdzie jest tylko podstawowe wsparcie i brak oficjalnych kompilacji, to egzotyka w postaci systemów Haiku czy Fuchsia, ale przede wszystkim 64-bitowy Android na ARM.

Jeśli więc Rust nie zapewni należytego poziomu wsparcia na Androidzie, to doczekamy się sytuacji, w której Firefoksa nie będzie można zbudować na najpopularniejszym systemie świata. Ten ułamek procenta użytkowników platform MIPS, Sparc, S/390X, działających pod kontrolą równie mało znanych systemów nie jest jakąś wielką stratą dla Mozilli. Może gorzej w wypadku PowerPC (i np. klasycznych PowerMaków). Ale miliard androidowych smartfonów na ARM-ach, miliony komputerków Raspberry Pi – to już naprawdę polityczna decyzja, no chyba że Mozilla pewna jest przeniesienia Rusta.

Na pewno wszystkich trzech (albo trzystu) użytkowników opuszczonych platform będzie mogło korzystać jeszcze przez dłuższy czas z Firefoksa 52 ESR. Dopiero od Firefoksa 54 kompilowanie bez Rusta będzie wiązało się z utratą kluczowych funkcjonalności (o ile w ogóle będzie możliwe). I chyba mimo wszystko to dobrze. Rust oznacza możliwość wykorzystania nowego silnika Servo, który już w kilku testach wykazał wyższość nad silnikami przeglądarek Google’a i Microsoftu. Jeśli Firefox chce przetrwać, musi uciec do przodu, nie może się cofać, ani patrzeć w przeszłość.

© dobreprogramy
reklama

Komentarze

reklama