Blogger

Delete comment from: DSHR's Blog

David. said...

Via my friend Jim Gettys, we learn of a major milestone in the development of a truly reproducible build environment. Last June Jan Nieuwenhuizen posted Guix Further Reduces Bootstrap Seed to 25%. The TL;DR is:

"GNU Mes is closely related to the Bootstrappable Builds project. Mes aims to create an entirely source-based bootstrapping path for the Guix System and other interested GNU/Linux distributions. The goal is to start from a minimal, easily inspectable binary (which should be readable as source) and bootstrap into something close to R6RS Scheme.

Currently, Mes consists of a mutual self-hosting scheme interpreter and C compiler. It also implements a C library. Mes, the scheme interpreter, is written in about 5,000 lines of code of simple C. MesCC, the C compiler, is written in scheme. Together, Mes and MesCC can compile a lightly patched TinyCC that is self-hosting. Using this TinyCC and the Mes C library, it is possible to bootstrap the entire Guix System for i686-linux and x86_64-linux."

The binary they plan to start from is:

"Our next target will be a third reduction by ~50%; the Full-Source bootstrap will replace the MesCC-Tools and GNU Mes binaries by Stage0 and M2-Planet.

The Stage0 project by Jeremiah Orians starts everything from ~512 bytes; virtually nothing. Have a look at this incredible project if you haven’t already done so."

In mid November Nieuwenhuizen tweeted:

"We just compiled the first working program using a Reduced Binary Seed bootstrap'ped*) TinyCC for ARM"

And on December 21 he tweeted:

"The Reduced Binary Seed bootstrap is coming to ARM: Tiny C builds on @GuixHPC wip-arm-bootstrap branch"

Starting from a working TinyCC, you can build the current compiler chain.

Dec 30, 2020, 6:26:00 PM


Posted to Securing The Software Supply Chain

Google apps
Main menu