Apr 182010

Note: This program is only for grub-legacy (0.9x). Current grub versions, 1.98+, are supported by more recent grub-choose-default versions, see GrubChooseDefault.

Do you have a dual boot system? Isn’t it annoying when you want to reboot from Linux into Windows or vice-versa, and you have to wait for the machine to shut down, BIOS to initialize just so that you can now select the OS that you want to boot into?

grub-choose-default gives you a GUI that you can use to easily select the next default for grub and you can go and grab a snack while your computer reboots without having to wait for anything.

It’s a very simple program that just reads your grub menu entries and then lets you click on the one you want to be the next default.

In grub’s menu.lst file you need to specify default saved, so that grub consults the file default in the grub directory to see which entry it should boot. That file is then modified by grub-choose-default

grub-choose-default is written in Python (which is required to be installed at the moment) and works under Linux and Windows.

Under Linux it reads /boot/grub/menu.lst and writes your choice to /boot/grub/default

Under Windows you need to get access to your Linux /boot. If you are running ext2/3, then you can use Ext2IFS, which gives you access to your ext2/3 partitions as regular drives under Windows. grub-set-default currently needs this and thus does not work with /boot on reiserfs or other filesystems (unless someone can point me to a similar FS driver as for Ext2IFS).
Then grub-choose-default searches all your drives for a grub/menu.lst or a boot/grub/menu.lst. There currently is no way to specify manually where menu.lst resides, please let me know if this is needed.

Introduced in version 0.2 is the ability to reboot right after the new grub default has been set. Under Linux there are many different ways to start the logging off procedure — dependent on the desktop environment that you are using. For that reason (and since any program ran through sudo won’t be able to interact with the desktop environment of the regular user), the reboot is handled by a wrapper script. See the reboot/ subdirectory for supplied scripts. At the moment only scripts for xfce4 and gnome have been included, but it shouldn’t be very hard to adjust them to your current desktop environment. If you do so, please email me your script, and I’ll include it in the next release.

  • Python
  • Python Tk module (included by default under Windows, for Linux might be an extra package (i.e. python-tk for Debian)
  • Windows: Access to /boot as regular files (see above)

grub-choose-default is released under the GNU GPL v2

  • 2008-05-29 – Version 0.3Applying patches from Kjell Braden to fix minor crashes and to add a man page.
  • 2007-08-06 – Version 0.2Addition of reboot feature, checking menu.lst for correct default saved settings.
  • 2007-01-18 – Version 0.1First public release, please check for bugs!

Comments, bug reports, etc. are very welcome. Please look for my email address in the included README file.

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>