Font size in grub menu

I can’t seem to be able to change the font size the grub menu.

I’m looking to make the font smaller because in the ‘advanced options’ submenu the options for the different kernel entries are too long to fit screen on screen.

I’ve tried two approaches

  1. change to higher resolution using /etc/grub/default
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command 'videoinfo'
GRUB_GFXMODE=1600x900

# Uncomment to allow the kernel use the same resolution used by grub
GRUB_GFXPAYLOAD_LINUX=1600x900

then sudo update-grub

no avail

  1. changing font size in copy of theme

using /etc/grub/default

# Uncomment one of them for the gfx desired, a image background or a gfxtheme
#GRUB_BACKGROUND="/usr/share/grub/background.png"
GRUB_THEME="/usr/share/grub/themes/manjaro-smfont/theme.txt"

and

/usr/share/grub/themes/manjaro-smfont/theme.txt

title-text: ""
title-font: "DejaVu Sans Regular 24"
message-font: "Terminus 14"
message-color: "#7f8c8d"
message-bg-color: "#4d4d4d"
desktop-color: "#24282c"
desktop-image: "background.png"
terminal-font: "Terminus 12"
terminal-left: "0"
terminal-top: "0"
terminal-width: "100%"
terminal-height: "100%"
terminal-border: "0"

# Logo image
+ image {
	left = 30%-250
	top = 10%-30
    file = "logo.png"
}

+ boot_menu {
    left = 15%
    #width = 250
    width = 70%
    #top = 50%-125
    #height = 400
    top = 30%
    height = 44%
    item_height = 30
    item_padding = 5
    icon_width = 32
    icon_height = 32
    item_icon_space = 20
    item_spacing = 5
    item_font =  "Terminus 14"
    item_color = "#cccccc"
    #item_color = "#FFA2A2"
    selected_item_font = "Terminus 14"
    selected_item_color = "#1ABB9B"
    selected_item_pixmap_style = "select_*.png"
    #menu_pixmap_style = "menu_*.png"
}

+ progress_bar {
    id = "__timeout__"
    left = 50%-125
    top = 70%
    width = 250
    height = 20
    show_text = true
    font = "Terminus 12"
    text_color = "#ffffff"
    align = "center"
    text = "@TIMEOUT_NOTIFICATION_MIDDLE@"
    bar_style = "progress_bar2_*.png"
}

+ hbox {
    left = 50%-250
    top = 80%
    width = 500
    #+ label { width = 250 height = 20 align = "center" color = "#ffffff" font = "Terminus 14" text = "[↵] Boot selected OS" }
    #+ label { width = 250 height = 20 align = "center" color = "#ffffff" font = "Terminus 14" text = "[↑ and ↓ Key] Navigation" }
    + label { width = 250 height = 20 align = "center" color = "#ffffff" font = "Terminus 14" text = "E = Edit Boot Options" }
    + label { width = 250 height = 20 align = "center" color = "#ffffff" font = "Terminus 14" text = "C = GRUB Commandline" }
}

then sudo update-grub

no avail


Neither option changed the appearance of resolution/font. It didn’t break anything either so maybe something is overriding the options I’m supplying?

Is it possible you have more than one os on your system?
One of the other ones could be controlling grub.
To my knowledge you can have multiple grubs on a system but only one is used.

1 Like

Hi @darkcity,

Just saw this post and realized this might help. I use it, myself and my grub runs my full 2560x1080 resolution, so it might also help you:

Hope it helps!

1 Like