From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:35385) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j4Rke-0001Dv-F1 for guix-patches@gnu.org; Wed, 19 Feb 2020 10:59:05 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j4Rkc-000863-3n for guix-patches@gnu.org; Wed, 19 Feb 2020 10:59:04 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:37326) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j4Rkb-00085t-WE for guix-patches@gnu.org; Wed, 19 Feb 2020 10:59:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1j4Rkb-0004xD-VS for guix-patches@gnu.org; Wed, 19 Feb 2020 10:59:01 -0500 Subject: [bug#39655] [PATCH core-updates] doc: Add 'Scheme-only Bootstrap' node. Resent-Message-ID: From: Ludovic =?UTF-8?Q?Court=C3=A8s?= References: <20200218124411.20400-1-janneke@gnu.org> Date: Wed, 19 Feb 2020 16:58:12 +0100 In-Reply-To: <20200218124411.20400-1-janneke@gnu.org> (Jan Nieuwenhuizen's message of "Tue, 18 Feb 2020 13:44:11 +0100") Message-ID: <87eeuqmuwb.fsf@gnu.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: Jan Nieuwenhuizen Cc: 39655@debbugs.gnu.org Hi! Jan Nieuwenhuizen skribis: > * doc/guix.texi (@detailmenu): Add Bootstrapping menu. > (Scheme-only Bootstrap): New node. > * doc/images/gcc-core-mesboot0-scheme-only-graph.dot: New image. > * doc/local.mk (DOT_FILES): Add it. Great! I wonder if we need a new section though. Do you think we could just keep it all in a single bootstrapping section that would describe the current state of affairs, possibly with a =E2=80=9CBootstrapping Histor= y=E2=80=9D section or similar that would describe the milestones that got us there? In fact, part of what you write here could very much go straight to such a =E2=80=9CHistory=E2=80=9D section. I think the terms =E2=80=9CFull Sourc= e Bootstrap=E2=80=9D, =E2=80=9CScheme-Only Bootstrap=E2=80=9D, etc. should only appear there, for= clarity. That way, the main bootstrapping section would simply describe the current status in a standalone fashion. Does that make sense? > +The next step that Guix has taken towards a Full Source Bootstrap is to > +replace the shell and all its utilities with implementations in Guile > +Scheme. Gash (@pxref{Gash,,, gash, The Gash manual}) is a > +POSIX-compatible shell that replaces Bash, and it comes with Gash Utils > +which has minimalist replacements for Awk, the GNU Core Utilities, Grep, > +Gzip, Sed, and Tar. The rest of the bootstrap binary seeds that were > +removed are now built from source by adding a new set of > +@c > +packages@footnote{@c > +gash-boot, > +gash-utils-boot, > +%bootstrap-mes-rewired, > +gzip-mesboot, I wouldn=E2=80=99t list them all here because (1) it=E2=80=99s hard to unde= rstand what these names refer to, unless reading commencement.scm is your favorite hobby ;-), and (2) it=E2=80=99s bound to become outdated. WDYT? > +As Gash and Gash Utils mature, and GNU packages become more > +bootstrappable (e.g., new releases of GNU Sed will also ship in > +@code{tar.gz} format), this set of added packages can hopefully be > +reduced again. > + > +@c ./pre-inst-env guix graph -e '(@@ (gnu packages commencement) gcc-cor= e-mesboot0)' | sed -re 's,((bootstrap-mescc-tools|bootstrap-mes|guile-boots= trap).*shape =3D) box,\1 ellipse,' > doc/images/gcc-core-mesboot0-scheme-on= ly-graph.dot > +@image{images/gcc-core-mesboot0-scheme-only-graph,6in,,Dependency graph = of gcc-core-mesboot0} It would be nice to have a couple of lines commenting the graph, like: The graph below shows the resulting dependency graph. At its root there=E2=80=99s X and at the top there=E2=80=99s Y, etc. Thank you, and apologies for suggesting more work! :-) Ludo=E2=80=99.