From patchwork Tue May 23 15:47:21 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Janneke Nieuwenhuizen X-Patchwork-Id: 13257 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 4960727BBF6; Tue, 23 May 2023 16:49:03 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-3.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 2D98327BBE2 for ; Tue, 23 May 2023 16:49:00 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q1UFA-0007Do-LL; Tue, 23 May 2023 11:48:12 -0400 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 ) id 1q1UF4-00072I-HN for guix-patches@gnu.org; Tue, 23 May 2023 11:48:07 -0400 Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q1UF4-0006FD-A6 for guix-patches@gnu.org; Tue, 23 May 2023 11:48:06 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1q1UF4-0007t6-45 for guix-patches@gnu.org; Tue, 23 May 2023 11:48:06 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#63527] [PATCH v5 00/11] Rumpdisk support for the Hurd, really, *really*! References: In-Reply-To: Resent-From: Janneke Nieuwenhuizen Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 23 May 2023 15:48:06 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 63527 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 63527@debbugs.gnu.org Received: via spool by 63527-submit@debbugs.gnu.org id=B63527.168485688230256 (code B ref 63527); Tue, 23 May 2023 15:48:06 +0000 Received: (at 63527) by debbugs.gnu.org; 23 May 2023 15:48:02 +0000 Received: from localhost ([127.0.0.1]:40230 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1q1UEs-0007qy-VI for submit@debbugs.gnu.org; Tue, 23 May 2023 11:48:02 -0400 Received: from eggs.gnu.org ([209.51.188.92]:34364) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1q1UEd-0007o0-Ag for 63527@debbugs.gnu.org; Tue, 23 May 2023 11:47:45 -0400 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 ) id 1q1UEY-00061q-10; Tue, 23 May 2023 11:47:34 -0400 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=vEcmm0p9/hhokiDr8ASUoK//9+c6jhpxX/tApfTKYyg=; b=YxYcSdQqT2XT5d ZNG0YyezwX+oVQ5C0P5BiXScrq1ItWpFMMjCtYYtieIPawkXOteI8mCP1XrTPETqi4UF+XbRlEtuh bBCm+CxYURVfnst7SrXC2m4toaRvAx3m/0aAjuNRHN++oUSmZEnDaha3wFCEJCQhj9jF9g4rOdf1b Fh6spRBdy4QIEDwo3DPQ5svCcVaQnQR6Z9awqPKfJkxs2xuGO9tqkgNTg2ngT95KSnELPHEeWsVlA 3uFu1TOqhk4WeEdAHBnJdKr111Mz/Gnn74bOHBdMRfqzn6bkNRZZZK88fRtGV/yxOwCU8S0pwSdXQ RADrA0gFbTr8pHQFG9gA==; Received: from 2a02-a462-da03-1-2701-7f81-a736-4607.fixed6.kpn.net ([2a02:a462:da03:1:2701:7f81:a736:4607] helo=drakenpad.fritz.box) by fencepost.gnu.org with esmtpa (Exim 4.90_1) (envelope-from ) id 1q1UEX-0002jp-Jd; Tue, 23 May 2023 11:47:33 -0400 From: Janneke Nieuwenhuizen Date: Tue, 23 May 2023 17:47:21 +0200 Message-Id: X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches Hi! So, with lots of kind help from the folks at #hurd and bug-hurd, and many thanks to Josselin Poiret for sending their amazing "Add libc specific to Hurd and update components" patch set (https://issues.guix.gnu.org/63641, note that these series depend on this!) we now have rumpdisk support for the Hurd. To actually use it instead of the gnumach builtin IDE driver, use (kernel-arguments '("noide")) To test this, I'm using this patch --8<---------------cut here---------------start------------->8--- build it using --8<---------------cut here---------------start------------->8--- ./pre-inst-env guix system image -t hurd-raw gnu/system/examples/bare-hurd.tmpl --keep-failed --8<---------------cut here---------------end--------------->8--- and run it like this --8<---------------cut here---------------start------------->8--- guix shell qemu -- qemu-system-i386 \ -m 4096 \ --enable-kvm \ --device rtl8139,netdev=net0 \ --netdev user,id=net0,hostfwd=tcp:0.0.0.0:11022-:2222 \ --snapshot \ --no-reboot \ --device virtio-serial-pci \ --nographic \ --serial mon:stdio \ --hda /gnu/store/l35gz57nrkngc923f9zp9awxmq7ha1hc-disk-image --8<---------------cut here---------------end--------------->8--- (It also still works without using "noide", we're still using that for childhurd service where rumpdisk does not really make sense). Enjoy! Greetings, Janneke Janneke Nieuwenhuizen (11): gnu: Add libpciaccess-0.17. gnu: hurd: Update libpciaccess to 0.17. gnu: Add rumpkernel. gnu: Add hurd-shouldbeinlibc. gnu: parted: Support building for the Hurd. gnu: hurd: Add rumpkernel. hurd-boot: Setup pci-arbiter and rumpdisk translators. services: childhurd: Bump default qemu memory to 2048MB. system: hurd: Boot with pci.arbiter and rumpdisk. bootloader: grub: Use rumpdisk-style root when booting with "noide". gnu: gnumach: Support "noide" argument. doc/guix.texi | 21 ++ gnu/bootloader/grub.scm | 17 +- gnu/build/hurd-boot.scm | 27 +- gnu/local.mk | 3 + gnu/packages/disk.scm | 19 +- gnu/packages/hurd.scm | 298 ++++++++++++++++-- .../patches/gnumach-support-noide.patch | 25 ++ .../patches/hurd-fix-rumpdisk-build.patch | 41 +++ .../patches/hurd-rumpdisk-no-hd.patch | 26 ++ gnu/packages/xorg.scm | 17 + gnu/services/virtualization.scm | 4 +- gnu/system.scm | 25 +- gnu/system/examples/bare-hurd.tmpl | 4 +- 13 files changed, 480 insertions(+), 47 deletions(-) create mode 100644 gnu/packages/patches/gnumach-support-noide.patch create mode 100644 gnu/packages/patches/hurd-fix-rumpdisk-build.patch create mode 100644 gnu/packages/patches/hurd-rumpdisk-no-hd.patch base-commit: 88da863e0048721cef17a5de294084be1f10e7e9 diff --git a/gnu/system/examples/bare-hurd.tmpl b/gnu/system/examples/bare-hurd.tmpl index 463c7ee798..f3d54be79d 100644 --- a/gnu/system/examples/bare-hurd.tmpl +++ b/gnu/system/examples/bare-hurd.tmpl @@ -33,7 +33,7 @@ (bootloader (bootloader-configuration (bootloader grub-minimal-bootloader) (targets '("/dev/sdX")))) + (kernel-arguments '("console=com0" "noide")) (file-systems (cons (file-system (device (file-system-label "my-root")) (mount-point "/") --8<---------------cut here---------------end--------------->8---