O Ubuntu está prestes a dar um passo ousado em direção ao futuro, e o protagonista dessa mudança é a linguagem de programação Rust. A partir da versão 25.10, o sistema operacional mais popular do mundo Linux começará a adotar ferramentas baseadas em Rust como padrão, substituindo algumas das tradicionais utilidades do GNU Coreutils. Mas o que isso significa para os usuários? Vamos explorar essa mudança que partirá do Ubuntu 25.10 e entender por que ela é tão importante.
Substituindo o GNU Coreutils
Por décadas, o GNU Coreutils tem sido o coração do sistema de arquivos e da linha de comando no Linux. Ferramentas como ls, cp, mv e outras são tão fundamentais que muitos de nós nem imaginamos como seria o sistema sem elas. No entanto, com o avanço da tecnologia e a necessidade de maior segurança e eficiência, o Ubuntu decidiu que é hora de uma mudança.
A partir do Ubuntu 25.10, algumas dessas ferramentas serão substituídas por implementações novas escritas em Rust, como o uutils e o rust-coreutils. O Rust, com seu sistema de tipos e seu verificador de alocação de recursos, oferece garantias de segurança de memória que são especialmente valiosas para componentes críticos do sistema.
O Rust tem ganhado popularidade entre os desenvolvedores por sua capacidade de prevenir erros comuns de programação, como vazamentos de memória e acessos inválidos. Esses problemas são especialmente preocupantes em ferramentas de sistema, que são usadas por milhões de dispositivos em todo o mundo. Entretanto, sua implementação no universo Linux tem sofrido resistência de programadores mais conservadores, com longa experiência com a linguagem C.
Jon Seager, engenheiro de software da Canonical, explica que a motivação principal para a mudança não é apenas o desempenho, mas a resiliência e a segurança que Rust proporciona. Afinal, se algo der errado em uma ferramenta como sudo ou cp, as consequências podem ser catastróficas.
Oxidizr, a ferramenta que facilita a transição
Para garantir que a transição seja suave e sem riscos, a Canonical desenvolveu uma ferramenta chamada oxidizr. Esse utilitário de linha de comando permite que os usuários alternem entre as implementações tradicionais e as baseadas em Rust com facilidade.
O oxidizr funciona com o conceito de “experimentos”. Cada experimento corresponde a um pacote alternativo baseado em Rust, como rust-coreutils ou sudo-rs. Os usuários podem habilitar ou desabilitar esses experimentos conforme necessário, revertendo para as ferramentas tradicionais em caso de problemas de compatibilidade.
Por exemplo, quando o Ubuntu 25.10 estiver disponível, para habilitar o rust-coreutils, basta executar no terminal:
sudo oxidizr enable --experiments coreutils
E, se algo der errado, é fácil voltar atrás:
sudo oxidizr disable --experiments coreutils
Já é possível testar as implementações em Rust nas versões atuais do Ubuntu, seguindo o passo a passo fornecido por Jon Seager, bastando copiar e colar uma série de comandos no terminal.
Para a maioria dos usuários, a mudança será quase imperceptível. As novas ferramentas baseadas em Rust são projetadas para serem compatíveis com as versões anteriores, então comandos como ls e cp continuarão funcionando da mesma forma. A diferença estará nos bastidores.
No entanto, como toda mudança significativa, é possível que surjam alguns problemas de compatibilidade. Por isso, o oxidizr é uma ferramenta tão importante: ele permite que os usuários testem as novas implementações sem comprometer a estabilidade do sistema.
O que vem por aí?
A adoção de Rust no Ubuntu 25.10 é apenas o começo. A Canonical planeja expandir o uso de Rust em versões futuras, incluindo o próximo LTS (Ubuntu 26.04). Além disso, projetos como sudo-rs e uutils continuam evoluindo, com a comunidade contribuindo para melhorar sua compatibilidade e desempenho.
Essa mudança advém de uma tendência maior no mundo do software: a busca por alternativas mais seguras e modernas para tecnologias antigas.
Fique por dentro das principais notícias da semana sobre tecnologia e Linux: assine nossa newsletter!