GNU bug report logs - #54394
[PATCH core-updates 00/12] Remove old GNU utilities from early bootstrap

Previous Next

Package: guix-patches;

Reported by: Timothy Sample <samplet <at> ngyro.com>

Date: Mon, 14 Mar 2022 22:48:01 UTC

Severity: normal

Tags: patch

Done: Timothy Sample <samplet <at> ngyro.com>

Bug is archived. No further changes may be made.

Full log


Message #50 received at 54394 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Timothy Sample <samplet <at> ngyro.com>
Cc: 54394 <at> debbugs.gnu.org
Subject: Re: bug#54394: [PATCH core-updates 00/12] Remove old GNU utilities
 from early bootstrap
Date: Wed, 16 Mar 2022 18:25:01 +0100
Hello!

Timothy Sample <samplet <at> ngyro.com> skribis:

> This is culmination of a lot of work, so I’m excited to be submitting
> it!  The main thrust of this series is to update Gash and Gash-Utils,
> and then remove most of the old GNU utilities we use during early
> bootstrap.  To elaborate, the current situation is that we climb a
> ladder through time: first we build Bash 2, then we build Bash 4, and
> finally we build Bash 5.  This is true for most GNU utilities: Sed,
> Gawk, Coreutils, etc.  The reason?  Until now, our Scheme
> implementations of those utilities (Gash and Gash-Utils) were very
> limited.  Bash 2 used to be a lot more useful then Gash, for example.
> Now, with recent releases of Gash and Gash-Utils, the Scheme utilities
> are, in general, capable of powering the builds of modern GNU software.

Woohoo!  Shortening the ladder, and doing it “the nice way”, is a much
welcome improvement.

> To be clear, we still climb the time-ladder in a few cases.  The main
> ones are GCC, Glibc, and Binutils.  For example, we have to use GCC 2 to
> transition from TCC To GCC 4 (which is the last non-C++ GCC [1]).
> Fixing this would require quite a bit of TCC hacking, I imagine.  There
> are others, though.  We still use old versions of Gzip, Make, patch, and
> Gawk.  The fact that Gawk is still there disappoints me quite a bit, but
> ‘glibc-mesboot’ fails in a way that I just can’t figure out when
> building with Gash-Utils.  Gzip is not strictly necessary, but also
> pretty easy to replace.  I’m not sure, but I think patch is only there
> to avoid using patches in ‘origin’ records during bootstrap.  We now
> have a way to do that, so it may no longer be necessary.  Make will
> likely need to be rewritten in Scheme, but we have a head start: Potato
> Make [2].
>
> [1] https://bootstrappable.org/projects.html
> [2] https://github.com/spk121/potato-make

Yes, the C compiler situation is tricky; Make looks like a fun target.

[...]

> The next three are updates.  The bootar update optimistically assumes
> that someone with access will upload the source file to the Guix mirror
> URL: “mirror://gnu/guix/...” as was done with previous versions.

Sure.

>  5 files changed, 192 insertions(+), 788 deletions(-)

Yay!

Ludo’.




This bug report was last modified 3 years and 120 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.