systemd a intégré une prise en charge initiale de Rust, permettant d’utiliser ce langage dans des exécutables individuels qui font office de composants terminaux. Le code partagé du projet doit rester en C : Rust ne peut donc pas encore être utilisé dans les composants centraux de systemd.
Dans un article de blog, les principaux développeurs de systemd, Christian Brauner et Lennart Poettering, ont exposé cette approche et ses exigences de conception. Celles-ci comprennent un accès cohérent aux API centrales, un comportement et des processus de compilation uniformes, la prise en charge de Rust sans bibliothèque standard (no-std), ainsi que le maintien du caractère facultatif de Rust.
Les développeurs ont déclaré que systemd souhaitait adopter Rust dans ses composants centraux et qu’il était prêt à collaborer avec la communauté Rust dans ce but. Ils ont souligné la nécessité d’une prise en charge native de Rust pour les bibliothèques partagées et de moyens améliorés d’interagir avec le système de fichiers principalement au moyen de descripteurs de fichiers.
Pour en savoir plus sur Rust dans systemd, consultez le blog Amutable.
Sources: Phoronix.