razielward wrote:Is there a work around in the meantime, or do I just have to wait for efivar v.22 to roll out?
You can download 0.21-1 from testing and pacman -U it. That worked for me.
Or take the PKGBUILD of the testing package and build it yourself. This way you don't have to deal with the package being built against libraries only available in testing. Might or might not be relevant here.
]]>Is there a work around in the meantime, or do I just have to wait for efivar v.22 to roll out?
You can download 0.21-1 from testing and pacman -U it. That worked for me.
]]>zacariaz wrote:Seemingly the problem is with an update to efivar: https://github.com/rhinstaller/efivar/issues/22
Excellent - hopefully the referenced fix will propagate through to a fixed version of efivar soon.
I do hope so. I know it doesn't really make a difference, it's just nice not having to mess around with bootloaders/managers when you don't really need to.
]]>Seemingly the problem is with an update to efivar: https://github.com/rhinstaller/efivar/issues/22
Excellent - hopefully the referenced fix will propagate through to a fixed version of efivar soon.
]]>Do you suppose it should be considered a bug
Yes, I would think so.
EDIT: One has already been filed and apparently the problem is with the `efivar` package:
https://github.com/rhinstaller/efibootmgr/issues/36
EDIT2: Too slow...
I get the same errors in my system:
empty@Arch ~ % sudo efibootmgr -d /dev/sda -p 1 -c -L "Test" -l /vmlinuz-linux -u "root=UUID=dc7b15ff-6725-4918-b0fd-4bfcc5560ffa rw initrd=/initramfs-linux.img" efibootmgr: Could not set variable: Invalid argument efibootmgr: Could not prepare boot variable: Invalid argument
I also get no output from `efivar`...
Both efibootmgr & efivar were upgraded on the 25th June.
The command works just fine with the old version:
empty@Arch ~ % sudo efibootmgr -d /dev/sda -p 1 -c -L "Test" -l /vmlinuz-linux -u "root=UUID=dc7b15ff-6725-4918-b0fd-4bfcc5560ffa rw initrd=/initramfs-linux.img" BootCurrent: 0001 Timeout: 0 seconds BootOrder: 0000,0001 Boot0001* UEFI OS Boot0000* Test empty@Arch ~ % pacman -Q efibootmgr efibootmgr 0.11.0-1
Who wants to file the bug report?
That's interesting. Do you suppose it should be considered a bug, or has the procedure simply changed? I didn't notice anything obvious while reading through the manual.
]]>empty@Arch ~ % sudo efibootmgr -d /dev/sda -p 1 -c -L "Test" -l /vmlinuz-linux -u "root=UUID=dc7b15ff-6725-4918-b0fd-4bfcc5560ffa rw initrd=/initramfs-linux.img"
efibootmgr: Could not set variable: Invalid argument
efibootmgr: Could not prepare boot variable: Invalid argument
I also get no output from `efivar`...
Both efibootmgr & efivar were upgraded on the 25th June.
The command works just fine with the old version:
empty@Arch ~ % sudo efibootmgr -d /dev/sda -p 1 -c -L "Test" -l /vmlinuz-linux -u "root=UUID=dc7b15ff-6725-4918-b0fd-4bfcc5560ffa rw initrd=/initramfs-linux.img"
BootCurrent: 0001
Timeout: 0 seconds
BootOrder: 0000,0001
Boot0001* UEFI OS
Boot0000* Test
empty@Arch ~ % pacman -Q efibootmgr
efibootmgr 0.11.0-1
Who wants to file the bug report?
]]>Edit:
it has been corrected. My apologies.
After reading: https://wiki.archlinux.org/index.php/EFISTUB and not quite understanding it, I can up with this:
efibootmgr -d /dev/sda -p 1 -c -L "Arch Linux" -l /vmlinuz-linux -u "root=/dev/sda3 rw resume=/dev/sda2 initrd= /initramfs-linux.img"
And got the output:
efibootmgr: Could not set variable: Invalid argument efibootmgr: Could not prepare boot variable: Invalid argument
It is possible that the space between initrd= and the /initramfs... in your "additional commands" using -u is being parsed so that the argument for the initrd is not associated correctly. Maybe removing that space would help even though you have found an alternate method to write the nvram entry now. The -u parameter just says that you will add some additional parameters to the input to the efibootmgr command and the string in quotes contains the extras.
]]>The problem is in your "-u" segment. I'm not sure what it is, but it works without it. Now excuse me, while I purge my ESP of your entry... :-)
Really? That's odd, though of course you're right...
Now what to do about it... I'll be back.
edit
actually it don't seem to actually add the entry, even though bootefimgr says so.
efibootmgr -d /dev/sda -p 1 -c -L "Arch Linux" -l /vmlinuz-linux -u "root=/dev/sda3 rw resume=/dev/sda2 initrd=/initramfs-linux.img"
And got the output:
efibootmgr: Could not set variable: Invalid argument
efibootmgr: Could not prepare boot variable: Invalid argument
I have checked this over and over again, and I can't find anything which remotely resemble an invalid argument.
I've tried various configurations, like with no resume, no efi device, as it should default to sda1 anyway, and so on, but I always get the same error.
The only argument left really, is the /vmlinuz-linux, but I have checked that the file is present and nothing has gone wrong, well, afaik.
I'm out of idea, please help.
NB.
/dev/sda1 EFI BOOT
/dev/sda2 SWAP
/dev/sda3 ROOT
Secureboot disabled.
]]>