Skip to main content

My grub2 config

Enable OS prober

If os-prober is disabled, add this line in /etc/default/grub:

GRUB_DISABLE_OS_PROBER=false

Add poweroff and reboot options

To add poweroff and reboot options to your grub, add those lines in /etc/grub.d/40_custom:

menuentry 'Power off' {
	halt
}
menuentry 'Reboot' {
	reboot
}

Install a theme (link to the github repo)

banner

Installation:

Usage: sudo ./install.sh [OPTIONS...]

  -t, --theme                 theme variant(s)          [tela|vimix|stylish|whitesur]       (default is tela)
  -i, --icon                  icon variant(s)           [color|white|whitesur]              (default is color)
  -s, --screen                screen display variant(s) [1080p|2k|4k|ultrawide|ultrawide2k] (default is 1080p)
  -c, --custom-resolution     set custom resolution     (e.g., 1600x900)                    (disabled in default)
  -r, --remove                remove theme              [tela|vimix|stylish|whitesur]       (must add theme name option, default is tela)

  -b, --boot                  install theme into '/boot/grub' or '/boot/grub2'
  -g, --generate              do not install but generate theme into chosen directory       (must add your directory)

  -h, --help                  show this help

If no options are used, a user interface dialog will show up instead

Examples:

  • Install Tela theme on 2k display device:
sudo ./install.sh -t tela -s 2k
  • Install Tela theme with custom resolution:
sudo ./install.sh -t tela -c 1600x900
  • Install Tela theme into /boot/grub/themes:
sudo ./install.sh -b -t tela
  • Uninstall Tela theme:
sudo ./install.sh -r -t tela

Issues / tweaks:

Correcting display resolution:

  • On the grub screen, press c to enter the command line
  • Enter vbeinfo or videoinfo to check available resolutions
  • Open /etc/default/grub, and edit GRUB_GFXMODE=[height]x[width]x32 to match your resolution
  • Finally, run grub-mkconfig -o /boot/grub/grub.cfg to update your grub config

Setting a custom background:

  • Make sure you have imagemagick installed, or at least something that provides convert
  • Find the resolution of your display, and make sure your background matches the resolution
    • 1920x1080 >> 1080p
    • 2560x1080 >> ultrawide
    • 2560x1440 >> 2k
    • 3440x1440 >> ultrawide2k
    • 3840x2160 >> 4k
  • Place your custom background inside the root of the project, and name it background.jpg
  • Run the installer like normal, but with -s [YOUR_RESOLUTION] and -t [THEME] and -i [ICON]
    • Make sure to replace [YOUR_RESOLUTION] with your resolution and [THEME] with the theme
  • Alternatively, use the -c option to set a custom resolution

Contributing:

  • If you made changes to icons, or added a new one:
    • Delete the existing icon, if there is one
    • Run cd assets; ./render-all.sh
  • Create a pull request from your branch or fork
  • If any issues occur, report then to the issue page

Preview:

preview

Documents

Grub2 theme reference

Grub2 theme tutorial

Customize the titles, order and entries shown with grub-customizer

To install grub-customizer:

sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer

Preview: