Subject: Re: bug#21068: guix system: error: build failed: path `/gnu/store/..-grub.cfg' is not valid

From: Alex Kost <[email-masked]>
Date: Mon, 27 Jul 2015 11:18:49 +0300

Germano Gabbianelli (2015-07-26 16:25 +0300) wrote:

> On 16/07/15 15:37, Ludovic Courtès wrote:
>> This could be due to how you fiddled manually with /gnu/store and
>> /var/guix.  In general, one should never manually touch these
>> directories; instead, one should use ‘guix gc’ and similar commands.
> I did not fiddle with those directory. I only removed them to reinstall
> guix.
>>> I also trying reinstalling guix by deleting /gnu, /var/guix, and
>>> /var/log/guix (and also wiping the partition with rm)
>> To be safe, could you start anew again, and report back?
>>
>>    sudo rm -rf /gnu /var/guix
>>    # reinstall from binary tarball
> I did it, for the third time. I always get the same error:
>
> guix system: error: build failed: path
> `/gnu/store/kv217jzyir2wx0lwwxl7ljpwc4fzafpi-grub.cfg' is not valid
>
> This time I used guix 0.8.3.
>
>>>    (bootloader (grub-configuration (device "/dev/sda9")))
>> There’s a mistake here: it should be “/dev/sda” (say), not “/dev/sda9”
>> (the latter designates a partition, whereas the former designates a
>> disk.)  It doesn’t matter here since you passed --no-grub, but it would
>> otherwise lead to a ‘grub-install’ failure.
> I tried removing that line, but if I do I get an error saying "missing
> field initializers (bootloader)".
> So I also tried to specify a non existent disk (i.e. /dev/sdb), so it
> does not complain about the bootloader options, but I still get the
> "path 'grub.cfg' is not valid" error.

I have just built your config.scm successfully.  (I'm not suru but) it
looks like you either have a broken store or some stale files in the
partition you want to initialize the system to.

Could you try the following from your Lubuntu (without 'sudo'):

  guix pull
  guix system build --no-grub /path/to/your/config.scm

If the system has been built successfully (it definitely should), make
sure your partition is absolutely empty (!) and init the system there:

  sudo -E guix system init --no-grub /path/to/your/config.scm <mount-point>

-- 
Alex