rhboot/efibootmgr

version 18 too much detail

jeffm999 opened this issue · 4 comments

I run efibootmgr version 17 at bash command line and it prints a simple list of boot options , eg.
> efibootmgr
BootCurrent: 0000
Timeout: 1
BootOrder: 0000,0001,000B,0006,0004,000C
Boot0000* GRUB
Boot0001* Windows
Boot0004 Hard
Boot0006 Windows
Boot000B Hard
Boot000C CD/DVD

now version 18 prints a very detailed list :
> efibootmgr
BootCurrent: 0000
Timeout: 1 seconds
BootOrder: 0000,0001,000B,0006,0004,000C
Boot0000* GRUB HD(1,GPT,d7f326dc-72f8-45a5-a3b1-9717fb74fa28,0x800,0x32000)/File(\EFI\GRUB\GRUBX64.EFI)
Boot0001* Windows Boot Manager HD(1,GPT,d7f326dc-72f8-45a5-a3b1-9717fb74fa28,0x800,0x32000)/File(\EFI\ARCHLINUX\GRUBX64.EFI)57494e444f5753000100000088000000780000004200430044004f0042004a004500430054003d007b00390064006500610038003600320063002d0035006300640064002d0034006500370030002d0061006300630031002d006600330032006200330034003400640034003700390035007d0000004d000100000010000000040000007fff0400
Boot0004 Hard Drive VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)0000474f
Boot0006 Windows Boot Manager HD(1,GPT,d7f326dc-72f8-45a5-a3b1-9717fb74fa28,0x800,0x32000)/File(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)0000424f
Boot000B Hard Drive BBS(HD,,0x0)/VenHw(5ce8128b-2cec-40f0-8372-80640e3dc858,0200)0000474f00004e4fe5000000010000009d00530041004d00530055004e00470020004d005a0056004c004200350031003200480042004a0051002d003000300030004c0032000000050109000200000000010416008b12e85cec2cf040837280640e3dc85802007fff040002010c00d041030a0000000001010600000301010600000003171000010000000025388a91b419007fff040001044a00ef47642dc93ba041ac194d51d01b4ce6530041004d00530055004e00470020004d005a0056004c004200350031003200480042004a0051002d003000300030004c00320000007fff04000000424f00004e4fc9000000010000008f00530061006d00730075006e0067002000530053004400200039003800300020003100540042000000050109000200000000010416008b12e85cec2cf040837280640e3dc85802007fff040002010c00d041030a0000000001010600001c0101060000000317100001000000002538d811b4007c7fff040001043c00ef47642dc93ba041ac194d51d01b4ce6530061006d00730075006e00670020005300530044002000390038003000200031005400420000007fff04000000424f00004e4fbd00000001000000850053005400340030003000300044004d003000300030002d003100460032003100360038000000050109000200000000010416008b12e85cec2cf040837280640e3dc85802007fff040002010c00d041030a0000000001010600021f03120a000000ffff00007fff040001043e00ef47642dc93ba041ac194d51d01b4ce6200020002000200020002000200020002000200020002000330053003000300038004c003500340000007fff04000000424f00004e4fbf00000001000000850054004f005300480049004200410020004d004700300034004100430041003400300030004e000000050109000200000000010416008b12e85cec2cf040837280640e3dc85802007fff040002010c00d041030a0000000001010600021f03120a000200ffff00007fff040001043e00ef47642dc93ba041ac194d51d01b4ce620002000200020002000200020002000360036003900490033004b005a0043005600460043004c0000007fff04000000424f00004e4fbd00000001000000850053005400340030003000300044004d003000300030002d003100460032003100360038000000050109000200000000010416008b12e85cec2cf040837280640e3dc85802007fff040002010c00d041030a0000000001010600021f03120a000300ffff00007fff040001043e00ef47642dc93ba041ac194d51d01b4ce62000200020002000200020002000200020002000200020003300530030003000480038003700460000007fff04000000424f
Boot000C CD/DVD Drive BBS(CDROM,,0x0)/VenHw(5ce8128b-2cec-40f0-8372-80640e3dc858,0300)0000474f00004e4fbd000000010000008500410053005500530020002000200020004400520057002d003200340042003500530054000000050109000300000000010416008b12e85cec2cf040837280640e3dc85803007fff040002010c00d041030a0000000001010600041103120a000300ffff00007fff040001043e00ef47642dc93ba041ac194d51d01b4ce635004300300044004c0043003000300030003400340030002000200020002000200020002000200000007fff04000000424f

I think it would be good if v18 default was same as v17 ?

-u option trims output down a bit, maybe add a -s option for 'simple' output, or just revert default to same as v17

rgds

Commit 8ec3e9d changed the output format intentionally. This change broke my script that parsed the output to find existing entries by name. @vathpela, could you revert this change?

  1. Scripts that parse the output broke, because the format changed.
  2. There is not even an option to go back to the old format.
  3. The new format can't be reliably parsed. Even though the device path comes after a tab character, it's not guaranteed to be printed, so the script can't just throw away everything after the last tab. If the entry name contains a tab, and efidp_format_device_path fails, the parser will misinterpret part of the name as the device path.

I'm just noticing this behavior as well with version 18. I hope they go back to the format from version 17.