all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Jan Nieuwenhuizen <janneke@gnu.org>
To: Timothy Sample <samplet@ngyro.com>
Cc: guix-devel@gnu.org
Subject: Re: New Gash build Bash without Bash, Coreutils, and a few others
Date: Sat, 22 Dec 2018 19:39:14 +0100	[thread overview]
Message-ID: <87ftupv225.fsf@gnu.org> (raw)
In-Reply-To: <87k1k2b0df.fsf@ngyro.com> (Timothy Sample's message of "Sat, 22 Dec 2018 00:23:40 -0500")

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 <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com

  parent reply	other threads:[~2018-12-22 18:39 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-22  5:23 New Gash build Bash without Bash, Coreutils, and a few others Timothy Sample
2018-12-22 14:48 ` Joshua Branson
2018-12-22 18:39 ` Jan Nieuwenhuizen [this message]
2019-01-05 17:16 ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87ftupv225.fsf@gnu.org \
    --to=janneke@gnu.org \
    --cc=guix-devel@gnu.org \
    --cc=samplet@ngyro.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.