L’arrivée de Rust dans APT provoque des débats dans la communauté Debian
L’un des développeurs de Debian a annoncé l’inclusion prochaine de code en Rust dans le gestionnaire APT. La décision reflète une volonté de renforcer la sécurité du composant, mais soulève de nombreuses questions et critiques.
Comme nous l’avons vu récemment à travers notre interview de Sylvestre Ledru, directeur de l’ingénierie chez Mozilla, le langage Rust s’insinue partout. Ses performances et ses mécanismes de sûreté de la mémoire en font la nouvelle coqueluche de bon nombre d’entreprises pour la programmation système.
Du Rust dans APT
Dans la sphère Linux, son arrivée provoque davantage de remous, avec des débats relatifs à son utilisation dans le noyau. Dans Debian, le développeur Julian Andres Klode a publié le soir d’Halloween un message important :
« Je prévois d’introduire des dépendances Rust et du code Rust dans APT, au plus tôt en mai 2026. Cela concernera dans un premier temps le compilateur Rust, la bibliothèque standard et l’écosystème Sequoia. Notre code d’analyse des fichiers .deb, .ar et .tar, ainsi que le code de vérification des signatures HTTP, bénéficieraient particulièrement de l’utilisation de langages sécurisés en mémoire et d’une approche plus rigoureuse des tests unitaires. Si vous maintenez un port sans chaîne d’outils Rust fonctionnelle, veuillez vous assurer qu’il en dispose dans les six prochains mois, ou supprimez le port. Il est important pour l’ensemble du projet de pouvoir aller de l’avant et de s’appuyer sur des outils et des technologies modernes, sans être freiné par la tentative d’adapter des logiciels modernes à des appareils informatiques rétro »
Dans le courant de l’année prochaine, le gestionnaire de paquet APT va donc commencer à intégrer du code en Rust. Autrement dit, Debian elle-même aura une exigence stricte sur la prise en charge du langage sur toutes les architectures.
Critiques et inquiétudes
Pour les utilisateurs de la distribution, cela ne devrait rien changer. Pour les développeurs en revanche, il y aura des travaux plus ou moins importants, car il faudra prévoir une chaine de compilation Rust fonctionnelle en plus des outils traditionnels comme GCC. En clair, la complexité va monter d’un cran, notamment sur les architectures moins courantes où le langage n’est pas bien supporté.
Pourquoi ce problème ? Parce que le compilateur Rust repose sur l’infrastructure LLVM, quand l’immense majorité des compilations dans les systèmes Linux sont effectuées avec GCC. Si LLVM présente certains avantages (comme la compilation Just-in-time), il est également supporté par un plus petit nombre d’architectures, contrairement à GCC qui est plus ancien, plus éprouvé et présent pratiquement partout.
Dans les commentaires de Phoronix, on peut lire différentes inquiétudes au sujet de cette annonce. La principale est qu’en l’absence de compilateur Rust sur une partie des architectures supportées par Debian, la distribution risque de perdre son côté « universel » à sa prochaine itération majeure. Certains commentaires mettent aussi en avant la fiabilité éprouvée de GCC, qui correspond à la philosophie de Debian de ne pas bondir sur les dernières technologies, privilégiant la plus grande stabilité possible.
Citons également le poids : le compilateur Rust et sa chaine d’outils sont plus volumineux que GCC et sa compilation est plus lente, ce qui pourrait poser problème pour les systèmes embarqués et des configurations plus anciennes. D’autres encore s’inquiètent d’une dépendance accrue envers l’écosystème Rust et ses binaires précompilés, créant des interrogations sur la sécurité et l’auditabilité du code.
