From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <guix-patches-bounces+larch=yhetil.org@gnu.org>
Received: from mp2.migadu.com ([2001:41d0:303:e224::])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	by ms13.migadu.com with LMTPS
	id AGMOL3eMMGcBDwAAe85BDQ:P1
	(envelope-from <guix-patches-bounces+larch=yhetil.org@gnu.org>)
	for <larch@yhetil.org>; Sun, 10 Nov 2024 10:35:36 +0000
Received: from aspmx1.migadu.com ([2001:41d0:303:e224::])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	by mp2.migadu.com with LMTPS
	id AGMOL3eMMGcBDwAAe85BDQ
	(envelope-from <guix-patches-bounces+larch=yhetil.org@gnu.org>)
	for <larch@yhetil.org>; Sun, 10 Nov 2024 11:35:35 +0100
X-Envelope-To: larch@yhetil.org
Authentication-Results: aspmx1.migadu.com;
	dkim=pass header.d=debbugs.gnu.org header.s=debbugs-gnu-org header.b=KDXBw9NK;
	dkim=fail ("headers rsa verify failed") header.d=gnu.org header.s=fencepost-gnu-org header.b=PVavsBKk;
	dmarc=pass (policy=none) header.from=gnu.org;
	spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"
ARC-Seal: i=1; s=key1; d=yhetil.org; t=1731234935; a=rsa-sha256; cv=none;
	b=rbxUTPC84DwV0InkIQeR974DKc0UnUwVmJx5Sk17ySm+1Az53UZOGPBZWsoa915tMnE3xn
	uineWDGdx0cXKpflugH4tVMQhhaSO+lu0EnO0J8qEC1zzzJnphEjuH5LrCLvts8HKQTU8V
	Wo7Xbh0r7p8Dbq4MNn2LYyhNyCLqS8fIwK1Yyu+YdtCgVyAjzMvR0zkwbkvpTe6cAAwYF+
	D9wctd1STdMJX2FCXQvKWHA1EEGtsQTMk73cqc5ZmamThmZ6h5LaObE9CGPOsA9Ib91Y/j
	YjsLjgvSb8FBhAGtiDZ9u8i8eT1XUI5l6huNj8rQHymrJxnPRLEQ0R7OTnzAdg==
ARC-Authentication-Results: i=1;
	aspmx1.migadu.com;
	dkim=pass header.d=debbugs.gnu.org header.s=debbugs-gnu-org header.b=KDXBw9NK;
	dkim=fail ("headers rsa verify failed") header.d=gnu.org header.s=fencepost-gnu-org header.b=PVavsBKk;
	dmarc=pass (policy=none) header.from=gnu.org;
	spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org;
	s=key1; t=1731234935;
	h=from:from:sender:sender:reply-to:subject:subject:date:date:
	 message-id:message-id:to:to:cc:cc:mime-version:mime-version:
	 content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:resent-cc:
	 resent-from:resent-sender:resent-message-id:list-id:list-help:
	 list-unsubscribe:list-subscribe:list-post:dkim-signature;
	bh=n58E9ohwXzGeRU97edGTJjeJSF/WfgfRDeNanaCMTkc=;
	b=PBMsvihO1Ousuy5Fj0EXrjoqu3h9e+52YD1LjK/ndUrJm6yQrgOdUMANcKqYsa/uPHr1wS
	vwmKntTw2/UqG87Dr7IM6/9vMrR0fZsRpXjlPQm9Kyc2k5nWogkgBok36ub6NitbsyyovZ
	r/oY/YN4wfh2IIekVNiiazgCdjNtxXbji5OZeew9IuTFQIzAp+jSsYc/Oz+/orJW/NKDUw
	7u+tKYOzrG3N7EiRoM9YuzTDsTlRR+IJHQ8EKSRlieJFRJ6B4r6OHJZQWBCoMjbVVGft5d
	LqHF7m60IvY8O6OhSqgCQqZiCq0ex1Dw9RhU5GQK2BnGta8UVBwR5wMdFQyghg==
Received: from lists.gnu.org (lists.gnu.org [209.51.188.17])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(No client certificate requested)
	by aspmx1.migadu.com (Postfix) with ESMTPS id 3E02C671D
	for <larch@yhetil.org>; Sun, 10 Nov 2024 11:35:35 +0100 (CET)
Received: from localhost ([::1] helo=lists1p.gnu.org)
	by lists.gnu.org with esmtp (Exim 4.90_1)
	(envelope-from <guix-patches-bounces@gnu.org>)
	id 1tA5Hm-0007kk-AY; Sun, 10 Nov 2024 05:35:14 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <Debian-debbugs@debbugs.gnu.org>)
 id 1tA5Ha-0007f3-Ov
 for guix-patches@gnu.org; Sun, 10 Nov 2024 05:35:02 -0500
Received: from debbugs.gnu.org ([2001:470:142:5::43])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <Debian-debbugs@debbugs.gnu.org>)
 id 1tA5Ha-0007Oa-Fh
 for guix-patches@gnu.org; Sun, 10 Nov 2024 05:35:02 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
 d=debbugs.gnu.org; s=debbugs-gnu-org; 
 h=MIME-Version:Date:From:To:Subject;
 bh=n58E9ohwXzGeRU97edGTJjeJSF/WfgfRDeNanaCMTkc=; 
 b=KDXBw9NKIlcI5pAZOtJ180RYUf9w36PrI8chkeFQTXrm8tQ4H8j9ZTrHLRkQXZXLnIFzNA1fvHk8+6lF0dIQ+DapXR4ESTSL1dA32ed9W73F3qlaYPCD+AK7y2sqVK2Cc4JMepF80NFeyim4oGCl3OIAB4QRAbUFDSPuplJ0pHCpXRtaD0EfLrcs1ZxANNZkeqMYw+L6oKtRAQV0Z4mdBV8SrXAPUefaTB6WkVNxfDR0ggIJwJOdM86VT9WwS5QQ3cIgN/pQWFYpNFgtvjhQZ6kntPz2ZzVJ1dq1lAFJg5+5/EUXpXH9qBxlRJiyjGtLgpqTVjUtBqPdXDQLWK6rbQ==;
Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2)
 (envelope-from <Debian-debbugs@debbugs.gnu.org>) id 1tA5Ha-0002Kt-9l
 for guix-patches@gnu.org; Sun, 10 Nov 2024 05:35:02 -0500
X-Loop: help-debbugs@gnu.org
Subject: [bug#74290] [PATCH 00/31] Add support for x86_64-gnu,
 aka the 64bit Hurd.
Resent-From: Janneke Nieuwenhuizen <janneke@gnu.org>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces@debbugs.gnu.org>
Resent-CC: guix-patches@gnu.org
Resent-Date: Sun, 10 Nov 2024 10:35:02 +0000
Resent-Message-ID: <handler.74290.B.17312348758931@debbugs.gnu.org>
Resent-Sender: help-debbugs@gnu.org
X-GNU-PR-Message: report 74290
X-GNU-PR-Package: guix-patches
X-GNU-PR-Keywords: patch
To: 74290@debbugs.gnu.org
Cc: "Jan \(janneke\) Nieuwenhuizen" <janneke@gnu.org>
X-Debbugs-Original-To: guix-patches@gnu.org
Received: via spool by submit@debbugs.gnu.org id=B.17312348758931
 (code B ref -1); Sun, 10 Nov 2024 10:35:02 +0000
Received: (at submit) by debbugs.gnu.org; 10 Nov 2024 10:34:35 +0000
Received: from localhost ([127.0.0.1]:55652 helo=debbugs.gnu.org)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <debbugs-submit-bounces@debbugs.gnu.org>)
 id 1tA5H8-0002Jy-Rp
 for submit@debbugs.gnu.org; Sun, 10 Nov 2024 05:34:35 -0500
Received: from lists.gnu.org ([209.51.188.17]:34794)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <janneke@gnu.org>) id 1tA5H6-0002Jq-FV
 for submit@debbugs.gnu.org; Sun, 10 Nov 2024 05:34:33 -0500
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <janneke@gnu.org>) id 1tA5Ez-0007Tb-1s
 for guix-patches@gnu.org; Sun, 10 Nov 2024 05:32:21 -0500
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <janneke@gnu.org>)
 id 1tA5Ex-0007DR-Na; Sun, 10 Nov 2024 05:32:19 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:Date:Subject:To:From:in-reply-to:
 references; bh=n58E9ohwXzGeRU97edGTJjeJSF/WfgfRDeNanaCMTkc=; b=PVavsBKksb/me3
 gQQLTgvqDT3MFqnb9dGTn5DbdpyjRVpf305vxmJ/Chi08ZIs6qk9oqbJIKpGDz4xEQAsCpxQuIloU
 7BWELA4mzVJPWd7fCeKM/abXAT/CVJ7uPX/tyhvekwYHrZ9c/YZ4QfZmOJ7jbB6KkkYoP5IXIRJmd
 jqfoimyLrDN9XLsLwvhx/fMUH4ojqqNbMy7y+LPdhbSzHaM95fYo7E2fNeyu3E1ef8qTv+VKFZ2mz
 5OIit7FAjsWaB2MxQlDgpSegQHacOlbvek10vWrty7ITx6IAYRrAh3dZFmwlWmLbU29qbTJj4AJtM
 O/Bao7Q39w0E5XW7csIg==;
From: Janneke Nieuwenhuizen <janneke@gnu.org>
Date: Sun, 10 Nov 2024 11:32:14 +0100
Message-ID: <cover.1731232753.git.janneke@gnu.org>
X-Mailer: git-send-email 2.46.0
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-BeenThere: debbugs-submit@debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
X-BeenThere: guix-patches@gnu.org
List-Id: <guix-patches.gnu.org>
List-Unsubscribe: <https://lists.gnu.org/mailman/options/guix-patches>,
 <mailto:guix-patches-request@gnu.org?subject=unsubscribe>
List-Archive: <https://lists.gnu.org/archive/html/guix-patches>
List-Post: <mailto:guix-patches@gnu.org>
List-Help: <mailto:guix-patches-request@gnu.org?subject=help>
List-Subscribe: <https://lists.gnu.org/mailman/listinfo/guix-patches>,
 <mailto:guix-patches-request@gnu.org?subject=subscribe>
Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org
Sender: guix-patches-bounces+larch=yhetil.org@gnu.org
X-Migadu-Flow: FLOW_IN
X-Migadu-Country: US
X-Migadu-Spam-Score: 1.38
X-Spam-Score: 1.38
X-Migadu-Queue-Id: 3E02C671D
X-Migadu-Scanner: mx12.migadu.com
X-TUID: b4nS11iER9FU

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