unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: Tobias Geerinckx-Rice <me@tobias.gr>
To: 27735@debbugs.gnu.org
Subject: bug#27735: Unbootable images with GuixSD on... "GuixSD"
Date: Mon, 17 Jul 2017 16:40:56 +0200	[thread overview]
Message-ID: <327af9f3-fdfb-7916-f0ea-9aec0fae20f3@tobias.gr> (raw)


[-- Attachment #1.1: Type: text/plain, Size: 2287 bytes --]

Guix,

[I lost most hours of sleep to this. I might ramble more than usual.]

The default label for images was recently changed[1] to "GuixSD".
While I think it's a fine label, that's also a problem: I've been using
it for years for my root partitions. And when one broke last night, I
couldn't use the GuixSD installer to rescue it.

The installer's now expects exactly one "GuixSD" partition when booting
— at least on UEFI. If the GRUB finds two, the GRUB will randomly
choose. In my case, the GRUB chose a frozen system.

(With a black screen that made debugging hell, but that's probably an
unrelated effect of the roughness of our UEFI support.)

The real problem here is that we're using a label as a UUID.
From gnu/build/vm.scm:

        ;; Create a tiny configuration file telling the embedded grub
        ;; where to load the real thing.
        (call-with-output-file grub-config
          (lambda (port)
            (format port
                    "insmod part_msdos~@
                    search --set=root --label GuixSD~@
                    configfile /boot/grub/grub.cfg~%")))

I'm not the first to think so, as noted in gnu/system/vm.scm:

  (define root-label
    ;; Volume name of the root file system.  Since we don't know which
device
    ;; will hold it, we use the volume name to find it (using the UUID would
    ;; be even better, but somewhat less convenient.)
    (normalize-label "GuixSD"))

I like that understatement. I'm not sure how to go about creating a
reproducible almost-UUID based on the store hash and passing it to all
the right places in a reasonably non-horrible manner either, random
hacker. And it would mean even more work and testing after all the
heroic effort on the new installer image + UEFI support by Danny,
Marius, and others.

Until it does happen, I suggest we change the name to "GuixSD-image"[2].
Still fragile, but not the PR fail that ‘don't call your GuixSD file
system GuixSD or it will break GuixSD’ would be.

Zzz,

T G-R

[1]:
https://git.savannah.gnu.org/cgit/guix.git/commit/?id=651de2bdb5fd451c50933dcf8d647d470d826261
[2]: Or whatever. I remember someone (Danny?) calling "-image" an
implementation detail. I think it's a description of the end result.


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 504 bytes --]

             reply	other threads:[~2017-07-17 14:48 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-17 14:40 Tobias Geerinckx-Rice [this message]
2017-07-17 14:51 ` bug#27735: [PATCH 1/2] build, vm: Use a slightly less generic label Tobias Geerinckx-Rice
2017-07-17 17:20   ` Danny Milosavljevic
2017-07-17 17:58     ` Tobias Geerinckx-Rice
2017-07-18 10:09     ` Ludovic Courtès
2017-07-18 12:30       ` Tobias Geerinckx-Rice
2017-07-18 13:48         ` Danny Milosavljevic
2017-07-17 17:17 ` bug#27735: Unbootable images with GuixSD on... "GuixSD" Danny Milosavljevic
2017-07-17 18:12   ` Tobias Geerinckx-Rice
2017-07-17 18:37     ` Tobias Geerinckx-Rice
2017-07-18 11:49   ` Ludovic Courtès
2017-07-18 15:09     ` Tobias Geerinckx-Rice
2017-07-18 18:59       ` Ludovic Courtès
2017-07-18 20:42         ` Tobias Geerinckx-Rice
2017-07-19 19:11     ` Danny Milosavljevic
2017-07-19 22:32       ` bug#27735: Lookup by UUID Ludovic Courtès
2017-07-20 17:38         ` Danny Milosavljevic
2017-07-20 20:32           ` Ludovic Courtès
2017-07-20 21:51             ` Danny Milosavljevic
2017-08-05 17:50             ` Danny Milosavljevic

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

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=327af9f3-fdfb-7916-f0ea-9aec0fae20f3@tobias.gr \
    --to=me@tobias.gr \
    --cc=27735@debbugs.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 public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).