Timothy Sample writes: > Here’s an update about bootstrapping for you.
Yay! > I am very pleased to announce that Gash (having absorbed Geesh) is now > capable of building Bash without Bash, Coreutils, Grep, Sed, or Tar. > That is, Gash provides alternatives, written in Scheme, to all the > utilities needed by the “gnu-build-system” that are normally provided by > those packages. Note, however, that this work is still very much at the > “proof of concept” level. > > This is exciting because it means that we are within sight of removing > each of those packages from the set of bootstrap binaries (in the > context Jan’s work on MES and the Guix “reduced binary seed bootstrap”). > AIUI, that means that, besides Guile and MES, the set of bootstrap > binaries need only contain AWK, Patch, Bzip2, Gzip, and XZ. On my--because of this great merger--already bitrotten wip-bootstrap branch, I managed to build make using the earlier Gash (without bash or any bootstrap binaries except xz or bootstrap-guile). So my hope for the Scheme-only bootstrap is work up to a gash 0.1 and then build make, patch (awk?), gzip and possibly xz. At the R-B summit we have expressed the wish to create a single-binary fat bootstrap Guile, probably coming with Gash. Great possibilities ahead! > There is still a lot to do. Concretely, Gash itself has to be > bootstrapped. There is some mildly bit-rotten code for this that will > have to be revived. Gash should also be ported to Guile 2.0, since that > is the current bootstrap Guile, and it would be nice not to change it. > (This shouldn’t be too hard.) ...yes. > As for the other utilities, I don’t really have a strategy for them. I > would imagine that writing a good-enough “patch.scm” would not be too > hard. AWK is difficult, but after spending (way too much) time reading > “configure” scripts, I think it could be avoided. That's another option too. I still hope that with `make' built, gash will be able to build patch. > You can see the latest code at <https://gitlab.com/samplet/geesh> (yes, > the URL needs an update). The work described in this message is on the > “wip-bootstrap” branch. I think we should really rename our `geesh' archives to gash, and try to define a 0.1 target -- WDYT? Thanks for your amazing work! janneke -- Jan Nieuwenhuizen <jann...@gnu.org> | GNU LilyPond http://lilypond.org Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com