From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id 2OoHIXxW9l+YcAAA0tVLHw (envelope-from ) for ; Thu, 07 Jan 2021 00:31:56 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id MLbZHHxW9l8dJAAA1q6Kng (envelope-from ) for ; Thu, 07 Jan 2021 00:31:56 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 41FB79403C5 for ; Thu, 7 Jan 2021 00:31:56 +0000 (UTC) Received: from localhost ([::1]:40298 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kxJDX-0001Nx-6q for larch@yhetil.org; Wed, 06 Jan 2021 19:31:55 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:42880) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kx7HS-0008UB-0j for guix-devel@gnu.org; Wed, 06 Jan 2021 06:47:10 -0500 Received: from mail.stikonas.eu ([82.71.3.19]:39106) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kx7HP-0001z9-KJ; Wed, 06 Jan 2021 06:47:09 -0500 Received: from pine.stikonas.eu (localhost [IPv6:::1]) by mail.stikonas.eu (Postfix) with ESMTP id AA1AF924A36F; Wed, 6 Jan 2021 11:46:57 +0000 (GMT) Received: from laptop.localnet ([2a02:8010:6548:0:e76e:55a:6f72:9071]) by pine.stikonas.eu with ESMTPSA id df5YKDGj9V83WQwAtWO0jw (envelope-from ); Wed, 06 Jan 2021 11:46:57 +0000 To: Jan Nieuwenhuizen , bootstrappable@freelists.org Subject: Re: [bootstrappable] Re: wip-full-source-bootstrap: from a 357-byte `hex0' to 'hello' Date: Wed, 06 Jan 2021 11:46:54 +0000 Message-ID: <4097605.XNSazgUCOe@laptop> In-Reply-To: <87im8amhb3.fsf@gnu.org> References: <87im8cvdpa.fsf@gnu.org> <87im8amhb3.fsf@gnu.org> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="nextPart2281441.Ej5qh515gX"; micalg="pgp-sha256"; protocol="application/pgp-signature" Received-SPF: pass client-ip=82.71.3.19; envelope-from=andrius@stikonas.eu; helo=mail.stikonas.eu X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Wed, 06 Jan 2021 19:31:42 -0500 X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: guix-devel@gnu.org, bootstrappable@freelists.org Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" Reply-to: Andrius Štikonas From: Andrius Štikonas via "Development of GNU Guix and the GNU System distribution." X-Migadu-Flow: FLOW_IN X-Migadu-Spam-Score: -3.44 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Migadu-Queue-Id: 41FB79403C5 X-Spam-Score: -3.44 X-Migadu-Scanner: scn0.migadu.com X-TUID: qQXWxps84WnV --nextPart2281441.Ej5qh515gX Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="UTF-8"; protected-headers="v1" From: Andrius =?utf-8?B?xaB0aWtvbmFz?= To: Jan Nieuwenhuizen , bootstrappable@freelists.org Cc: guix-devel@gnu.org, bootstrappable@freelists.org, Ludovic =?ISO-8859-1?Q?Court=E8s?= Subject: Re: [bootstrappable] Re: wip-full-source-bootstrap: from a 357-byte `hex0' to 'hello' Date: Wed, 06 Jan 2021 11:46:54 +0000 Message-ID: <4097605.XNSazgUCOe@laptop> In-Reply-To: <87im8amhb3.fsf@gnu.org> References: <87im8cvdpa.fsf@gnu.org> <87im8amhb3.fsf@gnu.org> 2021 m. sausio 6 d., tre=C4=8Diadienis 11:32:48 GMT Ludovic Court=C3=A8s ra= =C5=A1=C4=97: > Hi! >=20 > Jan Nieuwenhuizen skribis: >=20 > > 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=3D1 > > [..] > > /gnu/store/w61gf93yn2bxwyc6d1xp4y9lavvw1l3d-hello-2.10 > > 17:58:54 janneke@dundal:~/src/guix/wip-fsb [env] >=20 > This is amazing! Incredible. Thumbs up! >=20 > (BTW, you recently worked on the secret service=C2=B9, and now the > FSB=E2=80=94coincidence?) >=20 > =C2=B9 https://git.savannah.gnu.org/cgit/guix.git/commit?id=3Dec32d4f291b= 3cc039a99f8090b6c2b2444be5a83 >=20 > > 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. >=20 > Longer-term, could bootar, Gash, etc. run on Mes? Would that help? I think that's what mes-m2 rewrite [1] (not to be confused with mes wip-m2 = branch) is trying to achieve. Outside of Guix we are working on bootstrap that does not depend on guile d= river and is driven only by hex-0 seed (357 bytes) kaem-optional-seed (737 bytes)= and any POSIX kernel. At the moment it goes all the way up to Mes (tcc is now in progress). Andrius [1] https://github.com/oriansj/mes-m2 >=20 > > 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. >=20 > Woow. I=E2=80=99m willing to take a closer look at all this, this is > impressive! >=20 > > 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 >=20 > All this should be piece of cake compared to what you=E2=80=99ve gone thr= ough. > ;-) But it does mean long rebuild cycles, which I guess can be tiring. >=20 > > * 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 >=20 > Ah, that=E2=80=99s the second big challenge! >=20 > Congratulations to you and everyone involved for going this far! > You made it! >=20 > Ludo=E2=80=99. >=20 >=20 --nextPart2281441.Ej5qh515gX Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part. Content-Transfer-Encoding: 7Bit -----BEGIN PGP SIGNATURE----- iHUEABYIAB0WIQS1aVp4OTg0bb+PYgXi5c0FTLnNPgUCX/WjLgAKCRDi5c0FTLnN PnxdAP9aS3B/7BTgX6G3N2Wo88NrzKO4TEdW5BRvOusag65a6gD/XWcEjoaUnPH0 OlgQiDXnQHZjtZ8BK2jxj3pBqy63BQE= =QjYW -----END PGP SIGNATURE----- --nextPart2281441.Ej5qh515gX--