diff --git a/elements/bootloader/README.rst b/elements/bootloader/README.rst index ecfefc42..86f75914 100644 --- a/elements/bootloader/README.rst +++ b/elements/bootloader/README.rst @@ -1,7 +1,14 @@ ========== bootloader ========== -Installs grub[2] on boot partition on the system. In case GRUB2 -is not available in the system, a fallback to Extlinux will happen. It's -also possible to enforce the use of Extlinux by exporting a DIB_EXTLINUX -variable to the environment. + +Installs ``grub[2]`` on boot partition on the system. In case GRUB2 is +not available in the system, a fallback to Extlinux will happen. It's +also possible to enforce the use of Extlinux by exporting a +``DIB_EXTLINUX`` variable to the environment. + +Arguments +========= + +* ``DIB_GRUB_TIMEOUT`` sets the ``grub`` menu timeout. It defaults to + 5 seconds. Set this to 0 (no timeout) for fast boot times. diff --git a/elements/bootloader/finalise.d/50-bootloader b/elements/bootloader/finalise.d/50-bootloader index 1b479d46..fbf9e56c 100755 --- a/elements/bootloader/finalise.d/50-bootloader +++ b/elements/bootloader/finalise.d/50-bootloader @@ -133,6 +133,7 @@ function install_grub2 { GRUB_CFG=/boot/grub/grub.cfg fi + echo "GRUB_TIMEOUT=${DIB_GRUB_TIMEOUT:-5}" >>/etc/default/grub echo 'GRUB_TERMINAL="serial console"' >>/etc/default/grub echo 'GRUB_GFXPAYLOAD_LINUX=text' >>/etc/default/grub echo 'GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,115200 no_timer_check"' >>/etc/default/grub diff --git a/releasenotes/notes/grub-timeout-1cdd14a2b1467d89.yaml b/releasenotes/notes/grub-timeout-1cdd14a2b1467d89.yaml new file mode 100644 index 00000000..cedbc2fd --- /dev/null +++ b/releasenotes/notes/grub-timeout-1cdd14a2b1467d89.yaml @@ -0,0 +1,6 @@ +--- +features: + - The ``bootloader`` element will explicitly set the timeout to + ``5`` seconds when using ``grub`` (previously this was undefined, + but platform defaults were usually 5 seconds). Set this to ``0`` + for faster boots.