#!/usr/bin/bash # # fix boot order: first PXE, then Debian # set -eu cur="$(efibootmgr | grep -Ei 'BootOrder:' | \ sed -E 's/^BootOrder: ([[:xdigit:]]{4}),.+$/\1/')" pxeip4="$(efibootmgr | grep -Ei "IP.*4" | \ sed -E 's/^Boot([[:xdigit:]]{4}).+$/\1/')" debian="$(efibootmgr | grep -Ei "debian" | \ sed -E 's/^Boot([[:xdigit:]]{4}).+$/\1/')" if [[ "$cur" != "$pxeip4" ]] && [[ -n "$pxeip4" ]] && [[ -n "$debian" ]] ; then efibootmgr -o $pxeip4,$debian else echo "Nothing to do." fi