Hide GRUB when booting

Untrue again … Esc works.

Hmmm I don’t know this. Good to know.

So I guess it will be something like

GRUB_DEFAULT="Windows ..."
GRUB_TIMEOUT=0.0
GRUB_TIMEOUT_STYLE=hidden

Along with Esc key press.

Because OS Prober forces MENU for timeout_style, and refuses 0 second as a value for timeout.
In the grub.cfg file, you can verify by yourself:

set timeout_style=menu
if [ "${timeout}" = 0 ]; then
  set timeout=10
fi

//EDIT: maybe you tricked/broke it by having a 0[DOT]0 value for timeout, so it accepts it, and then it instantly timeouts so you think the timeout_style is set to hidden but it is probably a menu timeout style with a 0 second timeout then. But by default without tricking the system, this is how it works.

1 Like

I think GRUB_TIMEOUT=0 will cause this timeout to be 10s. I also tried 0 in the past and it wasn’t allowed, as what you shown.

So I guess you need GRUB_TIMEOUT=0.0 for 0s timeout from @cscs . Idk, 0.0 is weird.

Dont have it

I do have:

if [ x$feature_timeout_style = xy ] ; then
  set timeout_style=hidden
  set timeout=0.0
# Fallback hidden-timeout code in case the timeout_style feature is
# unavailable.
elif sleep --interruptible 0.0 ; then
  set timeout=0
fi

The OS Prober part @cscs, the OS Prober part.

### BEGIN /etc/grub.d/30_os-prober ###
.....

Check, I’m pretty confident. check also my edit above.

Agreed … but it came form a pacnew, and I was already using 0 … so I checked 0.0 worked, and since it was ‘upstream’ I shrugged and used that.

OK … so I went and made sure that GRUB_DISABLE_OS_PROBER=false was uncommented in /etc/default/grub … run sudo update-grub again, checked for your lines … and its …

set timeout_style=menu
if [ "${timeout}" = 0 ]; then
  set timeout=10
fi

Rebooted.
But still hidden grub.
(reboot again and Esc still works to show grub)

So yeah it should have forced menu style and 10 seconds timeout, but what happens is probably what I edited in previous post, if you didn’t see:

Ummmmmmmm… I messed up and want to reset the grub config to default, how do I do it.

nvm fixed

Windows does load by default no grub menu shown, but when checking if Manjaro works, I tried using the esc key once, and then i spammed it to the best of my ability in another run (All the way from the BIOS screen to when the Windows logo showed up) but didnt get the Grub menu to work, So yea if possible please help.

2 things;

  • It used to be Shift … so maybe try that?
  • windoze doesnt shutdown all the way by default … make sure you do a full shutdown.

Oh ok, Thank you I will try it

Tried fully shutting down my pc, spamming both enter and shift keys but none worked, I suspect the problem is somehow related to my BIOS mode i.e Legacy.

Quote from https://askubuntu.com/questions/16042/how-to-get-to-the-grub-menu-at-boot-time:

Menu will appear if you press and hold Shift during loading Grub, if you boot using BIOS. When your system boots using UEFI, press Esc.

But this is for Ubuntu somewhere in 2010 and I’m not sure whether or not Ubuntu has its own modified GRUB.

@cscs, is your system installed with Manjaro GRUB (the one with green Manjaro background)?

Anyway @TheEliteDash, perhaps for a while you can boot into live-USB Manjaro and just use GRUB_TIMEOUT=2 instead:

Well ok. Thank You

I forgot to mention that you need to be in chroot in order to update the GRUB on your internal drive. Because you use live-USB or live-CD so you need to change the filesystem view to the one in your internal drive, not the live-USB/CD one.

I give you 2 good references on how to do this:

https://askubuntu.com/questions/145241/how-do-i-run-update-grub-from-a-livecd

First reinstall grub package :

sudo pacman -Rsn grub && sudo pacman -S grub

And update grub config :

sudo rm /boot/grub/grub.cfg
sudo grub-mkconfig -o /boot/grub/grub.cfg

No there’s no need to reinstall GRUB as his GRUB isn’t corrupted. There’s only a need to update the /etc/default/grub and run sudo update-grub, everything in chroot mode.

1 Like