Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
FS#33398 - [refind-efi] 0.6.4 name change issue
Attached to Project:
Arch Linux
Opened by Mark E. Lee (bluerider) - Tuesday, 15 January 2013, 02:43 GMT
Last edited by Tobias Powalowski (tpowa) - Wednesday, 23 January 2013, 08:33 GMT
Opened by Mark E. Lee (bluerider) - Tuesday, 15 January 2013, 02:43 GMT
Last edited by Tobias Powalowski (tpowa) - Wednesday, 23 January 2013, 08:33 GMT
|
DetailsDescription:
Name "refindx64.efi" was changed to "refind_x64.efi". Users of refind will have to efibootmgr to reflect the new name, or be unable to boot into refind at all. An alternative is to rename refind_x64.efi to refindx64.efi (possibly patch it) Additional info: Found in refind-efi 0.6.4-1. Steps to reproduce: Upgrade refind-efi 0.6.4-1. If efibootmgr is has refindx64.efi listed, it will be incapable of booting refind. |
This task depends upon
Currently update-efi-nvram is disabled (must be called by user) since it still lacks support for detecting which boot entries are in the nvram. Specifically, one should be able to run `sudo efibootmgr | <some function>` and that will report if the updated binary is the same as the one recorded in nvram. It would run the function update-efi-nvram if it is not. Unfortunately, due to the numerous backslashes needed for efibootmgr, awk and grep didn't work for me for parsing out that information.
I am still using /boot/efi/EFI/refind/refindx64.efi , and not /boot/efi/EFI/refind/refind_x64.efi . FWIW you can even copy the file to /boot/efi/EFI/sjhdv/svhs.efi , and still refind will boot fine if you have created a efibootmgr entry for that file path. The path name refindx64.efi or refind_x64.efi filename is not hard-coded anywhere in the upstream sources in a way that affects rEFInd at runtime. Only the Makefiles use this filename.
I have finished the patch, and it should now selectively edit the nvram.
This script has the added benefit of making future refind installations easier since it:
1) moves refind binaries into the directory suggested by the arch wiki and the refind developer
2) will update nvram and refind binary if the refind developer ever chooses to change the name of the binary again.
Then no need to add install message and all is fine for new installations.
In addition, if the developer chooses to change the name again, my patch will protect arch users from that situation since it dynamically updates the nvram.
I have also updated the patch to fix a critical error involving EFI variables, $boot_entry was set after `sudo modprobe efivars` which caused boot_entry to always be empty. That is now fixed.
You need to add your scripts to the wiki instead.
I cannot test your things at all. I only ship the package as Rod Smith told me.