unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Jan Nieuwenhuizen <janneke@gnu.org>
To: Mathieu Othacehe <othacehe@gnu.org>
Cc: "Ludovic Courtès" <ludo@gnu.org>, 41785@debbugs.gnu.org
Subject: [bug#41785] [PATCH] DRAFT services: Add 'hurd-in-vm service-type'.
Date: Fri, 12 Jun 2020 23:33:38 +0200	[thread overview]
Message-ID: <87eeqknf4d.fsf@gnu.org> (raw)
In-Reply-To: <873670l3z9.fsf@gnu.org> (Mathieu Othacehe's message of "Fri, 12 Jun 2020 17:04:58 +0200")

Mathieu Othacehe writes:

Hello Mathieu,

>> +  (let ((target (%current-target-system)))
>> +    (match file-system-type
>> +      ("iso9660" iso9660-image)
>> +      (_ (cond
>> +          ((and target
>> +                (hurd-triplet? target))
>> +           hurd-disk-image)
>> +          (else
>> +           efi-disk-image))))))
>
> I think it would be safe to pass a "target" argument. Then the two
> actual callers could pass (current-target-system) as target
> argument. This is guaranteed to return a correct value, whereas
> %current-target-system is not here.

Okay, sure.  I've made that change for now.

>> +@lisp
>> +(service hurd-vm-service-type
>> +         (hurd-vm-configuration
>> +          (disk-size (* 5000 (expt 2 20))) ;5G
>> +          (memory-size 1024)))             ;1024MiB
>
> That's really nice! We could really use a (guix units) module or so
> where we would put those definitions: "(define MiB (expt 2 20))". Then
> we could use:
>
> (service hurd-vm-service-type
>          (hurd-vm-configuration
>           (disk-size (* 5 GiB)
>           (memory-size (* 1024 MiB)))

I like it!

> Well, this is really not a blocking thing.

>> +(define* (disk-image os #:key (image-size 'guess) target)
>> +  "Return a disk-image for OS with size IMAGE-SIZE, built for TARGET."
>> +  (let ((base-image (find-image "ext2")))
>> +    (system-image
>> +     (image (inherit base-image)
>> +            (size image-size)
>> +            (operating-system
>> +              (with-parameters ((%current-target-system target))
>> +                os))))))
>
> Yeah then again, I think it would be nice to use something like the
> "hurd-disk-image" as I proposed here:
> https://lists.gnu.org/archive/html/guix-devel/2020-05/msg00417.html.
>
> This way, no need to call "find-image". You could just write:
>
> (define (image os #:key (image-size 'guess))
>   (image
>    (inherit hurd-disk-image)
>    (size image-size)
>    (operating-system os)))

Oh yes...that's great.  It seems that until we have that, as Ludo
suggested with this:

--8<---------------cut here---------------start------------->8---
    (with-parameters ((%current-target-system target))
      (system-image
       (image (inherit base-image)
              (size disk-size)
              (operating-system os))))))
--8<---------------cut here---------------end--------------->8---

we have now something "that works" for the Hurd.

>> +  (image       hurd-vm-configuration-image              ;string
>> +               (thunked)
>
> Then the thunked field wouldn't be required.
>
> Mostly comments related to the fact that (gnu image) needs some
> polishing, your patches are really nice here :)

Thank you.  I'll be working to prepare a v3 series that works on master
right now; then we can see how to proceed.

Thanks!
Janneke

-- 
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com




  reply	other threads:[~2020-06-12 21:34 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-10  8:54 [bug#41785] [PATCH] DRAFT services: Add 'hurd-in-vm service-type' Jan (janneke) Nieuwenhuizen
2020-06-10 11:34 ` Mathieu Othacehe
2020-06-11 19:43   ` Ludovic Courtès
2020-06-11 19:59     ` Jan Nieuwenhuizen
2020-06-11 20:01   ` Marius Bakke
2020-06-12  6:39     ` Jan Nieuwenhuizen
2020-06-12 10:51       ` Diego Nicola Barbato
2020-06-13  7:30         ` Jan Nieuwenhuizen
2020-06-11 19:59 ` Ludovic Courtès
2020-06-11 21:57   ` Jan Nieuwenhuizen
2020-06-12  6:46     ` Jan Nieuwenhuizen
2020-06-12 14:45     ` Ludovic Courtès
2020-06-12 21:33       ` Jan Nieuwenhuizen
2020-06-12 15:04     ` Mathieu Othacehe
2020-06-12 21:33       ` Jan Nieuwenhuizen [this message]
2020-06-14 12:10         ` [bug#41785] [PATCH v4] " Jan Nieuwenhuizen
2020-06-14 12:44           ` Mathieu Othacehe
2020-06-14 13:18             ` Jan Nieuwenhuizen
2020-06-14 15:52               ` Mathieu Othacehe
2020-06-14 16:22                 ` Mathieu Othacehe
2020-06-14 16:42                 ` bug#41785: " Jan Nieuwenhuizen
2020-06-12 14:42   ` [bug#41785] [PATCH] DRAFT " Mathieu Othacehe
2020-06-12 15:39     ` Ludovic Courtès
2020-06-12 21:42 ` [bug#41785] [PATCH v3 1/2] image: Make 'find-image' non-monadic Jan (janneke) Nieuwenhuizen
2020-06-12 21:42   ` [bug#41785] [PATCH v3 2/2] services: Add 'hurd-vm service-type' Jan (janneke) Nieuwenhuizen
2020-06-13 12:49     ` Mathieu Othacehe
2020-06-13 13:10       ` Jan Nieuwenhuizen
2020-06-13 14:35       ` Ludovic Courtès
2020-06-13 15:01         ` Mathieu Othacehe
2020-06-13 10:56   ` [bug#41785] [PATCH v3 1/2] image: Make 'find-image' non-monadic Mathieu Othacehe
2020-06-13 13:05     ` Jan Nieuwenhuizen
2020-06-14 12:37       ` Mathieu Othacehe
2020-06-14 13:12         ` Jan Nieuwenhuizen
2020-06-14 13:32           ` Jan Nieuwenhuizen
2020-06-14 15:44             ` Mathieu Othacehe

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=87eeqknf4d.fsf@gnu.org \
    --to=janneke@gnu.org \
    --cc=41785@debbugs.gnu.org \
    --cc=ludo@gnu.org \
    --cc=othacehe@gnu.org \
    /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).