GrubHack grub2 boot screen config
Posted: Thursday 17th September 2020 9:35pm
GrubHack by Bruce Steers
This is a simple app i made because i like to experiment with
operating systems and am often effecting my grub2 menu and wishing
to edit it easily, or change the default boot disk etc.
It reads the /boot/grub/grub.cfg file and lists all the menu entries
it allows you to re-order the items
delete entries
edit menu text
change menu timeout
set default menu entry
it also has options for...
running update-grub to do an OS probe and rebuild a new grub.cfg file
running grub-install to install the grub2 bootloader to a chosen disk
running "fdisk -l" to list all disk drives (i plan to make this an internal function)
It can also modify some things in the /etc/default/grub file
Set default resolution for the grub boot screen
Set the background image.
If chosen background image does not show on boot it's likely an incompatible format.
So theres a 'Convert' option that will convert it to a 1024x768 .png image and
save it in /usr/share/backgrounds/Edits/ (this has so far worked on every image i've
tried it with that initially would not show)
Note. MUST be run from a terminal/shell as root initially to configure pkexec if you have not
configured pkexec yourself to allow the Gambas runtime 'gbr3', after that you can
create menu items / launchers or just double click the application file, but not before.
Usage:
At launch it reads the grub configuration file and lists the menu items, finds the default and
the timeout.
Menu entries can be deleted, moved up or down and the default can be set. As can the Timeout.
Operation/buttons are self explainitory.
TO SAVE CHANGES YOU MUST RUN THIS PROGRAM AS ROOT
Disclaimer..
This program works fine as is and has for me for 9 years when it was only a Gambas2 app
but if the grub configuration format has a major change it may stop functioning as
expected and could cause boot faliure.
In the 9 years I've been using it the only format change i had to deal with was the Timeout time
setting moved somewhere else and the one i was setting didn't change it anymore. no big problem
and was soon resolved. updated , changed from gtk to qt to stop layout errors
This is a simple app i made because i like to experiment with
operating systems and am often effecting my grub2 menu and wishing
to edit it easily, or change the default boot disk etc.
It reads the /boot/grub/grub.cfg file and lists all the menu entries
it allows you to re-order the items
delete entries
edit menu text
change menu timeout
set default menu entry
it also has options for...
running update-grub to do an OS probe and rebuild a new grub.cfg file
running grub-install to install the grub2 bootloader to a chosen disk
running "fdisk -l" to list all disk drives (i plan to make this an internal function)
It can also modify some things in the /etc/default/grub file
Set default resolution for the grub boot screen
Set the background image.
If chosen background image does not show on boot it's likely an incompatible format.
So theres a 'Convert' option that will convert it to a 1024x768 .png image and
save it in /usr/share/backgrounds/Edits/ (this has so far worked on every image i've
tried it with that initially would not show)
Note. MUST be run from a terminal/shell as root initially to configure pkexec if you have not
configured pkexec yourself to allow the Gambas runtime 'gbr3', after that you can
create menu items / launchers or just double click the application file, but not before.
Usage:
At launch it reads the grub configuration file and lists the menu items, finds the default and
the timeout.
Menu entries can be deleted, moved up or down and the default can be set. As can the Timeout.
Operation/buttons are self explainitory.
TO SAVE CHANGES YOU MUST RUN THIS PROGRAM AS ROOT
Disclaimer..
This program works fine as is and has for me for 9 years when it was only a Gambas2 app
but if the grub configuration format has a major change it may stop functioning as
expected and could cause boot faliure.
In the 9 years I've been using it the only format change i had to deal with was the Timeout time
setting moved somewhere else and the one i was setting didn't change it anymore. no big problem
and was soon resolved. updated , changed from gtk to qt to stop layout errors