help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Rollback with efi-bootloader-chain: no such bootloader


From: Roman Scherer
Subject: Re: Rollback with efi-bootloader-chain: no such bootloader
Date: Sun, 20 Oct 2024 13:14:10 +0200

Roman Scherer <roman.scherer@burningswell.com> writes:

Hello,

I think I figured it out. In commit a9acbf919a7668e26863d2d26d48c5fd41b57fcd
the name of the efi-bootloader-chain bootloader was changed to the string
"efi-bootloader-chain". I believe this this should be a symbol, like in all
other bootloaders.

The `(lookup-bootloader-by-name name)` procedure uses this form

(eq? name (bootloader-name bootloader))

to find the bootloader by name, but fails. I submitted a patch that changes
the name of the efi-bootloader-chain bootloader to be a symbol. With this I
can roll-back and switch generations again on my system.

The patch is here:

https://lists.gnu.org/archive/html/guix-patches/2024-10/msg01009.html

I put Stefan on CC, who authored that commit.

Could someone please review this patch?

Thanks, Roman.

> Hi Efraim,
>
> thanks for helping me!
>
> This is what I see when I run `which -a guix` as a user, and when run via
> sudo. I do reconfigure the system with `sudo guix ...`. I used to as root. Not
> sure if that matters.
>
> [roman@m1 guix]$ which -a guix
> /home/roman/.config/guix/current/bin/guix
> /run/current-system/profile/bin/guix
> /home/roman/.config/guix/current/bin/guix
> /run/current-system/profile/bin/guix
>
> [roman@m1 guix]$ sudo which -a guix
> /home/roman/.config/guix/current/bin/guix
> /run/current-system/profile/bin/guix
> /home/roman/.config/guix/current/bin/guix
> /run/current-system/profile/bin/guix
>
> I have no idea if this is good or bad. :)
>
> I don't think I have any `guix` package installed in my profiles. I checked
> this with:
>
> guix package -I | grep guix
> sudo guix package -I | grep guix
>
> Both profiles also seem to have a recent version of the `guix` cli.
>
> [roman@m1 guix]$ guix --version
> guix (GNU Guix) 68edde635d7f60fb48b2b664e55118fdc3021a73
>
> [roman@m1 guix]$ sudo guix --version
> guix (GNU Guix) 68edde635d7f60fb48b2b664e55118fdc3021a73
>
> Was your thinking that I may got so far back in time somehow that the `guix`
> package I was using did not contain the `efi-bootloader-chain` variable, and
> thus `lookup-bootloader-by-name` could not find it?
>
> Good idea, I haven't even thought of that. :)
>
> But I think that's not the case here, isn't it?
>
> Do you have any other ideas?
>
> Thanks, Roman.
>
> Efraim Flashner <efraim@flashner.co.il> writes:
>
>> On Fri, Sep 27, 2024 at 08:16:16AM +0200, Roman Scherer wrote:
>>> 
>>> Hello Guix,
>>> 
>>> I'm using a Guix system with the efi-bootloader-chain [1]. The chain
>>> loads m1n1 (the Asahi Linux boot loader), u-boot and then grub.
>>> 
>>> A system roll-back used to work fine, but it stopped to work a while
>>> ago. I'm not sure when that happened, because I rarley needed to
>>> roll-back. But now that I don't have it anymore, I'm a bit nervous.
>>> 
>>> When I do a roll-back, this is what happens:
>>> 
>>> ```
>>> $ sudo guix system roll-back
>>> Password:
>>> guix system: error: efi-bootloader-chain: no such bootloader
>>> ```
>>> 
>>> It looks like the efi-bootloader-chain can't be found in the
>>> %bootloaders variable of the (gnu bootloader) module. But that seems
>>> strange, since it is defined in the same file (just a bit later).
>>> 
>>> Any ideas?
>>> 
>>> Thanks, Roman.
>>> 
>>> [1] 
>>> https://github.com/asahi-guix/channel/blob/main/modules/asahi/guix/bootloader/m1n1.scm
>>
>> What do you get from `which -a guix`? Make sure you haven't installed
>> guix (the package) into a profile and are slowly making your way
>> backwards in time each time you reconfigure.

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]