guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Bootstrapping


From: Ludovic Courtès
Subject: Bootstrapping
Date: Thu, 11 Feb 2016 11:54:31 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Ricardo Wurmus <address@hidden> skribis:

> Jookia <address@hidden> writes:

[...]

>> I brought this up a bit earlier in IRC but you could rebuild the bootstrap
>> binaries- but then they'd just be identical to the ones shipped. So are they
>> really foreign then?
>
> I wonder: can you *really* rebuild them?

First, you’d need to build them as explained at
<http://www.gnu.org/software/guix/manual/html_node/Bootstrapping.html#Building-the-Bootstrap-Binaries>,
but starting from the exact same commit that was used to build them.

> Would that not require reproducible builds, something that we try to
> achieve with Guix?

Indeed, some of the packages in the bootstrap binaries are reproducible,
some are not.  See
<https://lists.gnu.org/archive/html/guix-devel/2013-09/msg00159.html>
for a previous experiment in that area.

> I wished we could reduce the number of bootstrap binaries down to little
> more than just Guile and an old C compiler, i.e. implement a subset of
> tar in Guile and use that to unpack the tarballs, then use the simple C
> compiler to compile an old version of GCC (without C++), then use that
> version of GCC to compile a GCC capable of building C++, then use that
> GCC to build a modern GCC...
>
> Since Guile is mostly written in Guile (and it is probably somewhat
> easier to come to a point to trust it) there may be value in trying to
> bootstrap from even less.

Definitely!  Just like we have cpio, FTP and HTTP clients, etc. in
Scheme, we could incrementally have tiny replacements for some of the
things currently found in the bootstrap binaries.  They don’t need to be
full-featured.

This is one of the topics discussed as the reproducible summit:

  https://lists.gnu.org/archive/html/guix-devel/2015-12/msg00107.html
  https://reproducible-builds.org/events/athens2015/bootstrapping/

Ludo’.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]