From: Jan Nieuwenhuizen <janneke@gnu.org>
To: Mathieu Othacehe <othacehe@gnu.org>
Cc: "Ludovic Courtès" <ludo@gnu.org>, 41350@debbugs.gnu.org
Subject: [bug#41350] [PATCH v2 3/3] system: vm: Build vm-image using native qemu, for the Hurd.
Date: Mon, 25 May 2020 17:46:26 +0200 [thread overview]
Message-ID: <87d06sc90t.fsf@gnu.org> (raw)
In-Reply-To: <874ks52n3o.fsf@gnu.org> (Jan Nieuwenhuizen's message of "Sun, 24 May 2020 20:40:11 +0200")
Jan Nieuwenhuizen writes:
Hello Mathieu, Ludo',
>>> The most interesting differences I see are wrt Grub, e.g.
>>>
>>> -/mnt/boot/grub/fonts
>>> -/mnt/boot/grub/fonts/unicode.pf2
>>>
>>> could that still play a role? I'm having a look why this could be missing.
>>
>> It's because I just copy "lib/grub" folder in (gnu bootloader grub). I
>> should also do that for the fonts I guess. But I doubt the issue comes
>> from here.
>
> Meanwhile I tried adding that by hand; indeed that's not it.
As discussed on IRC (thanks!!), I bisected it down to a problem with the
file /servers/exec. I suspected translator magic...but luckily Ludo
insisted he thinks that /servers/exec only needs to exist.
So, using current wip-hurd-vm, I tried this script:
--8<---------------cut here---------------start------------->8---
set -ex
cp -f $(./pre-inst-env guix system disk-image --no-grafts --target=i586-pc-gnu gnu/system/examples/bare-hurd.tmpl) /tmp/disk-image.img
sudo losetup -P /dev/loop0 /tmp/disk-image.img
sudo mount /dev/loop0p1 /mnt
ls -l /mnt/servers/exec
sudo rm -f /mnt/servers/exec
sudo touch /mnt/servers/exec
ls -l /mnt/servers/exec
sudo umount /mnt
sudo losetup -d /dev/loop0
--8<---------------cut here---------------end--------------->8---
...which indeed produces a working VM!
Turns out that creating /servers/exec in the store gets
hard-linked/deduplicated or something...look:
--8<---------------cut here---------------start------------->8---
+ ls -l /mnt/servers/exec
-r--r--r-- 17 root root 0 Jan 1 1970 /mnt/servers/exec
+ sudo rm -f /mnt/servers/exec
+ sudo touch /mnt/servers/exec
+ ls -l /mnt/servers/exec
-rw-r--r-- 1 root root 0 May 25 17:16 /mnt/servers/exec
--8<---------------cut here---------------end--------------->8---
The "fix" is just going from 17 to 1 link. Doh'
So, another "fix" is the diff below but I did not want to commit and
push that yet. Can we prevent creation of hard links in another way?
Greetings,
Janneke
$ git diff
diff --git a/gnu/build/linux-boot.scm b/gnu/build/linux-boot.scm
index 7dd509d0d9..dfad83aa05 100644
--- a/gnu/build/linux-boot.scm
+++ b/gnu/build/linux-boot.scm
@@ -337,6 +337,7 @@ one specific hardware device. These we have to create."
(for-each (lambda (file)
(call-with-output-file (scope file)
(lambda (port)
+ (display file port) ;hack to avoid hard-linking
(chmod port #o666))))
'("dev/null"
"dev/zero"
@@ -350,6 +351,7 @@ one specific hardware device. These we have to create."
(for-each (lambda (file)
(call-with-output-file (scope (string-append "servers/" file))
(lambda (port)
+ (display file port) ;hack to avoid hard-linking
(chmod port #o444))))
'("startup"
"exec"
--
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-25 15:58 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-17 10:01 [bug#41350] [PATCH 0/3] Use native qemu to build vm-image Jan Nieuwenhuizen
2020-05-17 10:03 ` [bug#41350] [PATCH 1/3] utils: Move 'reset-timestamps' out of database Jan (janneke) Nieuwenhuizen
2020-05-17 10:03 ` [bug#41350] [PATCH 2/3] system: vm: Do not register-closures when cross-building Jan (janneke) Nieuwenhuizen
2020-05-17 10:03 ` [bug#41350] [PATCH 3/3] system: vm: Build vm-image using native qemu Jan (janneke) Nieuwenhuizen
2020-05-18 9:10 ` [bug#41350] [PATCH 0/3] Use native qemu to build vm-image Mathieu Othacehe
2020-05-19 7:22 ` Jan Nieuwenhuizen
2020-05-19 10:02 ` Mathieu Othacehe
2020-05-20 14:03 ` Mathieu Othacehe
2020-05-20 15:09 ` Jan Nieuwenhuizen
2020-05-19 7:23 ` [bug#41350] [PATCH v2 1/3] utils: Move 'reset-timestamps' out of database Jan (janneke) Nieuwenhuizen
2020-05-19 7:23 ` [bug#41350] [PATCH v2 2/3] system: vm: Do not register-closures when cross-building to the Hurd Jan (janneke) Nieuwenhuizen
2020-05-19 7:23 ` [bug#41350] [PATCH v2 3/3] system: vm: Build vm-image using native qemu, for " Jan (janneke) Nieuwenhuizen
2020-05-19 9:14 ` Mathieu Othacehe
2020-05-20 21:49 ` Ludovic Courtès
2020-05-23 9:28 ` Jan Nieuwenhuizen
2020-05-23 17:45 ` Mathieu Othacehe
2020-05-23 19:07 ` Jan Nieuwenhuizen
2020-05-24 9:18 ` Mathieu Othacehe
2020-05-27 9:30 ` Ludovic Courtès
2020-05-28 7:00 ` Mathieu Othacehe
2020-05-24 11:19 ` Jan Nieuwenhuizen
2020-05-24 12:07 ` Mathieu Othacehe
2020-05-24 14:20 ` Jan Nieuwenhuizen
2020-05-24 16:36 ` Ludovic Courtès
2020-05-20 21:58 ` Ludovic Courtès
2020-05-22 19:24 ` Mathieu Othacehe
2020-05-27 22:54 ` Ludovic Courtès
2020-05-28 6:36 ` Mathieu Othacehe
2020-05-28 12:29 ` Jan Nieuwenhuizen
2020-05-28 15:39 ` Ludovic Courtès
2020-05-28 17:07 ` Jan Nieuwenhuizen
2020-05-28 17:10 ` Mathieu Othacehe
2020-05-28 18:19 ` Jan Nieuwenhuizen
2020-05-29 8:18 ` Ludovic Courtès
2020-05-29 9:06 ` Jan Nieuwenhuizen
2020-05-30 10:08 ` Jan Nieuwenhuizen
2020-05-30 13:54 ` Ludovic Courtès
2022-09-28 20:18 ` [bug#41350] [PATCH 0/3] Use native qemu to build vm-image Maxim Cournoyer
2022-09-29 14:17 ` bug#41350: " Mathieu Othacehe
2020-05-23 9:30 ` [bug#41350] [PATCH v3 1/3] utils: Move 'reset-timestamps' out of database Jan (janneke) Nieuwenhuizen
2020-05-23 9:30 ` [bug#41350] [PATCH v3 2/3] system: vm: Do not register-closures when cross-building to the Hurd Jan (janneke) Nieuwenhuizen
2020-05-27 8:45 ` Ludovic Courtès
2020-05-27 9:13 ` Jan Nieuwenhuizen
2020-05-23 9:30 ` [bug#41350] [PATCH v3 3/3] system: vm: Build vm-image using native qemu, for " Jan (janneke) Nieuwenhuizen
2020-05-27 8:43 ` [bug#41350] [PATCH v3 1/3] utils: Move 'reset-timestamps' out of database Ludovic Courtès
2020-05-27 8:59 ` Ludovic Courtès
2020-05-27 9:10 ` Jan Nieuwenhuizen
2020-05-24 18:11 ` [bug#41350] [PATCH v2 3/3] system: vm: Build vm-image using native qemu, for the Hurd Mathieu Othacehe
2020-05-24 18:40 ` Jan Nieuwenhuizen
2020-05-25 15:46 ` 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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87d06sc90t.fsf@gnu.org \
--to=janneke@gnu.org \
--cc=41350@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 external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.