unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* New Gash build Bash without Bash, Coreutils, and a few others
@ 2018-12-22  5:23 Timothy Sample
  2018-12-22 14:48 ` Joshua Branson
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Timothy Sample @ 2018-12-22  5:23 UTC (permalink / raw)
  To: guix-devel

Hi Guix,

Here’s an update about bootstrapping for you.

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.

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.)

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.

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.


-- Tim

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: New Gash build Bash without Bash, Coreutils, and a few others
  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
  2019-01-05 17:16 ` Ludovic Courtès
  2 siblings, 0 replies; 4+ messages in thread
From: Joshua Branson @ 2018-12-22 14:48 UTC (permalink / raw)
  To: guix-devel

Timothy Sample <samplet@ngyro.com> writes:

> Hi Guix,
>
> Here’s an update about bootstrapping for you.

Way to go!  That's pretty awesome!

>
> 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.
>
> 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.)
>
> 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.
>
> 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.
>
> -- Tim
>

-- 
Joshua Branson
Sent from Emacs and Gnus

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: New Gash build Bash without Bash, Coreutils, and a few others
  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
  2019-01-05 17:16 ` Ludovic Courtès
  2 siblings, 0 replies; 4+ messages in thread
From: Jan Nieuwenhuizen @ 2018-12-22 18:39 UTC (permalink / raw)
  To: Timothy Sample; +Cc: guix-devel

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

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: New Gash build Bash without Bash, Coreutils, and a few others
  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
@ 2019-01-05 17:16 ` Ludovic Courtès
  2 siblings, 0 replies; 4+ messages in thread
From: Ludovic Courtès @ 2019-01-05 17:16 UTC (permalink / raw)
  To: Timothy Sample; +Cc: guix-devel

Hi Timothy,

Timothy Sample <samplet@ngyro.com> skribis:

> 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.

Woohoo!  \o/  It’s one of these things we’ve been talking about for some
time and it’s exciting to see it come to fruition.

Also, thumbs up to the two of you for coming up with a merger plan.

Thank you, and best bootstrapping wishes for the new year!

Ludo’.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2019-01-05 17:16 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
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
2019-01-05 17:16 ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).