En Àndring har införts i systemd-systemhanterarens kodbas, vilket lÀgger till möjligheten att skapa komponenter i Rust. Rust Àr avsett att endast anvÀndas för att utveckla nya komponenter, och det finns inga planer pÄ att skriva om befintlig C-kod i Rust. Pakethanteraren cargo anvÀnds inte lÀngre i byggprocessen, och endast Meson-byggsystemet finns kvar. Rust-kod anvÀnds i "no_std"-lÀge (utan standardbiblioteket), och endast core-, alloc- och libc-bibliotek Àr tillÄtna.
Systemd Rust-komponenterna Àr dynamiskt lÀnkade till C-biblioteket libsystemd-shared. Rustbindningar för libsystemd-shared genereras automatiskt vid byggtid frÄn headerfiler med hjÀlp av bindgen-verktyget och görs tillgÀngliga för Rust-program i form av systemd_shared-paketet. Detta krÀver minst rustc 1.85 och bindgen 0.71.1, motsvarande versionerna i Debian 13.
Testfilen för Rust tar upp 32 KB nÀr den byggs med LTO-optimeringar, medan motsvarigheten i C tar upp 20 KB. Som standard Àr Rust-stöd endast aktiverat om motsvarande Rust-verktygskedja finns pÄ systemet (-Drust=auto). Den första komponenten som skrivits i Rust hÄller pÄ att utvecklas, systemd-keyring-setup, som Ànnu inte har anammats i systemd:s huvudkodbas. Systemd-keyring-setup Àr utformad för att konfigurera och hantera X.509-certifikat för kÀrnmekanismer. Linux dm-verity, fs-verity och bpf.
KĂ€lla: opennet.ru
