You have been subscribed to a public bug:

This document details the problems and troubleshooting steps encountered while 
attempting
to install the "Minegrub" theme (repository: 
https://github.com/Lxtharia/minegrub-theme) on
the GRUB bootloader of an Ubuntu 25.04 (development version) system. The core 
issue is that
the theme is not loaded, and in-depth investigations point to a failure in the 
generation of the
GRUB configuration file (grub.cfg).
Objective
To install and activate the "Minegrub" theme for GRUB, replacing the standard 
boot screen
with a themed interface.
Environment
●​ Operating System: Ubuntu 25.04 (development version)
●​ Bootloader: GRUB 2.12 (version installed during troubleshooting)
●​ Hardware: UEFI system (EFI partition mounted at /boot/efi)
Problems Encountered and Troubleshooting Steps
Below is a chronological summary of the errors found and actions taken:
1. Initial Installation and Configuration Attempt
●​ Actions:
○​ Cloned the minegrub-theme repository.
○​ Copied the minegrub folder to /boot/grub/themes/.
○​ Edited the /etc/default/grub file to include the lines:​
GRUB_TERMINAL_OUTPUT=gfxterm​
GRUB_THEME="/boot/grub/themes/minegrub/theme.txt"​
○​ Executed sudo grub-mkconfig -o /boot/grub/grub.cfg.
●​ Result: GRUB remained with the default (black screen) theme.
2. Error During Dependency Installation (Pillow)
●​ Context: The minegrub theme includes an update_theme.py script that requires 
the
Python Pillow library.
●​ Error: Attempting pip install Pillow returned error: 
externally-managed-environment.
●​ Solution: Installed Pillow using the system's package manager: sudo apt 
install
python3-pillow.
●​ Note: Although resolved, this error was not directly related to the main 
GRUB issue.
3. File Access Inconsistencies in /boot/grub/themes/minegrub/
●​ Initial Observation: After the initial configuration, the theme did not 
load. Upon●​
●​
●​
●​
●​
●​
checking the /etc/default/grub file, it was noted that the
GRUB_TERMINAL_OUTPUT=gfxterm line was missing or commented out.
Action: The GRUB_TERMINAL_OUTPUT=gfxterm line was added/uncommented in
/etc/default/grub.
Result: The theme still did not load.
Additional Problem: Commands like head /boot/grub/themes/minegrub/theme.txt and
ls -l /boot/grub/themes/minegrub/ (without sudo) returned "No such file or 
directory,"
even though sudo ls -l /boot/grub/themes/minegrub/ showed the files present.
Initial Hypothesis (Incorrect): It was suspected that the /boot partition was 
100% full
due to an initial misreading of df -h /boot (which actually showed the usage of 
the root
partition).
Actions to Investigate Space/Access:
○​ sudo apt autoremove --purge: Removed grub-pc-bin (freed only 3KB), but did 
not
resolve the space or access issue.
○​ sudo du -sh /boot/*: Revealed that the /boot directory was, in fact, 
sufficiently
sized (approx. 20MB total usage).
○​ mount | grep /boot/efi: Showed that the EFI partition (/dev/nvme0n1p1 
mounted at
/boot/efi) had the errors=remount-ro option, indicating it might have been
mounted as read-only due to errors.
○​ sudo mount -o remount,rw /boot/efi: Attempted to remount the EFI partition in
read/write mode.
Result: The subsequent mount | grep /boot/efi confirmed that the EFI partition 
was now
in rw (read/write) mode. However, the "No such file or directory" access 
problem for
theme files persisted inconsistently for some commands.
4. The Core Problem: GRUB_THEME Not Included in grub.cfg
●​ Crucial Observation: After all corrections and executions of sudo 
grub-mkconfig, the
command sudo grep GRUB_THEME /boot/grub/grub.cfg consistently returned no
output. This means the instruction to load the theme was not being written to 
the final
GRUB configuration file.
●​ Actions to Isolate the Problem:
○​ Detailed Review of /etc/default/grub: Using cat -A, it was confirmed that the
GRUB_TERMINAL_OUTPUT=gfxterm and
GRUB_THEME="/boot/grub/themes/minegrub/theme.txt" lines were present and
free of visible syntax errors or invisible characters.
○​ Verification of /etc/default/grub.d/: Only kdump-tools.cfg was present, which
should not interfere with themes.
○​ Attempted Direct Injection via 40_custom:
■​ The line set default_theme="/boot/grub/themes/minegrub/theme.txt" was
added directly to the end of /etc/grub.d/40_custom.
■​ 40_custom permissions were checked and were correct (-rwxr-xr-x).
■​ sudo grub-mkconfig was executed again.
■​ sudo grep default_theme /boot/grub/grub.cfg still returned no output.■​ sudo 
cat /boot/grub/grub.cfg | grep -i theme only showed entries from
05_debian_theme, which is the default theme and does not contain the
instruction for minegrub.
○​ GRUB EFI Reinstallation: sudo apt install --reinstall grub-efi-amd64 and sudo
grub-install /dev/nvme0n1 were executed successfully, but grub-mkconfig (run as
part of the reinstallation) still did not include the theme line in grub.cfg.
Conclusion and Main Hypothesis
Despite all configurations appearing correct in /etc/default/grub and 
40_custom, and
grub-mkconfig executing without errors, the GRUB_THEME variable and its 
corresponding
instruction (set default_theme=...) are not being written to the 
/boot/grub/grub.cfg file.
This strongly suggests a bug in the grub-mkconfig utility of Ubuntu 25.04 that 
prevents
the processing and inclusion of the GRUB_THEME variable in the final 
configuration file. GRUB,
therefore, does not have the instruction to load the Minegrub theme, resulting 
in the default
boot screen.

** Affects: ubuntu
     Importance: Undecided
         Status: New


** Tags: grub
-- 
Theme Installation Failure on GRUB
https://bugs.launchpad.net/bugs/2111866
You received this bug notification because you are a member of Ubuntu Bugs, 
which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to