[NEW] Szukaj pracy anonimowo — sprawdź szczegóły
Close
W Ubuntu 25.10 GNU Coreutils zostanie zastąpione przez uutils napisane w języku Rust

W Ubuntu 25.10 GNU Coreutils zostanie zastąpione przez uutils napisane w języku Rust

Jon Seager, wiceprezes Canonical ds. inżynierii i lider techniczny projektu Ubuntu, ogłosił inicjatywę polegającą na zastąpieniu domyślnych narzędzi systemowych w Ubuntu odpowiednikami napisanymi w języku Rust. Pierwszym celem tej inicjatywy jest domyślne wdrożenie zestawu narzędzi uutils w Ubuntu 25.10, zastępującego dotychczasowe GNU Coreutils. Jeśli eksperyment zakończy się sukcesem, uutils zostaną również wdrożone jako domyślne narzędzia w wersji LTS Ubuntu 26.04.

Zmiana obejmie ponad sto narzędzi wchodzących w skład Coreutils, w tym sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln oraz ls. Aktualnie narzędzia uutils są już domyślnie stosowane w dystrybucji Apertis opartej na Debianie, a także w niezależnej dystrybucji AerynOS (SerpentOS). Wydany w ubiegłym tygodniu pakiet uutils coreutils 0.0.30 przeszedł pomyślnie 507 testów z referencyjnego zestawu testowego GNU Coreutils (w poprzednim wydaniu było to 506 testów, a dwa wydania wcześniej 476). 69 testów zakończyło się niepowodzeniem, a 41 zostało pominiętych. W nadchodzących tygodniach planowane jest także rozpoczęcie prac nad zastąpieniem w Ubuntu narzędzi su oraz sudo pakietem sudo-rs. Rozważane są również projekty takie jak zlib-rs i ntpd-rs.

Głównym powodem migracji jest chęć zwiększenia bezpieczeństwa i niezawodności narzędzi systemowych, stanowiących podstawę działania dystrybucji. Wykorzystanie języka Rust pozwoli ograniczyć ryzyko błędów związanych z zarządzaniem pamięcią, takich jak odwołanie do pamięci po jej zwolnieniu czy przekroczenie granic bufora. Według Jona Seagera ochrona przed tego typu błędami znacznie zwiększy bezpieczeństwo oraz ogólną stabilność działania całego systemu.

Canonical bada różne sposoby podnoszenia jakości oprogramowania, a jednym z nich jest dostarczanie aplikacji tworzonych z myślą o bezpieczeństwie, niezawodności i poprawności od samego początku. Dla kluczowych komponentów dystrybucji jest to szczególnie istotne, ponieważ problemy w oprogramowaniu niskiego poziomu wpływają na wszystkie wyższe warstwy systemu. Na przykład problemy z wydajnością podstawowych pakietów mogą odbić się na wydajności pozostałych podsystemów.

Aby przetestować wymianę komponentów systemowych w Ubuntu, powstał projekt oxidizr, oferujący narzędzia wiersza poleceń do zarządzania eksperymentami związanymi z zastępowaniem tradycyjnych narzędzi alternatywami napisanymi w Rust. Aktualnie oxidizr umożliwia eksperymentalne wdrożenie pakietów uutils coreutils, uutils findutils, uutils diffutils oraz sudo-rs. Na przykład, aby zamienić coreutils i findutils w swojej instalacji, wystarczy wykonać polecenie:

[object HTMLPreElement]

Aby przywrócić poprzedni stan systemu, można użyć polecenia:

[object HTMLPreElement]
Avatar
Kwi 13, 2023

Czterodniowy tydzień pracy dzięki ChatGPT

Profesor London School of Economics i laureat Nagrody Nobla z ekonomii Christopher Pissarides uważa, że dobrze wykorzystana sztuczna inteligencja może zwiększyć naszą produktywność w pracy.
0
Maj 23

Nowy Claude może donieść na ciebie na policję

Niedawno pojawił się Claude 4, a w systemowej mapie modeli entuzjaści odkryli funkcję, która prawdopodobnie umożliwia modelowi powiadamianie odpowiednich służb, jeśli ktoś próbuje wygenerować coś nielegalnego.
0
Lut 11

Google, OpenAI, Roblox і Discord łączą siły na rzecz ochrony dzieci w internecie

Google, OpenAI, Roblox oraz Discord ogłosiły powstanie nowej organizacji non-profit – Robust Open Online Safety Tools (ROOST), której celem jest zwiększenie bezpieczeństwa dzieci w sieci. Inicjatywa koncentruje się na udostępnianiu technologii wykrywania zagrożeń oraz rozwijaniu narzędzi opartych na AI, które pomogą w identyfikacji materiałów związanych z wykorzystywaniem seksualnym dzieci (CSAM).
0

Ta strona używa plików cookie, aby zapewnić Ci lepsze wrażenia podczas przeglądania.

Dowiedz się więcej o tym, jak używamy plików cookie i jak zmienić preferencje dotyczące plików cookie w naszej Polityka plików cookie.

Zmień ustawienia
Zapisz Akceptuj wszystkie cookies