From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id GNSkMnFHsF4qCQAA0tVLHw (envelope-from ) for ; Mon, 04 May 2020 16:48:49 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id CCu2An1HsF5iHAAAbx9fmQ (envelope-from ) for ; Mon, 04 May 2020 16:49:01 +0000 Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:470:142::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 CE7EA945ACF for ; Mon, 4 May 2020 16:32:39 +0000 (UTC) Received: from localhost ([::1]:47082 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jVe1I-00086N-61 for larch@yhetil.org; Mon, 04 May 2020 12:32:40 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:46226) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jVe0z-00080i-7s for guix-devel@gnu.org; Mon, 04 May 2020 12:32:21 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:34680) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jVe0y-0006xY-AP; Mon, 04 May 2020 12:32:20 -0400 Received: from [2001:980:1b4f:1:42d2:832d:bb59:862] (port=32882 helo=dundal.peder.onsbrabantnet.nl) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1jVe0s-0005kn-3v; Mon, 04 May 2020 12:32:15 -0400 From: Jan Nieuwenhuizen To: Mathieu Othacehe Subject: Re: guix system vm-image --target=i586-pc-gnu Hurd'le Organization: AvatarAcademy.nl References: <87r1vzkg3q.fsf@gnu.org> <87o8r3wwfy.fsf@gmail.com> X-Url: http://AvatarAcademy.nl Date: Mon, 04 May 2020 18:32:11 +0200 In-Reply-To: <87o8r3wwfy.fsf@gmail.com> (Mathieu Othacehe's message of "Mon, 04 May 2020 17:29:05 +0200") Message-ID: <87ftcfiruc.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: guix-devel@gnu.org Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Scanner: scn0 X-Spam-Score: -1.01 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 2001:470:142::17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Scan-Result: default: False [-1.01 / 13.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; GENERIC_REPUTATION(0.00)[-0.49494618871357]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2001:470:142::/48:c]; IP_REPUTATION_HAM(0.00)[asn: 22989(0.13), country: US(-0.00), ip: 2001:470:142::17(-0.49)]; DWL_DNSWL_BLOCKED(0.00)[2001:470:142::17:from]; HAS_ORG_HEADER(0.00)[]; MX_GOOD(-0.50)[cached: eggs.gnu.org]; RCPT_COUNT_TWO(0.00)[2]; MAILLIST(-0.20)[mailman]; FREEMAIL_TO(0.00)[gmail.com]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; RCVD_TLS_LAST(0.00)[]; R_DKIM_NA(0.00)[]; ASN(0.00)[asn:22989, ipnet:2001:470:142::/48, country:US]; MID_RHS_MATCH_FROM(0.00)[]; TAGGED_FROM(0.00)[larch=yhetil.org]; ARC_NA(0.00)[]; RCVD_COUNT_FIVE(0.00)[5]; FROM_NEQ_ENVFROM(0.00)[janneke@gnu.org,guix-devel-bounces@gnu.org]; FROM_HAS_DN(0.00)[]; URIBL_BLOCKED(0.00)[avataracademy.com:url,gnu.org:email,lilypond.org:url,joyofsource.com:url]; TAGGED_RCPT(0.00)[]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[gnu.org]; HAS_LIST_UNSUB(-0.01)[]; DNSWL_BLOCKED(0.00)[2001:470:142::17:from]; MIME_TRACE(0.00)[0:+]; FORGED_SENDER_MAILLIST(0.00)[] X-TUID: 61Jm5wiybxyK Mathieu Othacehe writes: Hello Mathieu >> (define* (hurd-grub-configuration-file config entries >> #:key >> (system (%current-target-system)) >> (old-entries '())) >> (let ((hurd (if (equal? system (%current-system)) >> hurd >> (with-parameters ((%current-target-system system)) >> hurd))) > > I'm not sure this is useful. When --target is set, you can use #$ to > refer to the cross-built package and #+ to refer to the native package > (built for host architecture). Oh...it seems to be pretty convoluted way to type dead code. Thanks! >> menuentry \"GNU\" { >> multiboot ~a/boot/gnumach root=3Ddevice:hd0s1 >> module ~a/hurd/ext2fs.static ext2fs \\ >> --multiboot-command-line=3D'${kernel-command-line}' \\ >> --host-priv-port=3D'${host-port}' \\ >> --device-master-port=3D'${device-port}' \\ >> --exec-server-task=3D'${exec-task}' -T typed '${root}' \\ >> '$(task-create)' '$(task-resume)' >> module ~a/lib/ld.so.1 exec ~a/hurd/exec '$(exec-task=3Dtask-create)' >> }\n" >> #+mach #+mach #+hurd >> #+libc #+hurd)))))) > > So here, I think you want to use #$hurd, which would refer to the > cross-compiled hurd package when cross-compiling and to the native hurd > when building from a hurd system (real, or emulated with --system). Ah yes, this is a bug; thanks! I have changed it to (define* (hurd-grub-configuration-file config entries #:key (system (%current-system)) (old-entries '())) ;; XXX Get from a hurd'ified config+entries (let ((mach gnumach) (hurd hurd) (libc glibc)) (computed-file "grub.cfg" #~(call-with-output-file #$output (lambda (port) (format port " ... }\n" #$mach #$mach #$hurd #$libc #$hurd)))))) > In the future it would also be nice to have this stuff in (gnu > bootloader grub), but we'll discuss that later on :) Yes! I found it still a bit too kludgy for that? In particular, I haven't really dared to think what to do about the linux-specific config ...make a hurd variant, or add hurd'ish fields. Greetings, janneke --=20 Jan Nieuwenhuizen | GNU LilyPond http://lilypond.org Freelance IT http://JoyofSource.com | Avatar=C2=AE http://AvatarAcademy.com