Ignore EFI boot args when parsing for filename

I need to set some flags in order to boot as described here:
https://www.qubes-os.org/doc/uefi-troubleshooting/

My settings look like this:
    $ efibootmgr -v
    BootCurrent: 0000
    Boot0000* Qubes HD(...)/File(\EFI\qubes\xen.efi)p.l.a.c.e.h.o...

which causes awk to get confused and think my $EFI_DIR should be:
    /EFI/qubesp.l.a.c.e.h.o.l.d.e.r. ./.m.a.p.b.s. ./.n.o.e.x.i.t.b.o.o.t.

This causes the script to later bail:
    if [ ! -d "$EFI_DIR" ]; then
        # non-EFI system
        exit 0;
    fi

So my xen.cfg did not get new entries when installing dom0 kernel packages.
This commit is contained in:
Jean-Philippe Ouellet 2016-11-11 16:22:23 -05:00
parent c73dcd2786
commit 9b7667c3a5
No known key found for this signature in database
GPG Key ID: E7E455013D042EA1

View File

@ -12,7 +12,7 @@ EFI_DIR=$(efibootmgr -v 2>/dev/null | awk '
/^Boot....\* / { /^Boot....\* / {
if ("Boot" current "*" == $1) { if ("Boot" current "*" == $1) {
sub(".*File\\(", ""); sub(".*File\\(", "");
sub("\\\\xen.efi\\)", ""); sub("\\\\xen.efi\\).*", "");
gsub("\\\\", "/"); gsub("\\\\", "/");
print; print;
} }