GNU bug report logs - #55227
[PATCH core-updates 0/8] The Full Source Bootstrap

Previous Next

Package: guix-patches;

Reported by: "Jan (janneke) Nieuwenhuizen" <janneke <at> gnu.org>

Date: Mon, 2 May 2022 18:22:01 UTC

Severity: important

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


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

From: Ludovic Courtès <ludo <at> gnu.org>
To: Jan Nieuwenhuizen <janneke <at> gnu.org>
Cc: 55227 <at> debbugs.gnu.org, Thiago Jung Bauermann <bauermann <at> kolabnow.com>
Subject: Re: bug#55227: [PATCH core-updates 0/8] The Full Source Bootstrap
Date: Thu, 12 May 2022 12:45:10 +0200
Jan Nieuwenhuizen <janneke <at> gnu.org> skribis:

>>From f013e88563f73a7513faa330c79eef2f653daf28 Mon Sep 17 00:00:00 2001
> From: "Jan (janneke) Nieuwenhuizen" <janneke <at> gnu.org>
> Date: Thu, 31 Dec 2020 18:25:21 +0100
> Subject: [PATCH core-updates v2 2/8] commencement: Add stage0-posix.
>
> Stage0-posix is a skeleton for bootstrapping all of Stage0 for POSIX systems.
> On x86-linux, from the 357-byte hex0-seed binary from the bootstrap-seeds, it
> builds hex0, kaem, hex1, catm, hex2, M0, cc_x86, M1, M2,
> get_machine, (mescc-tools), and M2-Planet.
>
> * gnu/packages/commencement.scm (stage0-posix): New variable.

[...]

> +      (name "stage0-posix")
> +      (version "1.4")
> +      (source (bootstrap-origin
> +               (origin
> +                 (method url-fetch)
> +                 (uri (string-append
> +                       "https://lilypond.org/janneke/guix/20220502/"
> +                       "stage0-posix-" version ".tar.gz"))

Same comment as earlier regarding ‘bootstrap-origin’ and the URL.

> +      (supported-systems '("i686-linux" "x86_64-linux"
> +                           "arm-linux" "aarch64-linux"
> +                           "riscv64-linux"))

Woow.  :-)

s/arm-linux/armhf-linux/

> +      (native-inputs
> +       `(("bootstrap-seeds" ,bootstrap-seeds)
> +         ("mescc-tools"
> +          ,(bootstrap-origin
> +            (origin
> +              (method url-fetch)
> +              (uri (string-append
> +                    "https://lilypond.org/janneke/guix/20220502/"
> +                    "mescc-tools-" mescc-tools-version ".tar.gz"))
> +              (sha256
> +               (base32
> +                "1xi6f48pf5bhajhfis189gpizxij7nbp1vzvsb1aafhz4skkiqvg")))))
> +         ("m2-planet"
> +          ,(bootstrap-origin
> +            (origin
> +              (method url-fetch)
> +              (uri (string-append
> +                    "https://lilypond.org/janneke/guix/20220502/"
> +                    "M2-Planet-" m2-planet-version ".tar.gz"))
> +              (sha256
> +               (base32
> +                "1xrn69sc5nz4hwaishqyrcidp1ncxwib9zswl45x378ddz3mmk7g")))))
> +         ,@(%boot-gash-inputs)))

Here you can avoid ‘bootstrap-origin’ too and add mirror://gnu URLs.

The “new style” (with gexps) doesn’t work well with non-package inputs
in the sense that you cannot use ‘this-package-input’ to access them.

However, it might be simpler to not have them in ‘native-inputs’ and to
instead refer to them in the code, as in:

  #~(begin
      …
      (invoke "tar" "xvf" #$mescc-tools)
      …)

where:

  (define mescc-tools
    (origin …))

> +      (synopsis "The initial bootstrap package, builds stage0 up to M2-Planet")
> +      (description
> +       "Starting from an 357-byte hex0 provided by the bootstrap-seeds,
> +stage0-posix builds hex0, kaem, hex1, catm, hex2, M0, cc_x86, M1,
> +M2, get_machine, (mescc-tools), and M2-Planet.")

Bonus points if you can make it a full sentence.  :-)

(I feel ridiculous commenting on this on a patch series that’s this
important, but hey!)

Ludo’.




This bug report was last modified 1 year and 336 days ago.

Previous Next


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