is a "DevOps" Engineer at Mozilla Research

Rust’s Packaging Status Across Distros

One of many questions facing the Rust infrastructure team right now is
“What’s our packaging situation?”. We don’t have a centralized source of
information on what version of Rust is available in which systems’ package
managers, and we don’t even know where to find that information.

This post is the notes I’ve taken in researching Rust’s packaging status
across distributions.

There are an unreasonable number of tiny Linux distributions out there, but
they fall into a handful of “families”. For a visualization of the history of
various distros, check out this map. I’ve elided CentOS and RHEL as “flavors
of Fedora”, and a bunch of popular new Ubuntu flavors (ElementaryOS, Mint,
etc.) as “compatible with Ubuntu packages, and probably smart enough to Google
for Ubuntu docs if there aren’t any specific to their OS”.

Debian

Debian, Ubuntu, Kubuntu, Mint, and Knoppix all use .deb packages installed
through package managers that wrap the dpkg tool.

OpenSUSE

Rust 1.0.0 is packaged for OpenSUSE. Duncan Mac-Vicar has a blog post on
trying Rust on OpenSUSE from 2014. My search for “How to install Rust on
OpenSUSE” also turned up a youtube video on installing Rust from the
nightly tarball. It seems to just be a walkthrough of what happens when you
follow Rust’s installation guidelines, but kudos to the OpenSUSE community for
catering to diverse learning styles.

Arch

The Arch Wiki has a very useful page on Rust that includes instructions on
cross-compiling. There’s also a community package of rust 1.1.0. The Arch
User Repository (AUR) provides Cargo through a choice of cargo-bin or
cargo-git, though the latter hasn’t been updated since February.

I later learned that you need to install the multirust package to get Rust
and Cargo.

Fedora

Fedora has this copr build system thing in which one apparently finds
community packages. At least, I found rust-binary (poorly documented and
last built 6 months ago) and rust-unofficial (last built 18 months ago) in
it. A blog post about building Rust on Fedora, posted in 2013 but with good
SEO for queries about “how to install Rust on Fedora”, recommends building
from source. There’s no rust or cargo in the CentOS 6 package list,
either.

A stackoverflow question from late last year asked about how to build Rust
for Redhat 5. The fedora-rust repo on GitHub provides a
sporadically-updated Docker image with Rust installed.

FreeBSD

The FreeBSD Wiki tracks the status of the Rust port. The port overview
page tracks which version is available, which is the latest Rust version
available in July 2015. There’s also a Rust on FreeBSD internals thread
that tracks other relevant information and tools.

* The fact that I researched whether anyone had packaged Rust for Slackware
is in no way intended to imply any plans for ever supporting such a package. I
was just curious. Really.

Thanks!

I appreciate readers Huon Wilson and Seo Sanghyeon taking the time to point
out useful links for this post! Both mentioned the presence of the Debian
Unstable package, and Seo informed me of redhat bug #915043 as well.