GNU bug report logs - #50676
[core-updates-frozen] Image production is broken.

Previous Next

Package: guix;

Reported by: Mathieu Othacehe <othacehe <at> gnu.org>

Date: Sun, 19 Sep 2021 15:10:01 UTC

Severity: important

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 50676 in the body.
You can then email your comments to 50676 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#50676; Package guix. (Sun, 19 Sep 2021 15:10:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Mathieu Othacehe <othacehe <at> gnu.org>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Sun, 19 Sep 2021 15:10:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Mathieu Othacehe <othacehe <at> gnu.org>
To: bug-guix <at> gnu.org
Subject: [core-updates-frozen] Image production is broken.
Date: Sun, 19 Sep 2021 15:09:41 +0000
Hello,

When a producing a disk-image, the system derivations are built twice:

--8<---------------cut here---------------start------------->8---
building /gnu/store/8w9ic3h26w6rp4pj94gd93lw2bnqywgm-system.drv...
successfully built /gnu/store/8w9ic3h26w6rp4pj94gd93lw2bnqywgm-system.drv
building /gnu/store/bxh7s2lwl82d3lwd59swkf243h17gyg1-system.drv...
successfully built /gnu/store/bxh7s2lwl82d3lwd59swkf243h17gyg1-system.drv
building /gnu/store/81wqilcd9g8c0yh6xj7chbla9agz06d9-grub.cfg.drv...
successfully built /gnu/store/81wqilcd9g8c0yh6xj7chbla9agz06d9-grub.cfg.drv
building /gnu/store/m87i36kdb09vig99q3mj24f30i1h8bjf-grub.cfg.drv...
successfully built /gnu/store/m87i36kdb09vig99q3mj24f30i1h8bjf-grub.cfg.drv
building /gnu/store/ngdkc4dhaf9qhry71dmcp1dj7rvnaqiy-partition.img.drv...
--8<---------------cut here---------------end--------------->8---

The installed Grub configuration file in /boot/grub/grub.cfg points to a
system that is *not* part of the closure. The second Grub configuration
file shown above points to the other system that *is* part of the
closure.

While booting the image in QEMU, the boot fails when trying to access
the missing /gnu/system/xxx-system/boot file.

Thanks,

Mathieu




Severity set to 'important' from 'normal' Request was from Ludovic Courtès <ludo <at> gnu.org> to control <at> debbugs.gnu.org. (Sun, 19 Sep 2021 21:04:01 GMT) Full text and rfc822 format available.

Information forwarded to bug-guix <at> gnu.org:
bug#50676; Package guix. (Sun, 19 Sep 2021 22:38:01 GMT) Full text and rfc822 format available.

Message #10 received at 50676 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Mathieu Othacehe <othacehe <at> gnu.org>
Cc: 50676 <at> debbugs.gnu.org
Subject: Re: bug#50676: [core-updates-frozen] Image production is broken.
Date: Mon, 20 Sep 2021 00:37:37 +0200
Hi,

Mathieu Othacehe <othacehe <at> gnu.org> skribis:

> When a producing a disk-image, the system derivations are built twice:

What command did you use?

I tried:

  ./pre-inst-env guix system image -t qcow2 gnu/system/examples/bare-bones.tmpl

Running:

  qemu-system-x86_64 -m 1024 -enable-kvm -snapshot /gnu/store/…-image.qcow2

drops me in the GRUB rescue shell right from the start, but I think
that’s because the command surprisingly builds an EFI image, as can be
seen from the generated genimage.cfg:

--8<---------------cut here---------------start------------->8---
image image {
	hdimage {}
	partition GNU-ESP {
		partition-type = 0xEF
		image = "/gnu/store/zfia31ypdlcx5d7sxhwmh4d8jsq33cqb-partition.img"
		offset = "1048576"
	}
	partition Guix_image {
		partition-type = 0x83
		image = "/gnu/store/8v4m9cqrgvmp3akajv2pk1pvcdrswx2g-partition.img"
		offset = "0"
	}
}
--8<---------------cut here---------------end--------------->8---

> The installed Grub configuration file in /boot/grub/grub.cfg points to a
> system that is *not* part of the closure. The second Grub configuration
> file shown above points to the other system that *is* part of the
> closure.
>
> While booting the image in QEMU, the boot fails when trying to access
> the missing /gnu/system/xxx-system/boot file.

Uh.

Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#50676; Package guix. (Mon, 20 Sep 2021 08:58:01 GMT) Full text and rfc822 format available.

Message #13 received at 50676 <at> debbugs.gnu.org (full text, mbox):

From: Mathieu Othacehe <othacehe <at> gnu.org>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 50676 <at> debbugs.gnu.org
Subject: Re: bug#50676: [core-updates-frozen] Image production is broken.
Date: Mon, 20 Sep 2021 08:57:39 +0000
Hey Ludo!

> What command did you use?

The same one as you :)

> drops me in the GRUB rescue shell right from the start, but I think
> that’s because the command surprisingly builds an EFI image, as can be
> seen from the generated genimage.cfg:

Yep, that would be because of the Grub stripping issue. Regarding the
EFI, both the qcow2 and the efi-raw image types produce "hybrid" images
that have "grub" installed in the MBR-gap and "grub-efi" in the ESP
partition. This way, those images can be used both on legacy BIOS based
machines as well as on more modern UEFI machines.

Now the image types names can be confusing, and we could rename efi-raw
and qcow2 to pc-hybrid-raw and pc-hybrid-qcow2 respectively.

WDYT?

Thanks,

Mathieu




Information forwarded to bug-guix <at> gnu.org:
bug#50676; Package guix. (Mon, 20 Sep 2021 12:54:01 GMT) Full text and rfc822 format available.

Message #16 received at 50676 <at> debbugs.gnu.org (full text, mbox):

From: Mathieu Othacehe <othacehe <at> gnu.org>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 50676 <at> debbugs.gnu.org
Subject: Re: bug#50676: [core-updates-frozen] Image production is broken.
Date: Mon, 20 Sep 2021 12:52:59 +0000
Hey,

The duplicated system derivation appears to be a grafted version of
the first one.

Running:

--8<---------------cut here---------------start------------->8---
./pre-inst-env guix system image gnu/system/examples/bare-bones.tmpl -t qcow2 --no-grafts
--8<---------------cut here---------------end--------------->8---

produces an image that boots fine in QEMU.

Mathieu




Information forwarded to bug-guix <at> gnu.org:
bug#50676; Package guix. (Wed, 22 Sep 2021 10:38:02 GMT) Full text and rfc822 format available.

Message #19 received at 50676 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Mathieu Othacehe <othacehe <at> gnu.org>
Cc: 50676 <at> debbugs.gnu.org
Subject: Re: bug#50676: [core-updates-frozen] Image production is broken.
Date: Wed, 22 Sep 2021 12:37:00 +0200
Howdy!

Mathieu Othacehe <othacehe <at> gnu.org> skribis:

>> drops me in the GRUB rescue shell right from the start, but I think
>> that’s because the command surprisingly builds an EFI image, as can be
>> seen from the generated genimage.cfg:
>
> Yep, that would be because of the Grub stripping issue. Regarding the
> EFI, both the qcow2 and the efi-raw image types produce "hybrid" images
> that have "grub" installed in the MBR-gap and "grub-efi" in the ESP
> partition. This way, those images can be used both on legacy BIOS based
> machines as well as on more modern UEFI machines.

Oh I hadn’t realized there was this fancy hybridation thing.

> Now the image types names can be confusing, and we could rename efi-raw
> and qcow2 to pc-hybrid-raw and pc-hybrid-qcow2 respectively.

OTOH the beauty of those hybrid images is precisely that one doesn’t
need to know that it’s hybrid.  Dunno, no strong opinion!

Thanks for explaining,
Ludo’.




Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Fri, 24 Sep 2021 22:57:02 GMT) Full text and rfc822 format available.

Notification sent to Mathieu Othacehe <othacehe <at> gnu.org>:
bug acknowledged by developer. (Fri, 24 Sep 2021 22:57:02 GMT) Full text and rfc822 format available.

Message #24 received at 50676-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Mathieu Othacehe <othacehe <at> gnu.org>
Cc: 50676-done <at> debbugs.gnu.org
Subject: Re: bug#50676: [core-updates-frozen] Image production is broken.
Date: Sat, 25 Sep 2021 00:55:53 +0200
Hi,

Mathieu Othacehe <othacehe <at> gnu.org> skribis:

> When a producing a disk-image, the system derivations are built twice:
>
> building /gnu/store/8w9ic3h26w6rp4pj94gd93lw2bnqywgm-system.drv...
> successfully built /gnu/store/8w9ic3h26w6rp4pj94gd93lw2bnqywgm-system.drv
> building /gnu/store/bxh7s2lwl82d3lwd59swkf243h17gyg1-system.drv...
> successfully built /gnu/store/bxh7s2lwl82d3lwd59swkf243h17gyg1-system.drv
> building /gnu/store/81wqilcd9g8c0yh6xj7chbla9agz06d9-grub.cfg.drv...
> successfully built /gnu/store/81wqilcd9g8c0yh6xj7chbla9agz06d9-grub.cfg.drv
> building /gnu/store/m87i36kdb09vig99q3mj24f30i1h8bjf-grub.cfg.drv...
> successfully built /gnu/store/m87i36kdb09vig99q3mj24f30i1h8bjf-grub.cfg.drv
> building /gnu/store/ngdkc4dhaf9qhry71dmcp1dj7rvnaqiy-partition.img.drv...
>
> The installed Grub configuration file in /boot/grub/grub.cfg points to a
> system that is *not* part of the closure. The second Grub configuration
> file shown above points to the other system that *is* part of the
> closure.
>
> While booting the image in QEMU, the boot fails when trying to access
> the missing /gnu/system/xxx-system/boot file.

This should be fixed by df46bef48eaa43c502fa9193371692c039b460c1, whose
log contains all the gory details.  :-)

This should allow us to move forward with system testing on the branch!

Thanks,
Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#50676; Package guix. (Sun, 26 Sep 2021 19:41:01 GMT) Full text and rfc822 format available.

Message #27 received at 50676-done <at> debbugs.gnu.org (full text, mbox):

From: Mathieu Othacehe <othacehe <at> gnu.org>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 50676-done <at> debbugs.gnu.org
Subject: Re: bug#50676: [core-updates-frozen] Image production is broken.
Date: Sun, 26 Sep 2021 19:40:12 +0000
Hey!

> This should be fixed by df46bef48eaa43c502fa9193371692c039b460c1, whose
> log contains all the gory details.  :-)

Wooo, thanks for fixing that :) I gave it a try but this is still a part
of the code base I'm not familiar with.

> This should allow us to move forward with system testing on the branch!

I created a "tests-core-updates-frozen" specification on Cuirass for
that purpose. Looks like there's something broken in (gnu ci) though.

Thanks,

Mathieu




Information forwarded to bug-guix <at> gnu.org:
bug#50676; Package guix. (Mon, 27 Sep 2021 15:58:01 GMT) Full text and rfc822 format available.

Message #30 received at 50676-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Mathieu Othacehe <othacehe <at> gnu.org>
Cc: 50676-done <at> debbugs.gnu.org
Subject: Re: bug#50676: [core-updates-frozen] Image production is broken.
Date: Mon, 27 Sep 2021 17:57:11 +0200
Hi,

Mathieu Othacehe <othacehe <at> gnu.org> skribis:

>> This should allow us to move forward with system testing on the branch!
>
> I created a "tests-core-updates-frozen" specification on Cuirass for
> that purpose. Looks like there's something broken in (gnu ci) though.

Just fixed as 7c5f01d55634254bea8bad4c9dcc31496efd4fce!

Ludo’.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 26 Oct 2021 11:24:10 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 194 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.