From: Jan Nieuwenhuizen <janneke@gnu.org>
To: Mathieu Othacehe <m.othacehe@gmail.com>
Cc: guix-devel@gnu.org
Subject: Re: guix system vm-image --target=i586-pc-gnu Hurd'le
Date: Mon, 04 May 2020 18:32:11 +0200 [thread overview]
Message-ID: <87ftcfiruc.fsf@gnu.org> (raw)
In-Reply-To: <87o8r3wwfy.fsf@gmail.com> (Mathieu Othacehe's message of "Mon, 04 May 2020 17:29:05 +0200")
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=device:hd0s1
>> module ~a/hurd/ext2fs.static ext2fs \\
>> --multiboot-command-line='${kernel-command-line}' \\
>> --host-priv-port='${host-port}' \\
>> --device-master-port='${device-port}' \\
>> --exec-server-task='${exec-task}' -T typed '${root}' \\
>> '$(task-create)' '$(task-resume)'
>> module ~a/lib/ld.so.1 exec ~a/hurd/exec '$(exec-task=task-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 <menu-entry>...make a hurd variant, or add
hurd'ish fields.
Greetings,
janneke
--
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com
prev parent reply other threads:[~2020-05-04 16:48 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-04 13:02 guix system vm-image --target=i586-pc-gnu Hurd'le Jan Nieuwenhuizen
2020-05-04 15:29 ` Mathieu Othacehe
2020-05-04 16:32 ` Jan Nieuwenhuizen [this message]
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=87ftcfiruc.fsf@gnu.org \
--to=janneke@gnu.org \
--cc=guix-devel@gnu.org \
--cc=m.othacehe@gmail.com \
/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).