GRUB2/BURG Integration in KDE

No, you’re not having a déjà vu, this is my second post about GRUB2/BURG support for KDM which shows up in PlanetKDE. I am sorry to abuse the planet for publicity, but I have seen quite a bit of confusion as to how KDE should be configured in order to interface with GRUB2/BURG and I would like to get some things straight.

What follows is a step-by-step guide describing how to configure KDE in order to automatically select a GRUB2/BURG entry other than the default when rebooting:

Shutdown Dialog

If you are a GRUB2 user skip the BURG instructions and vice versa.

Step 1. Inform GRUB2/BURG that you plan to use this feature:

GRUB2 instructions:

Open /etc/default/grub in the text editor of your preference (as root) and add the following:

GRUB_DEFAULT=saved

In case a GRUB_DEFAULT option already exists, just set it to “saved”.

BURG instructions:

Edit /etc/default/burg instead. The variable name is the same (GRUB_DEFAULT).

Step 2. Update your GRUB2/BURG menu file:

GRUB2 instructions:

The menu configuration file must contain set default=”${saved_entry}”. You are highly discouraged to manually edit this file, so execute the following command (as root):

grub-mkconfig -o /boot/grub/grub.cfg

Please note that some distributions (i.e. Fedora, Gentoo, Mandriva, openSUSE) use a slightly different naming scheme for GRUB2. So you’d have to adjust the above to the following:

grub2-mkconfig -o /boot/grub2/grub.cfg

BURG instructions:

BURG users should execute the following command (as root):

burg-mkconfig -o /boot/burg/burg.cfg

Step 3. Inform KDE that you are using GRUB2/BURG:

GRUB2 instructions:

Select “Grub2″ as your bootloader under “System Settings > Login Screen > Shutdown > Boot manager”.

BURG instructions:

For KDE >= 4.8.0:

Select “Burg” as your bootloader under “System Settings > Login Screen > Shutdown > Boot manager”.

For KDE < 4.8.0:

Select “Grub2″ as your bootloader under “System Settings > Login Screen > Shutdown > Boot manager”.

Step 4. Create symlinks:

GRUB2 instructions:

This step only applies to Fedora/Gentoo/Mandriva/openSUSE (or any other distribution which uses /boot/grub2 instead of /boot/grub)! If this is not the case for you, skip it.

For KDE >= 4.8.3:

You don’t have to do anything! You may safely skip this step.

For KDE < 4.8.3:

Execute the following commands (as root):

mkdir /boot/grub
ln -s /boot/grub2/grub.cfg /boot/grub/grub.cfg
ln -s /sbin/grub2-reboot /sbin/grub-reboot

In the above commands replace /sbin/ with wherever the grub2-reboot binary is installed. You can easily determine this with “which grub2-reboot”.

BURG instructions:

For KDE >= 4.8.0:

You don’t have to do anything! You may safely skip this step.

For KDE < 4.8.0:

Execute the following commands (as root):

mkdir /boot/grub
ln -s /boot/burg/burg.cfg /boot/grub/grub.cfg
ln -s /sbin/burg-reboot /sbin/grub-reboot

Same rule as above applies here: if the burg-reboot binary is not located under /sbin/, locate it with “which burg-reboot”.

Step 5. Reboot!

That’s it, you’re done! Now either reboot or restart KDM (something like “/etc/init.d/kdm restart”) and you’re all set ;-)

As a side note, GRUB2 Editor (supports BURG) automatically adjusts your configuration to the above (i.e. it automatically performs steps 1 and 2).

Feel free to link to this post in linux forums as a reference. All of the above refer to KDE >= 4.7.

GRUB2 Editor v0.5.5

GRUB2 Editor received another bugfix release today. This is mostly a boring release: no fancy new features so you may as well skip reading.

Changelog:

v.0.5.5 (09/01/2012)

——————–

*ADDED: Experimental BURG support (only commands shared with GRUB2).
*ADDED: Option to disable Plymouth (Advanced -> Linux Kernel Arguments).
*FIXED: Fedora/openSUSE: the GRUB installation is now properly detected.
*FIXED: Encoding issue (UTF-8 encoding is now supported).
*FIXED: A QPackageKit backend bug where previous results were returned.

Please note that BURG “experimental” support is barely tested. The only testing I performed was whether it crashes or not.

Available Translations:

Catalan, Czech, Danish, German, Greek, Spanish, Estonian, French, Irish [Gaelic], Hungarian, Lithuanian, Dutch, Panjabi/Punjabi, Polish, Portuguese, Brazilian Portuguese, Russian, Swedish, Ukrainian, Traditional Chinese.

I would like to thank all KDE translators who were involved. Their work is very much appreciated!

Packages:

There are packages for most major distributions. Please take a look at the Downloads page.