unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Janneke Nieuwenhuizen <janneke@gnu.org>
To: 74290@debbugs.gnu.org
Cc: "Jan \(janneke\) Nieuwenhuizen" <janneke@gnu.org>
Subject: [bug#74290] [PATCH 00/31] Add support for x86_64-gnu, aka the 64bit Hurd.
Date: Sun, 10 Nov 2024 11:32:14 +0100	[thread overview]
Message-ID: <cover.1731232753.git.janneke@gnu.org> (raw)

From: "Jan (janneke) Nieuwenhuizen" <janneke@gnu.org>

Hi,

Lo and behold, the 64bit Hurd boots!  Again, thanks to the help from the
kind folks over at libera #hurd and their excellent work.  Do something like:

--8<---------------cut here---------------start------------->8---
./pre-inst-env guix system image --image-type=hurd64-qcow2 \
  gnu/system/examples/bare-hurd.tmpl
--8<---------------cut here---------------end--------------->8---

producing something like: /gnu/store/...-disk-image.

Run the image in QEMU:

--8<---------------cut here---------------start------------->8---
guix shell qemu@7 -- qemu-system-x86_64                 \
--machine q35                                           \
-m 4096                                                 \
--enable-kvm                                            \
--device rtl8139,netdev=net0                            \
--netdev user,id=net0,hostfwd=tcp:0.0.0.0:11022-:2222   \
--snapshot                                              \
--hda /gnu/store/...-disk-image
--8<---------------cut here---------------end--------------->8---

and login

--8<---------------cut here---------------start------------->8---
11:03:20 janneke@dundal:~/src/guix/hurd-team 
$ ssh -p 11022 root@localhost
Last login: Sun Nov 10 10:09:00 2024 from 10.0.2.2


  This is the GNU Hurd.  Welcome.

root@guixygnu ~# uname -a
GNU guixygnu 0.9 GNU-Mach 1.8/Hurd-0.9 x86_64 GNU
--8<---------------cut here---------------end--------------->8---

Most notably, besides the expected updates, this series adds an indirection
for gcc and gcc-toolchain, (current-gcc) and (current-gcc-toolchain)
respectively, as the 64bit Hurd needs gcc-14.  We may also want to think about
image names hurd64-qcow2 etc. and their defaults, vs hurd-qcow2/hurd32-qcow2.
We'll probably also want a 64bit childhurd service, etc, etc...

This series builds on/waits for #73927, which I intend to rebase and push
later this weekend if there are no further comments.  And I guess that the
pending blog post will also need an update :)

For your hacking convenience I have reset and updated the `hurd-team' branch.

Greetings,
Janneke

Janneke Nieuwenhuizen (31):
  gnu: mig: Update to v1.8+git20231217.
  gnu: gnumach: Update to v1.8+git20240714.
  gnu: hurd: Update to v0.9.git20240714.
  gnu: gcc: Add indirections current-gcc, current-gcc-toolchain.
  gnu: Add basic support for x86_64-pc-gnu target, aka 64bit Hurd.
  gnu: cross-libc: Support cross-building for the 64bit Hurd.
  gnu: bash-minimal: Fix build for 64bit Hurd.
  gnu: elfutils: Fix build for 64bit Hurd.
  gnu: grep: Fix build for the 64bit Hurd.
  gnu: patch: Fix build for the 64bit Hurd.
  gnu: libxcrypt: Support the 64bit Hurd.
  gnu: libstdc++: Support the 64bit Hurd.
  gnu: gcc-13, gcc-14: Support being used as parent for gcc-static.
  DRAFT gnu: bootstrap: Add support for x86_64-gnu, aka the 64bit Hurd.
  system: image: Add hurd64 image types.
  gnu: Add libgpg-error-1.50.
  gnu: libgcrypt: Use libgpg-error-1.50 for the 64bit Hurd.
  gnu: perl: Support cross-building for the 64bit Hurd.
  gnu: openssl-3.0: Support the 64bit Hurd.
  gnu: pciutils: Support the 64bit Hurd.
  gnu: libpciaccess: Support the 64bit Hurd.
  gnu: netdde: Update to c0ef248dc7c5ccc1273e2a796f3ece30c5b645df.
  gnu: netdde: Support the 64bit Hurd.
  gnu: rumpkernel: Update to f1ffd6405f225336e595a0f99f01095ed7438337.
  gnu: rumpkernel: Support the 64bit Hurd.
  gnu: hurd: Build fixes for the 64bit Hurd.
  gnu: git-minimal: Support the 64bit Hurd.
  gnu: inetutils: Fix build for the 64bit Hurd.
  gnu: grub: Fix build for the 64bit Hurd.
  gnu: guile-fibers: Fix build for the 64bit Hurd.
  system: hurd: Use 64bit gnumach for the 64bit Hurd.

 doc/guix.texi                                 |   9 +-
 gnu/ci.scm                                    |   4 +-
 gnu/local.mk                                  |   9 +
 gnu/packages/admin.scm                        |  14 +-
 gnu/packages/avr.scm                          |   7 +-
 gnu/packages/base.scm                         |  74 ++++---
 gnu/packages/bash.scm                         |   9 +
 gnu/packages/benchmark.scm                    |   6 +-
 gnu/packages/bootloaders.scm                  |  10 +-
 gnu/packages/bootstrap.scm                    |  46 ++++-
 gnu/packages/c.scm                            |   4 +-
 gnu/packages/chicken.scm                      |   7 +-
 gnu/packages/commencement.scm                 |  35 ++--
 gnu/packages/containers.scm                   |   5 +-
 gnu/packages/cross-base.scm                   |  27 +--
 gnu/packages/crypto.scm                       |  15 ++
 gnu/packages/dlang.scm                        |   3 +-
 gnu/packages/elf.scm                          |   6 +-
 gnu/packages/engineering.scm                  |   4 +-
 gnu/packages/gawk.scm                         |   3 +-
 gnu/packages/gcc.scm                          |  69 ++++---
 gnu/packages/gnupg.scm                        |  19 +-
 gnu/packages/golang.scm                       |   3 +-
 gnu/packages/guile-xyz.scm                    |   2 +-
 gnu/packages/hurd.scm                         | 187 ++++++++++++------
 gnu/packages/julia-xyz.scm                    |   3 +-
 gnu/packages/lisp.scm                         |   3 +-
 gnu/packages/llvm.scm                         |   7 +-
 gnu/packages/make-bootstrap.scm               |  60 +++---
 gnu/packages/mpi.scm                          |   3 +-
 gnu/packages/parallel.scm                     |   5 +-
 gnu/packages/patches/gnumach-version.patch    |  23 +++
 gnu/packages/patches/grub-hurd64.patch        |  32 +++
 gnu/packages/patches/hurd-64bit.patch         |  56 ++++++
 gnu/packages/patches/inetutils-hurd64.patch   |  65 ++++++
 .../patches/libpciaccess-hurd64.patch         |  58 ++++++
 gnu/packages/patches/libxcrypt-hurd64.patch   |  38 ++++
 gnu/packages/patches/netdde-csum.patch        |  18 ++
 gnu/packages/patches/openssl-hurd64.patch     |  99 ++++++++++
 gnu/packages/patches/pciutils-hurd64.patch    |  31 +++
 gnu/packages/pciutils.scm                     |  25 ++-
 gnu/packages/perl.scm                         |  20 +-
 gnu/packages/rocm.scm                         |   3 +-
 gnu/packages/tls.scm                          |   9 +
 gnu/packages/version-control.scm              |   8 +-
 gnu/packages/xorg.scm                         |  23 ++-
 gnu/system.scm                                |   1 -
 gnu/system/hurd.scm                           |  11 +-
 gnu/system/images/hurd.scm                    |  47 ++++-
 guix/packages.scm                             |   8 +-
 guix/platforms/x86.scm                        |  11 +-
 guix/utils.scm                                |  15 +-
 m4/guix.m4                                    |  12 +-
 53 files changed, 1025 insertions(+), 246 deletions(-)
 create mode 100644 gnu/packages/patches/gnumach-version.patch
 create mode 100644 gnu/packages/patches/grub-hurd64.patch
 create mode 100644 gnu/packages/patches/hurd-64bit.patch
 create mode 100644 gnu/packages/patches/inetutils-hurd64.patch
 create mode 100644 gnu/packages/patches/libpciaccess-hurd64.patch
 create mode 100644 gnu/packages/patches/libxcrypt-hurd64.patch
 create mode 100644 gnu/packages/patches/netdde-csum.patch
 create mode 100644 gnu/packages/patches/openssl-hurd64.patch
 create mode 100644 gnu/packages/patches/pciutils-hurd64.patch


base-commit: 7105e7125882be35e334448eafd6d81b37b627f0
-- 
Janneke Nieuwenhuizen <janneke@gnu.org>  | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com





             reply	other threads:[~2024-11-10 10:35 UTC|newest]

Thread overview: 78+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-10 10:32 Janneke Nieuwenhuizen [this message]
2024-11-10 10:37 ` [bug#74290] [PATCH 01/31] gnu: mig: Update to v1.8+git20231217 Janneke Nieuwenhuizen
2024-11-10 10:37 ` [bug#74290] [PATCH 02/31] gnu: gnumach: Update to v1.8+git20240714 Janneke Nieuwenhuizen
2024-11-10 11:45   ` janneke
2024-11-10 10:37 ` [bug#74290] [PATCH 03/31] gnu: hurd: Update to v0.9.git20240714 Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 04/31] gnu: gcc: Add indirections current-gcc, current-gcc-toolchain Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 05/31] gnu: Add basic support for x86_64-pc-gnu target, aka 64bit Hurd Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 06/31] gnu: cross-libc: Support cross-building for the " Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 07/31] gnu: bash-minimal: Fix build for " Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 08/31] gnu: elfutils: " Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 09/31] gnu: grep: Fix build for the " Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 10/31] gnu: patch: " Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 11/31] gnu: libxcrypt: Support " Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 12/31] gnu: libstdc++: " Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 13/31] gnu: gcc-13, gcc-14: Support being used as parent for gcc-static Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 14/31] DRAFT gnu: bootstrap: Add support for x86_64-gnu, aka the 64bit Hurd Janneke Nieuwenhuizen
2024-11-11 18:05   ` janneke
2024-11-10 10:38 ` [bug#74290] [PATCH 15/31] system: image: Add hurd64 image types Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 16/31] gnu: Add libgpg-error-1.50 Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 17/31] gnu: libgcrypt: Use libgpg-error-1.50 for the 64bit Hurd Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 18/31] gnu: perl: Support cross-building " Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 19/31] gnu: openssl-3.0: Support " Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 20/31] gnu: pciutils: " Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 21/31] gnu: libpciaccess: " Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 22/31] gnu: netdde: Update to c0ef248dc7c5ccc1273e2a796f3ece30c5b645df Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 23/31] gnu: netdde: Support the 64bit Hurd Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 24/31] gnu: rumpkernel: Update to f1ffd6405f225336e595a0f99f01095ed7438337 Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 25/31] gnu: rumpkernel: Support the 64bit Hurd Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 26/31] gnu: hurd: Build fixes for " Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 27/31] gnu: git-minimal: Support " Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 28/31] gnu: inetutils: Fix build for " Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 29/31] gnu: grub: " Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 30/31] gnu: guile-fibers: " Janneke Nieuwenhuizen
2024-11-10 10:38 ` [bug#74290] [PATCH 31/31] system: hurd: Use 64bit gnumach " Janneke Nieuwenhuizen
2024-11-10 14:40   ` janneke
2024-11-10 14:15 ` [bug#74290] [PATCH 00/31] Add support for x86_64-gnu, aka " janneke
2024-11-12  1:17   ` Maxim Cournoyer
2024-11-12 16:25 ` [bug#74290] [PATCH v2 00/40] " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 01/40] gnu: gnumach: Update to v1.8+git20240714 Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 02/40] gnu: mig: Update to 1.8+git20231217 Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 03/40] gnu: hurd: Update to 0.9.git20240714 Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 04/40] gnu: gcc: Add indirections current-gcc, current-gcc-toolchain Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 05/40] gnu: Add basic support for x86_64-pc-gnu target, aka 64bit Hurd Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 06/40] gnu: cross-libc: Support cross-building for the " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 07/40] gnu: bash-minimal: Fix build for " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 08/40] gnu: elfutils: " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 09/40] gnu: grep: Fix build for the " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 10/40] gnu: patch: " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 11/40] gnu: libxcrypt: Support " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 12/40] gnu: libstdc++: " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 13/40] gnu: gcc-13, gcc-14: Support being used as parent for gcc-static Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 14/40] DRAFT gnu: bootstrap: Add support for x86_64-gnu, aka the 64bit Hurd Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 15/40] system: image: Add hurd64 image types Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 16/40] gnu: Add libgpg-error-1.50 Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 17/40] gnu: libgcrypt: Use libgpg-error-1.50 for the 64bit Hurd Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 18/40] gnu: perl: Support cross-building " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 19/40] gnu: openssl-3.0: Support " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 20/40] gnu: pciutils: " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 21/40] gnu: libpciaccess: " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 22/40] gnu: netdde: Update to c0ef248dc7c5ccc1273e2a796f3ece30c5b645df Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 23/40] gnu: netdde: Support the 64bit Hurd Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 24/40] gnu: rumpkernel: Update to f1ffd6405f225336e595a0f99f01095ed7438337 Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 25/40] gnu: rumpkernel: Support the 64bit Hurd Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 26/40] gnu: hurd: Build fixes for " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 27/40] gnu: git-minimal: Support " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 28/40] gnu: inetutils: Fix build for " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 29/40] gnu: grub: " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 30/40] gnu: guile-fibers: " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 31/40] gnu: m4: " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 32/40] gnu: commencement: gnumach-headers-boot0: Update to 1.8+git20240714 Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 33/40] gnu: commencement: mig-boot0: Update to 1.8+git20231217 Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 34/40] gnu: commencement: hurd-headers-boot0: Update to 0.9.git20240714 Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 35/40] gnu: commencement: libstdc++-boot0-gcc7: Replace by make-libstdc++-boot0 Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 36/40] gnu: gettext: Fix cross-build shebangs Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 37/40] gnu: texinfo-4: Fix build for the 64bit Hurd Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 38/40] gnu: flex: " Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 39/40] system: examples: Add bare-hurd64.tmpl Janneke Nieuwenhuizen
2024-11-12 16:25   ` [bug#74290] [PATCH v2 40/40] system: examples: Add devel-hurd64.tmpl Janneke Nieuwenhuizen

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

  List information: https://guix.gnu.org/

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

  git send-email \
    --in-reply-to=cover.1731232753.git.janneke@gnu.org \
    --to=janneke@gnu.org \
    --cc=74290@debbugs.gnu.org \
    /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 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).