Subject: bug#55549: Parted 3.5 update breaks installer tests

From: Ludovic Courtès <[email-masked]>
Date: Sun, 22 May 2022 22:05:44 +0200

Hi!

Ludovic Courtès <[email-masked]> skribis:

> The ‘gui-installed-os’ broke:
>
>   https://ci.guix.gnu.org/search?query=gui-installed-os%20system:x86_64-linux&border-high-id=803430
>
> … between:
>
>   https://ci.guix.gnu.org/eval/304279 (commit 1ebc27475cc310d6f9dd154b6b6893918f604c09)
>   and
>   https://ci.guix.gnu.org/eval/313358 (commit a1cb645d83d085382eaf64f4c097642aa47c297a)
>
> The symptoms are:
>
> May 12 16:57:17 localhost installer[230]: guix system: error: '/gnu/store/vcljh4z0zkwplsx3b131vzc894rb3vll-grub-2.06/sbin/grub-install --no-floppy --target=i386-pc --boot-directory /mnt/boot /dev/vda' exited with status 1; output follows:
> May 12 16:57:17 localhost installer[230]:  
> May 12 16:57:17 localhost installer[230]:   Installing for i386-pc platform. 
> May 12 16:57:17 localhost installer[230]:   /gnu/store/vcljh4z0zkwplsx3b131vzc894rb3vll-grub-2.06/sbin/grub-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won't be possible. 
> May 12 16:57:17 localhost installer[230]:   /gnu/store/vcljh4z0zkwplsx3b131vzc894rb3vll-grub-2.06/sbin/grub-install: warning: Embedding is not possible.  GRUB can only be installed in this setup by using blocklists.  However, blocklists are UNRELIABLE and their use is discouraged.. 
> May 12 16:57:17 localhost installer[230]:   /gnu/store/vcljh4z0zkwplsx3b131vzc894rb3vll-grub-2.06/sbin/grub-install: error: will not proceed with blocklists. 
> May 12 16:57:17 localhost installer[230]:  
> May 12 16:57:17 localhost installer[230]: command ("guix" "system" "init" "--fallback" "--no-grafts" "--no-substitutes" "/mnt/etc/config.scm" "/mnt") exited with value 1 
> conversation expecting pattern ((quote installation-complete))
> May 12 16:57:17 localhost shepherd[1]: Service guix-daemon has been stopped. 
> May 12 16:57:17 localhost shepherd[1]: Service guix-daemon has been started. 
> May 12 16:57:17 localhost installer[196]: unmounting "/mnt/" 
> /gnu/store/vfizn85zmzfs4k8wd1mviwrhjqc5zmac-shepherd-marionette.scm:1:1718: ERROR:
>   1. &pattern-not-matched:
>       pattern: ((quote installation-complete))
>       sexp: (installation-failure)

Commit 81f7bb1691dc9dc69fc6e584ad8c6e36e495c103 works around it
“locally”.  It’s good enough for now, but we should eventually address
the root cause.

Mathieu, I’m guessing the cause of the problem, when using Parted 4.5,
is that the installer partitions disks somewhat incorrectly, as reported
by ‘grub-install’.  I wonder if it might be due to an API or ABI change
that goes unnoticed in Guile-Parted because it uses the FFI.

Thoughts?

Ludo’.