Systemd sistem yöneticisi kod tabanında bir değişiklik yapıldı ve Rust ile bileşen oluşturma özelliği eklendi. Rust yalnızca yeni bileşenler geliştirmek için kullanılacak olup, mevcut C kodunun Rust'a yeniden yazılması planlanmamaktadır. Cargo paket yöneticisi artık derleme sürecinde kullanılmayacak ve yalnızca Meson derleme sistemi kalacaktır. Rust kodu "no_std" modunda (standart kütüphane olmadan) kullanılacak ve yalnızca core, alloc ve libc kütüphanelerine izin verilecektir.
systemd Rust bileşenleri, libsystemd-shared C kütüphanesine dinamik olarak bağlanır. libsystemd-shared için Rust bağlamaları, bindgen yardımcı programı kullanılarak başlık dosyalarından derleme zamanında otomatik olarak oluşturulur ve systemd_shared paketi şeklinde Rust programlarına sunulur. Bu, en az rustc 1.85 ve bindgen 0.71.1 sürümlerini gerektirir; bu sürümler ilgili dosyalarda yer almaktadır. Debian 13
LTO optimizasyonlarıyla derlenen test Rust yürütülebilir dosyası 32 KB yer kaplarken, C karşılığı 20 KB yer kaplar. Varsayılan olarak, Rust desteği yalnızca ilgili Rust araç zinciri sistemde mevcutsa etkinleştirilir (-Drust=auto). Rust ile yazılan ilk bileşen olan systemd-keyring-setup geliştirilmektedir ve henüz ana systemd kod tabanına entegre edilmemiştir. Systemd-keyring-setup, çekirdek mekanizmaları için X.509 sertifikalarını yapılandırmak ve yönetmek üzere tasarlanmıştır. Linux dm-verity, fs-verity ve bpf.
Kaynak: opennet.ru
