Subject: bug#69319: Unbootable, unfixable system

From: Nathan Dehnel <[email-masked]>
Date: Fri, 23 Feb 2024 11:17:04 -0600

It seems I may have fallen for the grub luks2 compatibility issue,
which I didn't know about. I will investigate later.

On Fri, Feb 23, 2024 at 1:15 AM Nathan Dehnel <[email-masked]> wrote:
>
> This config results in grub rescue "unknown filesystem <uuid of my
> btrfs rootfs>" when I try to boot it. I have verified that all the
> device uuids are correct, and the bootloader, mapped-devices, and
> file-systems sections are identical in form to my other system which
> boots fine. i can mount the boot partition and unlock and mount the
> root partition manually, so they're not broken. I have no idea why
> it's not working. My guess is that reconfigure is broken inside a
> chroot somehow.
>
> (use-modules (gnu))
> (use-service-modules networking ssh sysctl shepherd base)
> (use-package-modules vpn linux)
> (use-modules (nongnu packages linux)
>             (nongnu system linux-initrd)
>             (gnu services)
>             (guix packages)
>             (gooby-channel packages baksnapper))
> (define bashrc
>    (local-file "../bashrc"))
> (define nanorc
>    (local-file "../nano/nanorc"))
> (operating-system
> (kernel linux)
>  (initrd microcode-initrd)
>  (firmware (list linux-firmware))
>  (locale "en_US.utf8")
>  (timezone "America/Chicago")
>  (keyboard-layout (keyboard-layout "us"))
>  (host-name "guixoffline")
>  (bootloader
>    (bootloader-configuration
>      (bootloader grub-efi-bootloader)
>        (targets '("/boot/efi1"))
>      (keyboard-layout keyboard-layout)))
>  (mapped-devices
>    (list (mapped-device
>            (source
>              (uuid "14930dad-016d-4b59-b7d8-d5af2c33f4b0"))
>            (target "offline1")
>            (type luks-device-mapping))
> ))
>  (file-systems
>    (cons* (file-system
>             (mount-point "/boot/efi1")
>             (device (uuid "3339-DAE2" 'fat32))
>             (type "vfat"))
>           (file-system
>             (mount-point "/")
>             (device "/dev/mapper/offline1")
>             (type "btrfs")
>             (options "compress=zlib:9")
>             (dependencies mapped-devices))
>           %base-file-systems))
>  (users (cons* (user-account
>                  (name "nathan")
>                  (comment "Nathan Dehnel")
>                  (group "users")
>                  (home-directory "/home/nathan")
>                  (supplementary-groups '("wheel" "netdev" "audio" "video")))
>                %base-user-accounts))
>  (packages
>    (append
>            (specification->package "btrfs-progs")
>            (specification->package "parted")
>            (specification->package "mdadm")
>            (specification->package "git")
>            (specification->package "nss-certs")
>            (specification->package "nix")
>            (specification->package "efibootmgr")
>            (specification->package "smartmontools")
>            (specification->package "iotop")
>            (specification->package "bcache-tools")
>            (specification->package "lsof")
>            (specification->package "wireguard-tools")
>            (specification->package "baksnapper")
>            (specification->package "file")
>            (specification->package "rsync"))
>      %base-packages))
>  (services
>    (append
>      (list
>           (service openssh-service-type
>             (openssh-configuration
>              (permit-root-login #t)
>              (password-authentication? #t)
>              (authorized-keys
>               `(("root" ,(local-file "ssh/root-gentoodesktop.pub"))
>                 ("root" ,(local-file "ssh/baksnapper-gentoodesktop.pub"))
>                 ("root" ,(local-file "ssh/baksnapper-gentooserver.pub"))
>                 ("root" ,(local-file "ssh/nathan-guixlaptop.pub"))
> ))))
>            (service connman-service-type)
>            (service ntp-service-type)
>            (service gpm-service-type)
>            (simple-service 'nanorc etc-service-type
>                        (list `("nanorc", nanorc)))
> )
>        %base-services)))