unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
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


      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).