Hi! 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):
--8<---------------cut here---------------start------------->8--- $ ./pre-inst-env guix build hello --verbosity=1 [..] /gnu/store/w61gf93yn2bxwyc6d1xp4y9lavvw1l3d-hello-2.10 17:58:54 janneke@dundal:~/src/guix/wip-fsb [env] --8<---------------cut here---------------end--------------->8--- (it runs too!). 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. 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. 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 * 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 Greetings, Janneke *) https://git.savannah.gnu.org/cgit/guix.git/log/?h=wip-full-source-bootstrap
gcc-core-mesboot0-graph.dot
Description: Binary data
-- Jan Nieuwenhuizen <jann...@gnu.org> | GNU LilyPond http://lilypond.org Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com