Rust packaging in Debian
Speaker: Fabian Grünbichler
Track: Packaging, policy, and Debian infrastructure
Type: Long talk (45 minutes)
Room: Grand amphi
Time: Jul 17 (Thu): 14:00
Duration: 0:45
Over the past couple of years, Rust has seen more and more adoption in FOSS projects, including within Debian. Core distribution components like apt, desktop environments, browsers and various low level libraries across the whole ecosystem are either extended with parts written in, entirely rewritten in or otherwise relying on Rust. Other big projects are currently in the process of adopting Rust, the Linux kernel, QEMU and git among them. For some fundamental components of distributions, alternative implementations completely written in Rust exist and are starting to see more widespread adoption - for example Sequoia PGP which provides a mostly drop-in replacement (and more) for GnuPG, sudo-rs or the uutils reimplementation of coreutils recently adopted by Ubuntu.
At the time of writing, ~8% of all source packages in Debian unstable main build at least one librust- binary package, up from ~4.5% in Debian Bookworm. It seems a safe bet to say that Rust is here to stay.
This talks aims to give a (brief) tour over the following topics:
The (rustc) toolchain itself: how are the Rust toolchain and its components structured and developed? Where/how does it work differently compared to the GNU one? Which parts are currently packaged, which are not - and what obstacles need to be overcome as part of that packaging effort? Which alternatives to rustc+LLVM exist, and what state are they in?
A short overview of the different approaches taken by the Rust team and other maintainers packaging Rust software in Debian, and the “clash of cultures” between classical packaging and distros and the Rust ecosystem.
The components of the Rust team packaging work flow, how they interact, and when to use each one if you want to/need to package something (partly) written in Rust.
Which open questions and issues exist, and what the future might bring for them.