Comment 35 for bug 1814403

Revision history for this message
Luke (lukethenuke) wrote :

I just encountered the issue that the parameter GRUB_TIMEOUT in /etc/default/grub does not reduce the timeout for uefi boot anymore. I was able to pinpoint the issue in the grub config to line 98 [1]. From your issue here I understand that this is the way it is supposed to work.

This should be documented somewhere as the documentation does not mention that this setting does not work for uefi boot [2].

As a workaround you could edit /etc/grub.d/00_header to check in line 387 if the timeout is less than 5 [3].

[1]
/etc/default/grub ~
GRUB_TIMEOUT=5
/boot/grub/grub.cfg:98 ~
if [ $grub_platform = efi ]; then
  set timeout=30 # this value is the issue
  if [ x$feature_timeout_style = xy ] ; then
    set timeout_style=menu
  fi
fi

[2]
info -f grub -n 'Simple configuration' ~
'GRUB_TIMEOUT'
     Boot the default entry this many seconds after the menu is
     displayed, unless a key is pressed. The default is '5'. Set to
     '0' to boot immediately without displaying the menu, or to '-1' to
     wait indefinitely.

[3]
/etc/grub.d/00_header:387 ~
- set timeout=${GRUB_RECORDFAIL_TIMEOUT:-30}
+ set timeout=${$(if (( $GRUB_TIMEOUT < 5 )); then echo "5"; else echo "$GRUB_TIMEOUT"; fi):-30}