-
-
Notifications
You must be signed in to change notification settings - Fork 4.2k
Open
Labels
RFE 🎁Request for Enhancement, i.e. a feature requestRequest for Enhancement, i.e. a feature requestsd-boot/sd-stub/bootctl
Description
As we have planned for some time (old PoC: #19598 ), we wish to introduce Rust into the codebase. We have a volunteer to start from systemd-stub, which is nicely self-contained and isolated.
Requirements:
- track unstable status of uefi-rs crate: Tracking issue for use of unstable features rust-osdev/uefi-rs#452 close to becoming stable
- use meson as the build system
- (might require rust: add new 'object' type crate mesonbuild/meson#11213 and Support linking to rust dylib with --crate-type staticlib rust-lang/rust#106560 )
- dependencies need to be sensible and meet the same bar as the C ones, ie: they are maintained, reliable, do not break API
- dependencies need to be available in distros, if not, list them and file requests (eg: uefi-rs) on the main distros
- all supported architectures need to work (x86/x86_64/armv7/armv8/riscv64)
- integrated in the code base, ie: share common internal utility functions both ways as it is done now with the C implementation
Action plan:
- work will start out of tree to get started quickly, but once basics are working, it will be integrated in the main repository
- both implementations will be available in the repository at the same time for at least a few releases
- both implementations will be buildable at the same time, with a new option for the rust one for at least a few releases
- testing: limited infrastructure for sd-stub, mostly through the mkosi CI jobs
jokeyrhyme, septatrix, Foorack and austinbutlerYHNdnzj, bugaevc, kklem0, MelonenBiber, rata and 4 morebugaevc, MelonenBiber, eadanila, oriongonza, nyabinary and 1 more
Metadata
Metadata
Assignees
Labels
RFE 🎁Request for Enhancement, i.e. a feature requestRequest for Enhancement, i.e. a feature requestsd-boot/sd-stub/bootctl