[Pkg-rust-maintainers] Facilitating Firefox+Rust Linux distro packaging

Mike Hommey mh at glandium.org
Fri Aug 26 10:48:32 UTC 2016


On Fri, Aug 26, 2016 at 04:17:57AM +0000, Angus Lees wrote:
> Now: if we're updating ESR firefox and that requires newer rustc, then
> we'll need to distribute that newer rustc in the same way as any other new
> build-deps required by the new ESR version.  That's fine and normal (...)

Except it has technical challenges.

- Timing-wise we're kind of lucky, because by the time an ESR requires
  rustc, Debian stable will have shipped a rustc compiler.

BUT

- Debian oldstable (today's stable), which will likely still be supported,
  won't have one. Which means either dropping support for a modern web
  browser in oldstable, or bootstrapping rustc in oldstable.

- By the time ESR requires rustc, it will require a very much more
  recent version of rustc than the one in Debian stable. Rustc currently
  only be compiled, at best, by the previous version. Which means either
  building every released version of rustc between the one shipped in
  Debian stable and the one required by ESR in sequence, or
  bootstrapping rustc from scratch. (and same again a year later, when
  the ESR version bumps)

- By the time ESR requires rustc, the rustc version it requires will
  need a version of LLVM very much more recent than the one in Debian
  stable. Which means backporting a new version of LLVM as well. (and
  the same again a year later, when the ESR version bumps)

Now, to add fun to the mix, like there wasn't enough:

- By the time ESR requires rustc, it will also require rust-bindgen.
  Which in turn requires libclang.

At this point, I'm thinking we might as well have a separate archive for
Firefox only, that would autobuild the latest uploads of llvm, clang,
rustc and Firefox in a Debian stable build environment.

Or not ship Firefox at all, and "rely" on snap, flatpak, etc. or on
people using "testing".

Mike

PS: I'm almost not joking.



More information about the Pkg-rust-maintainers mailing list