unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Ludovic Courtès" <ludo@gnu.org>
To: Jan Nieuwenhuizen <janneke@gnu.org>
Cc: guix-devel@gnu.org, bootstrappable@freelists.org
Subject: Re: [bootstrappable] wip-full-source-bootstrap: from a 357-byte `hex0' to 'hello'
Date: Wed, 06 Jan 2021 12:32:48 +0100	[thread overview]
Message-ID: <87im8amhb3.fsf@gnu.org> (raw)
In-Reply-To: <87im8cvdpa.fsf@gnu.org> (Jan Nieuwenhuizen's message of "Mon, 04 Jan 2021 18:01:21 +0100")

Hi!

Jan Nieuwenhuizen <janneke@gnu.org> skribis:

> I have reset Guix' wip-full-source-bootstrap branch with a first working
> implementation of the, well, "Full Source Bootstrap" for x86-linux (and
> x86_64-linux).  This bootstrap is rooted in the 357-byte hex0-seed from
> the Stage0 project (https://savannah.gnu.org/projects/stage0):
>
> $ ./pre-inst-env guix build hello --verbosity=1
> [..]
> /gnu/store/w61gf93yn2bxwyc6d1xp4y9lavvw1l3d-hello-2.10
> 17:58:54 janneke@dundal:~/src/guix/wip-fsb [env]

This is amazing!  Incredible.  Thumbs up!

(BTW, you recently worked on the secret service¹, and now the
FSB—coincidence?)

¹ https://git.savannah.gnu.org/cgit/guix.git/commit?id=ec32d4f291b3cc039a99f8090b6c2b2444be5a83

> When you look at the bottom of the graph (see attached), you will notice
> "%bootstrap-guile": the driver that we use for the Guix build and also
> for "bootar", "gash", and "gash-utils".  This "%bootstrap-guile" is not
> used as a seed in anything that is built, "%bootstrap-guile", "bootar",
> "gash", and "gash-utils" could be replaced with any other driver.

Longer-term, could bootar, Gash, etc. run on Mes?  Would that help?

> Two new packages are added: "bootstrap-seeds", which contains the
> hex0-seed binary
> (https://github.com/oriansj/bootstrap-seeds/blob/master/POSIX/x86/hex0-seed)
> with ASCII-equivalent
> (https://github.com/oriansj/bootstrap-seeds/blob/master/POSIX/x86/hex0_x86.hex0),
> and "m2-planet-boot" which, starting from hex0, via hex1, M0, hex2 and
> M1, bootstraps the M2-Planet transpiler.  M2 is a language that closely
> resembles a subset of C.
>
> The breakthrough is that this M2-Planet can now compile a version of GNU
> Mes, as yet unreleased: the wip-m2 branch.  This removes the remaining
> binary seeds: %bootstrap-mescc-tools and %bootstrap-mes, together with
> the "%bootstrap-mes-rewired" hack.

Woow.  I’m willing to take a closer look at all this, this is
impressive!

> Apart from a review there is still some work before it can be
> integrated, in short (from the top commit message):
>
> XXX TODO:
>    * wip-full-source-bootstrap
>      - release mes-0.24, update
>      - possibly release m2-planet-1.8.0, update
>      - rebase wip-full-source-bootstrap onto core-updates
>      - integrate

All this should be piece of cake compared to what you’ve gone through.
;-)  But it does mean long rebuild cycles, which I guess can be tiring.

>    * wip-arm-bootstrap
>      - finish; currently stuck on gawk-mesboot0
>      - release mes-0.23
>      - devise strategy for integrating wip-full-source-bootstrap and
>        wip-arm-bootstrap

Ah, that’s the second big challenge!

Congratulations to you and everyone involved for going this far!
You made it!

Ludo’.


  parent reply	other threads:[~2021-01-06 11:33 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-04 17:01 wip-full-source-bootstrap: from a 357-byte `hex0' to 'hello' Jan Nieuwenhuizen
2021-01-05  0:49 ` [bootstrappable] " jeremiah
2021-01-05 16:58 ` Pierre Neidhardt
2021-01-06 11:32 ` Ludovic Courtès [this message]
2021-01-06 11:46   ` [bootstrappable] " Andrius Štikonas via Development of GNU Guix and the GNU System distribution.
2021-01-06 14:03     ` Orians, Jeremiah (DTMB)
2021-01-14 21:37     ` Ludovic Courtès
2021-01-15  1:27       ` jeremiah
2021-01-21 11:09         ` Ludovic Courtès
2021-01-21 17:52           ` Orians, Jeremiah (DTMB)
2021-01-28 13:40             ` Ludovic Courtès
2021-01-28 13:44               ` Orians, Jeremiah (DTMB)
2021-01-06 14:38 ` [bootstrappable] " Paul Sherwood
2021-01-07 10:43   ` Jan Nieuwenhuizen
2021-01-07 20:10     ` [bootstrappable] " Danny Milosavljevic
2021-01-07 20:23       ` Danny Milosavljevic
2021-01-07 22:52         ` Danny Milosavljevic
2021-01-08  6:25           ` Jan Nieuwenhuizen
2021-01-08  8:05             ` [Tinycc-devel] " arnold
2021-01-08 13:02               ` Jan Nieuwenhuizen
2021-01-08 13:43             ` Danny Milosavljevic
2021-01-08 14:07               ` Danny Milosavljevic
2021-01-08 16:15                 ` Jan Nieuwenhuizen
2021-01-08 18:56                   ` Danny Milosavljevic
2021-01-08 21:11                     ` Danny Milosavljevic
2021-01-08 22:13                       ` Jan Nieuwenhuizen
2021-01-08  7:16           ` [Tinycc-devel] " grischka
2021-01-08 13:25             ` Danny Milosavljevic
2021-01-08 13:36               ` [bootstrappable] Re: [Tinycc-devel] " Orians, Jeremiah (DTMB)
2021-01-08 15:16                 ` [Tinycc-devel] [bootstrappable] " Vincent Lefevre
2021-01-08 16:12               ` [Tinycc-devel] [bootstrappable] " Jan Nieuwenhuizen
2021-01-25 22:47       ` ARM Unified Assembly Language - GNU as does some weird stuff Danny Milosavljevic
2021-01-25 23:12         ` [bootstrappable] " Orians, Jeremiah (DTMB)
2021-01-26  1:14         ` Danny Milosavljevic
2021-01-08  0:29 ` wip-full-source-bootstrap: from a 357-byte `hex0' to 'hello' Jan Wielkiewicz
2021-01-20 20:19 ` Timothy Sample
2021-01-25 18:48   ` Efraim Flashner
2021-01-29  7:23     ` [bootstrappable] " Jan Nieuwenhuizen
2021-01-29 10:18       ` andrius--- via Development of GNU Guix and the GNU System distribution.
2021-01-29 16:02         ` Orians, Jeremiah (DTMB)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87im8amhb3.fsf@gnu.org \
    --to=ludo@gnu.org \
    --cc=bootstrappable@freelists.org \
    --cc=guix-devel@gnu.org \
    --cc=janneke@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).