Lesson 9 of 19 ↓
- 1.Fedora + Distrobox + Arch + AUR Setup Guide
- 2.Enabling Hibernate on Linux
- 3.A Practical Git Workflow
- 4.Useful Linux Commands & Tips
- 5.Mirroring Your Android Screen with Scrcpy
- 6.Downloading Media with Yt-dlp
- 7.Consistent C/c++ Style with Clang-format
- 8.Auto-mounting Drives at Boot
- 9.Customizing Grub
- 10.Linux Swap Files Explained
- 11.Zram: Compressed Swap in Ram
- 12.Custom App Launch Behavior Via .desktop Files
- 13.Custom Mime Icons in Gnome
- 14.Fixing Missing Dock Icons (startupwmclass)
- 15.Installing Questasim for Hdl Simulation
- 16.Building Python 2 From Source
- 17.Auto-Starting WhatsApp and Telegram (Minimized or Tray)
- 18.Custom Neovim Configuration Guide
- 19.Running Windows Applications on Linux Seamlessly with WinBoat (Docker)
2 min read
Customizing Grub
GRUB's default look is purely functional. Installing a theme and tuning a couple of settings makes boot feel intentional instead of accidental, and along the way it's worth knowing how to regenerate the GRUB config correctly on both Ubuntu and Fedora, since the two differ.
Download a Theme
Sites like GNOME-Look.org host GRUB themes. Always check the theme's README first — many ship an install.sh that automates the rest.
Extract It
tar -xvf theme-file.tar.gzA typical theme (e.g. Vimix) extracts to something like:
Vimix-4k/
├── install.sh
├── LICENSE
└── Vimix/Install Via install.sh (preferred, When Available)
cd Vimix-4k
chmod +x install.sh
sudo ./install.shThe installer typically copies theme files to /usr/share/grub/themes/, asks which resolution variant to use, and regenerates the GRUB config automatically.
Picking the Right Resolution Variant
Getting this wrong stretches or blurs the GRUB UI. Check the actual screen resolution first:
xrandr | grep '*'| Screen Resolution | Recommended Theme |
|---|---|
| 1366×768 | 1080p |
| 1920×1080 | 1080p |
| 2560×1440 | 2k |
| 3840×2160 | 4k |
If asked to pick, always choose the closest resolution at or below the actual screen resolution — never higher.
Manual Installation (no install.sh)
sudo cp -r theme-folder-name /usr/share/grub/themes/
sudo nvim /etc/default/grubAdd or update:
GRUB_THEME="/usr/share/grub/themes/theme-folder-name/theme.txt"Regenerating the Grub Config
Ubuntu/Debian:
sudo update-grubFedora does not use update-grub:
# BIOS systems
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
# UEFI systems (most modern laptops)
sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfgCheck which mode a system is running in:
[ -d /sys/firmware/efi ] && echo UEFI || echo BIOSOn Fedora, themes commonly live under /usr/share/grub/themes/ — double-check theme.txt actually exists there and that GRUB_THEME points at it exactly.
If the Theme Doesn't Show Up
Usual suspects: Secure Boot blocking custom themes, a wrong theme.txt path, or a config that was never regenerated after the edit. Re-running the regenerate command for the relevant boot mode is the first thing to try:
sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfgFedora + HiDPI tip: if GRUB renders too small on a 4K screen, add to
/etc/default/gruband regenerate:bash GRUB_GFXMODE=1920x1080 GRUB_GFXPAYLOAD_LINUX=keep
Comments
Loading the discussion…