Subject: bug#28445: match-error in 'device-sexp->device' while building system

From: Mark H Weaver <[email-masked]>
Date: Wed, 13 Sep 2017 17:24:25 -0400

Hi Marius,

Marius Bakke <[email-masked]> writes:

> I have an identical setup, and the problem is that the parameters file
> contains "(store (device #f))".  You can confirm this by `cat
> /var/guix/profiles/system-9-link/parameters`.

Indeed, I discovered that as well.

> This patch fixes the parameters generation, but you have to move away
> the profile symlinks that contains the broken parameters file before you
> can use `guix system` again).
>
> From 5ca849b84c02f5d213b40c654f1449e19adb5471 Mon Sep 17 00:00:00 2001
> From: Marius Bakke <[email-masked]>
> Date: Tue, 12 Sep 2017 21:03:36 +0200
> Subject: [PATCH] system: Recognize device titles when creating boot
>  parameters.

Thanks very much for this, but I think we should find a solution that
doesn't involve discarding all existing system generations.  The problem
is, we would have to take a leap of faith that the newly generated
system will work.  We should not ask users with similar setups to take
that leap of faith and possibly end up with an unbootable system in need
of rescue.  Guix is supposed to prevent this situation from happening.

At least for some transition period, it would be good to find a way to
cope with (store (device #f)) in some older system generations.

What do you think?

      Mark