How to have a graphical GRUB (Updated Package Available)

How to do things, solutions, recipes, tutorials
Post Reply
Message
Author
User avatar
CatDude
Posts: 1563
Joined: Wed 03 Jan 2007, 17:49
Location: UK

How to have a graphical GRUB (Updated Package Available)

#1 Post by CatDude »

Hello All

Edit:
  • The original package i created has now been removed.
    The one below is a lot better anyway.
Edit 2:
  • I have created a new package grub-gfxboot-ext4-and-inode256-compatible.tar.gz (i recommend that you use this one.)
    it has support for ext4 partitions, partitions with an inode size of 256, and most importantly a gfxmenu..
Edit 3: Important Note: (This applies to: grub-gfxboot-for-puppy-updated.tar.gz only.)
  • If you are using partitions formatted as ext4
    Then this package is of no use to you, forget it.
    this particular version of GRUB cannot boot anything on those partitions.

    Also, if you have used either Puppy-4.30 or Puppy-4.31 to create your partitions,
    then this package WILL NOT work.
    If you used a different linux distro altogether to create your partitions,
    then this package MAY NOT work.
    Read this post for the reason why, and how to check your own partitions
    This package will not work with such partitions (it requires an inode size of 128)

    GParted in both Puppy-4.20 and Puppy-4.21 creates partitions with an inode size of 128
    in fact both of these versions (4.20 and 4.21) already have my graphical grub installed in them,
    so you may just want to use one of those rather than this package.

    ######################################################
After reading this: How to use gfxmenu in grub?
I just had to look into it a little

What i ended up doing is, i took the files from Mepis (Thankyou Mepis :roll: )
  • All of the following is done entirely at your own risk.
    Please don't blame me if things go pear shaped.
    (they shouldn't)

    ####################################################
    # PLEASE BACKUP YOUR menu.lst BEFORE DOING ANYTHING SUGGESTED BELOW. #
    ####################################################
  • The following was tested in both:

    TEENpup-2008 (FULL install)
    and
    Puppy Watchdog-v1.1 (Frugal install)

    On two different computers.
    (It has since been tested on a lot more Puppy versions including: 3.01, 4.00, 4.20, 4.21, 4.31)
In the following Steps,
if you use the grub-gfxboot-ext4-and-inode256-compatible.tar.gz (recommended)
then substitute grub-gfxboot_0.97-36mepis1.pet wherever it mentions grub-gfxboot_0.97-18mepis1.pet


Step 1.
  • Download the attached file, grub-gfxboot-for-puppy-updated.tar.gz or better yet, use grub-gfxboot-ext4-and-inode256-compatible.tar.gz instead.
    and extract it to a directory somewhere.
    This file includes the following:
    • grub-gfxboot_0.97-18mepis1.pet
      pupsta1 (note: that is pupsta with a number 1. This is a new one created from the Suse source files.)
      pupsta1.jpg (a screengrab, may be useful as a guide if you create your own message file.)
      README.txt (installation instructions, and how to create your own message file.)
Step 2.
  • Make sure you have made a backup of your menu.lst
    You may want to rename it to original.menu.lst or good.menu.lst,
    anything you like really just to save any confusion in Step 5.
    For the purpose of this howto, we will rename it to original.menu.lst
    Save it to: /root/my-documents

    Now install the pet package: grub-gfxboot_0.97-18mepis1.pet
    (Just click on it to install it)
Step 3.
  • Now Re-install GRUB via the menu (System > Grub Bootloader Config)
    to wherever it was installed initially.

    ##### When asked, i ALWAYS install to the MBR (Master Boot Record) #####
    i don't know if it makes a difference or not, it is just MY preference.

    Just do whatever it was that worked for you previously.
Step 4.
  • Now copy the file: pupsta1
    to: /somewhere/boot/grub
    Where somewhere = the hard drive partition you installed grub to.
Step 5.
  • Amend your menu.lst (The new one)

    Go to the directory where you installed GRUB: somewhere/boot/grub
    Where somewhere = the hard drive partition you installed grub to.

    Now right click on the file menu.lst and choose Open As Text
    Next go to /root/my-documents
    and right click on original.menu.lst and choose Open As Text

    You now have both menu.lst files open in the text editor.

    Select the original.menu.lst file in the text editor,
    now select (highlight) with the mouse EVERYTHING BELOW
    from and including the line that says:

    Code: Select all

    # Start GRUB global section
    
    (Basically everything EXCEPT the first 6 or so lines, that look similar to below)

    Code: Select all

    # GRUB configuration file '/boot/grub/menu.lst'.
    # generated by 'grubconfig'.  Mon Sep  7 11:40:59 2009
    #
    # The backup copy of the MBR for drive '/dev/hda' is
    # here '/boot/grub/mbr.hda.21367'.  You can restore it like this.
    # dd if=/boot/grub/mbr.hda.21367 of=/dev/hda bs=512 count=1
    
    With everything still selected (highlighted)
    Press Ctrl + C
    to copy it all.

    Now select the menu.lst file in the text editor,
    and select the same as in the previous file.
    EVERYTHING BELOW and including the line that says:

    Code: Select all

    # Start GRUB global section
    
    With everything still selected (highlighted)
    Press Delete

    Now
    Press Ctrl + V
    to paste in what you copied from the file original.menu.lst

    Now
    Press Ctrl + S
    to save your changes

    Finally edit the global section
    to look like below.

    Here's how mine looks:

    Code: Select all

    # Start GRUB global section
    timeout 10
    default 3
    color light-gray/blue black/light-gray
    gfxmenu /boot/grub/pupsta1
    # End GRUB global section
    Obviously if you are using a different message file, then make the appropriate change to the gfxmenu line.
    Also make any necessary changes to the timeout and default (use whatever was in your original working menu.lst)

    Once again, save your changes
    Press Ctrl + S

    Close both files in the text editor
    then close the text editor (and any other windows you may have open)
    and reboot.

    You should now see similar to the picture pupsta1.jpg below.
##########################################################
If you wanted, instead of using the message file pupsta1
you could use one of the other message files shown below: (they have all been updated and are now configurable.)

Click on an image to see larger image.
  • Image Image Image Image
    message.pup1.............message.pup2.............message.pup3.............message.pup4

    Image Image Image Image
    message.pup5.............message.pup6.............message.pup7.............message.pup8

    Image Image Image Image
    message.pup9.............message.pup10...........message.pup11...........message.pup12

    Image Image Image Image
    message.pup13...........message.pup14...........message.pup15...........message.pup16
You can download them here: puppylinuxstuff.meownplanet.net

You can also find some more in this thread (which explains how to create your own message files) : Message files for the GRUB gfxmenu

There is also a flash howto on how to create your own message here for anyone that wishes to view it. grub-message-howto
It is based on one of the older message files above, not the new one.

For the above links:
User Name = puppy
Password = linux

Thanks to Caneri for providing the space for them. (Cheers Eric)
New thanks should go to Russoodle for providing space now that Erics site no longer exists.
New thanks go to dejan555 for providing space for the above image files. (cheers mate, i hope you don't mind :roll: )

##########################################################
Please Note:

Recently i managed to compile a new GRUB gfxboot message, from the Suse source files.
This new message file is configurable, whereas the older ones i had posted were not.

Amongst other things,
we can change:
  • The colour of the text.
    The position of the menu entries on the grub boot screen.
    How many entries are displayed before needing to scroll.
    The position of the Boot Options text.


The message file pupsta1 included in the package: grub-gfxboot-for-puppy-updated.tar.gz
is based on this new message file.

So if you fancy creating your own message file, (which isn't as difficult as you may think.)
i suggest using this as the basis of your new message file.

Enjoy

CatDude
.
Note to self:
293 previous
.
Attachments
pupsta1.jpg
(36.61 KiB) Downloaded 9474 times
Last edited by CatDude on Sat 27 Dec 2014, 12:21, edited 18 times in total.
[img]http://www.smokey01.com/CatDude/.temp/sigs/acer-futile.gif[/img]

User avatar
prit1
Posts: 542
Joined: Fri 04 Jan 2008, 00:10
Location: Los Angeles

#2 Post by prit1 »

@CatDude: Thanks for the howto. I will try this out as soon as I get sometime. Maybe within a couple of days and post back. Thanks a lot again.

accessdenied
Posts: 54
Joined: Sun 02 Mar 2008, 13:57

#3 Post by accessdenied »

Catdude, this works perfectly!!!

Configured on Muppy 8.2 and looks great...

I curious on how to change/edit the picture contents as I have the same issue as you when the Linux title is too long and goes past the right side of the screen.

Thanks for sharing!!!!

User avatar
CatDude
Posts: 1563
Joined: Wed 03 Jan 2007, 17:49
Location: UK

#4 Post by CatDude »

Hello accessdenied
accessdenied wrote:Catdude, this works perfectly!!!

Configured on Muppy 8.2 and looks great...
Glad to hear it mate.
accessdenied wrote: I curious on how to change/edit the picture contents as I have the same issue as you when the Linux title is too long and goes past the right side of the screen.
So far i have not been able to figure that out,
but i did download another message (message.mint1)
from here: http://linuxmint.com/forum/viewtopic.php?t=4673

And after a little bit of messing around i ended up with this: (see the pic below)

As you can see, the text does not disappear off the edge like it did with the hacked message.suse

The latter half of the README included in the file grub-gfxboot-for-puppy.tar.gz
explains how to edit these message.xxx files.

The main thing to remember is, do not change any file names (those actually inside the message.xxx file)
And keep the finshed message.xxx file UNDER 170k (NOT necessary with the newer message files.)

Hope this helps.
accessdenied wrote: Thanks for sharing!!!!
My pleasure

CatDude
.
Last edited by CatDude on Fri 30 Aug 2013, 13:42, edited 2 times in total.
[img]http://www.smokey01.com/CatDude/.temp/sigs/acer-futile.gif[/img]

User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

#5 Post by Lobster »

Very nice project . . .
Booting up into very diverse Puppys
would be great for many users 8)

What is the code like? What is it based on?
Could it be used in Dingo or Lassie for boot options (screen size, keyboard etc) or is it too big for this?
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

User avatar
CatDude
Posts: 1563
Joined: Wed 03 Jan 2007, 17:49
Location: UK

#6 Post by CatDude »

Hello Lobster
Lobster wrote:Very nice project . . .
Booting up into very diverse Puppys
would be great for many users 8)
Its not really a project, just something i tried in response to another thread on here asking if it was possible.
As to the diverse puppys, yes i like to try as many as i can mate, i recently had a cleanup so not that many installed at present.
Lobster wrote: What is the code like? What is it based on?
Could it be used in Dingo or Lassie for boot options (screen size, keyboard etc) or is it too big for this?
Everything is in the file i included in the first post, as well as a brief explaination as to what i did to create it, and how to install it.
I presume it would work in most if not all puppies, but dont know about it being used for boot options (screen size, keyboard etc).

CatDude
.

P.S Did you ever get to see the fish
[img]http://www.smokey01.com/CatDude/.temp/sigs/acer-futile.gif[/img]

User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

#7 Post by Lobster »

CatDude wrote:P.S Did you ever get to see the fish
Many thanks for the info
The fish? Did I have an appontment?
What have I forgotten now? :oops:
[checks if head is screwed on]
Last edited by Lobster on Wed 26 Mar 2008, 00:35, edited 1 time in total.
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

User avatar
CatDude
Posts: 1563
Joined: Wed 03 Jan 2007, 17:49
Location: UK

#8 Post by CatDude »

Sorry Lobster

My bad, i was refering to your post in this thread: http://www.murga-linux.com/puppy/viewto ... &start=120
Lobster wrote:
I still haven't seen any fish, however. But that's pretty minor.
Might be minor to you. To me it is life and death . . . :)
But i think i now understand what you meant. :oops: :lol:

CatDude
.
[img]http://www.smokey01.com/CatDude/.temp/sigs/acer-futile.gif[/img]

accessdenied
Posts: 54
Joined: Sun 02 Mar 2008, 13:57

#9 Post by accessdenied »

Catdude, thanks for the info. I'll read up on the readme file and see if I can manipulate the picture and shift the puppy logo more to the left to make room for the menu text..

By the way, I like the color scheme on your new and improve picture.
Can you upload the message.puppy file for that if you don't mind?

Thanks again.

User avatar
CatDude
Posts: 1563
Joined: Wed 03 Jan 2007, 17:49
Location: UK

#10 Post by CatDude »

Hello again accessdenied
accessdenied wrote: By the way, I like the color scheme on your new and improve picture.
Can you upload the message.puppy file for that if you don't mind?

Thanks again.
Certainly

EDIT:
Attachment removed as it will not work with my latest package. (Sorry)

CatDude
.
Last edited by CatDude on Sat 05 Dec 2009, 20:07, edited 1 time in total.
[img]http://www.smokey01.com/CatDude/.temp/sigs/acer-futile.gif[/img]

User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

#11 Post by Lobster »

But i think i now understand what you meant.
:)

You are in a better position than me
I barely understand what I mean . . . :oops:

I do feel some of the initial booting (already much improved)
creates the very first impression of easy or geeky.

We are still a little geeky puppy . . .
In fact I wonder if "DONT PANIC" (Hitch Hikers Guide to the Universe)
flashing during the boot up sequence might amuse, terrify or help . . .

The popularity of WNop proves the need for fish
and other floating eye candy . . .
Barry recently "wasted' two days on look and feel development
(themes). Do we want a reputation as a runt or a poodle?
I suggest pedigree.
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D

User avatar
CatDude
Posts: 1563
Joined: Wed 03 Jan 2007, 17:49
Location: UK

#12 Post by CatDude »

Lobster wrote: We are still a little geeky puppy . . .
In fact I wonder if "DONT PANIC" (Hitch Hikers Guide to the Universe)
flashing during the boot up sequence might amuse, terrify or help . . .
For sure, that would have to be amuse :lol:
Lobster wrote: The popularity of WNop proves the need for fish
and other floating eye candy . . .
Barry recently "wasted' two days on look and feel development
(themes). Do we want a reputation as a runt or a poodle?
I suggest pedigree.
Poodle, fu$%#ng poodle, behave now please.
Pedigree will do i reckon

CatDude
.
[img]http://www.smokey01.com/CatDude/.temp/sigs/acer-futile.gif[/img]

Tui
Posts: 378
Joined: Wed 27 Sep 2006, 11:35
Location: Wellington New Zealand

#13 Post by Tui »

Hi all, I like the idea of the GUI opening window. I think I
have followed the instructions through but can't get the GRUB to open
with a screen like the screenshot.

Starting, I am using the Puppy version EDUPUP, this has the kernel V2.6.21.7

I have got the GRUB installed on a small 25mb part hda2, hda1 being
swap partition.

What I have done, downloaded the file grub-gfxboot-for-puppy.tar.gz
into a directory called NEWGRUB.

Expanded to get :

grub gfxboot_0.97-5_i386.pet
message.puppy
message.suse
readme

then expand the (dot)pet

to where did it go, I don't know ?

what does the: grub gfxboot_0.97-5_i386.pet expand into ?

Only file I could find relating was a file called : grub-gfxboot_0.97-5_i386.files, and located in /root/.packages !

So for me it looks like a bit of a mess!

After doing the edit in menu.1st as suggested, and the adding
of gfxmenu/boot/grub/ after timeout and the #end grub, the rem color
etc. Is the gfxmenu/boot a sub dir somewhere ?

So after a reboot the only thing changed was no more background
BLUE colour, just the text and white border.

How do I solve the problem?

Help help please thanks

Tui

reddawg
Posts: 1
Joined: Sat 05 Apr 2008, 21:47
Location: San Luis Obispo, CA

Graphical Grub - Works!

#14 Post by reddawg »

Catdude -

I really appreciate the notes and the How-To. I am a Linux newbie and was able to follow this easily.

I have since created a number of graphical grub screens. The biggest challenge has been to keep the image "back.jpg" down to around 70K or less. I did receive a couple of errors stating that the message was too large. I have since ensured that before I reboot the message file must be less than 170K and everything works great.

I now have different graphical grub boot screens for my laptop (puppy 3.01) and desktop (Pizza pup 3.01)

Thank You / Windows is toast...

User avatar
CatDude
Posts: 1563
Joined: Wed 03 Jan 2007, 17:49
Location: UK

#15 Post by CatDude »

Hello Tui

Sorry to here that you are having trouble with this.

You did make a copy of your original menu.lst (its best that you do)

Reading your post, i dont see any mention of you RE-INSTALLING GRUB
after installing the pet package. ( in your case re-install it to /dev/hda2 )

Refer to my original post, and try again from Step 3.

If you really want to know where and what was installed via the pet package,
create a copy of it, but change the .pet to .tgz
Then click on it, and it will open with XArchive
click on Select All then Extract
You will now have a new directory called grub-gfxboot_0.97-5_i386
which will show you where everything is being installed to.

Hope you get it working.

To reddawg

Glad to here of your success with it.
Like you have found already, just keep the final message file below 170K and things should be OK.

CatDude
.
[img]http://www.smokey01.com/CatDude/.temp/sigs/acer-futile.gif[/img]

wolfwatcher51
Posts: 149
Joined: Mon 10 Mar 2008, 00:58

#16 Post by wolfwatcher51 »

Well, I thought I could follow these simple directions, but I totally screwed the pooch, so to speak.

I thought I was doing ok but may have messed up the grub reinstall. I thought before I had installed to mbr of first disk so I told it dev/hda1

I did the rest of the procedure and rebooted. When it reboots, I do get the new screen, but it lists windows on sda1, and linux on all the other drives and partitions on hda except puppy301 on hda1.

PLEASE HELP, I have spent a lot of time invested, along with several forum members, setting up puppy as a server for 4 windows boxes, actually more like a NAS and now I have no clue as to how to get it to boot or get "inside" to change menu.lst back to original.

User avatar
nipper
Posts: 150
Joined: Sat 22 Mar 2008, 16:08

#17 Post by nipper »

wolfwatcher51 wrote:Well, I thought I could follow these simple directions, but I totally screwed the pooch, so to speak.

I thought I was doing ok but may have messed up the grub reinstall. I thought before I had installed to mbr of first disk so I told it dev/hda1

I did the rest of the procedure and rebooted. When it reboots, I do get the new screen, but it lists windows on sda1, and linux on all the other drives and partitions on hda except puppy301 on hda1.

PLEASE HELP, I have spent a lot of time invested, along with several forum members, setting up puppy as a server for 4 windows boxes, actually more like a NAS and now I have no clue as to how to get it to boot or get "inside" to change menu.lst back to original.
While the grub menu is up and before it times out to the default entry, push e (e for edit). That will allow you to edit the line and have it point to your Puppy install for this boot (it is only for this boot, it doesn't permanently edit the menu.lst). If this gets you in, then you can edit your menu.lst in the manner that you normally do to point where you want.

This is only going to work if there is nothing wrong with the install and somehow you just lost the menu.lst entry. If other things are wrong too, just giving the correct boot commands to grub may not help.

User avatar
CatDude
Posts: 1563
Joined: Wed 03 Jan 2007, 17:49
Location: UK

#18 Post by CatDude »

Hello wolfwatcher51

You could also boot a LiveCD with "puppy pfix=ram" (without the quotes)
When puppy pauses for 5 seconds, type: puppy pfix=ram
Then when you get to the desktop, mount the partition where your grub directory is. (i assume hda1, from what you said above)

Now open your menu.lst in a text editor (right click on it and Open As Text),
in the same directory you may also see a file called menu.lst.old.#### (where #### are numbers).

If so open that as text also, now copy the contents from this file to your new menu.lst.

What i normally do is just copy everything below the line that says:

# End GRUB global section

then paste it into the new file, in the same place.

Now save the menu.lst, close the text editor, unmount the partition you mounted, then reboot.

When asked if you want to save your settings, answer Do Not Save.

Hopefully this will sort it out.

CatDude
.
[img]http://www.smokey01.com/CatDude/.temp/sigs/acer-futile.gif[/img]

wolfwatcher51
Posts: 149
Joined: Mon 10 Mar 2008, 00:58

#19 Post by wolfwatcher51 »

Thank you nipper and CatDude.

I rebooted and when it got to the graphical screen I pushed e and nothing happened, it just sat there. Pushed e repeatedly and still nothing.

I use this box as a backup/server so I filled the two ide channels with hdds, changed boot order to floppy, USB CDROM, hdd, saved and exited. I hooked up a cd/dvd burner using an external case using usb2 from a pci add in card. When I rebooted, it went right back to the frugal install without reading the live cd in the cd/dvd burner.

Any suggestions before i tear into the box and replace a hdd with the optical disk on the secondary ide channel?

Thanks, Chris.

Edit: Sometimes in the heat of the battle we forget the simpler things. As I typed this it came to me that the pci usb would not get turned on soon enough. So, I moved its connection to the onboard usb 1.1 and rebooted. Sure enough the live cd booted. I was not fast enough though but it booted to the normal frugal looking install. I went to menu.lst and renamed it menu.lst-old and then copied the menu.lst I had backed up to my documents into the grub directory, removed the live cd and rebooted. Looks like it is back to normal now, atleast on the surface. Rebooted again just to make sure and it booted like normal.

WOW, much better now. CatDude, have I given enough information here for you to tell what I did wrong? I can see where the menu.lst that would not work had the contents just like the choices that came up on the graphical, but these are not correct for my system. Was I supposed to edit them to add what was in my menu.lst file? Do you think I could just edit my menu.lst file to uncomment out the timeout line, comment out the color line, and then add the line about the gfxmenu?

Thanks, Chris.

wolfwatcher51
Posts: 149
Joined: Mon 10 Mar 2008, 00:58

#20 Post by wolfwatcher51 »

Ok, I got it.

CatDude thanks for the graphical, very nice.
PLEASE understand that the following is NOT looking to be critical of you or complain in any way. Merely a way for the "lowest common denominator" (noobs) to have success with your great contribution!

I think that you intended your instructions in the how to for people with at least some puppy skills. I am reminded about the old dilemma about knowing how to do it rather than what you are doing. People with experience can follow the instructions and "know" what parts they need to "fill in".

Then there are us noobs, some of which, like me, know very little and so we try to follow instructions explicitly. That is where i went wrong with my install. I failed to look at the new menu.lst file past the grub section to see it would be looking for windows on xx and linux on several other, different partitions. Naturally, that is your set up and nothing like mine, or anybody else with a basic frugal puppy install. I guess it was my perception that the install would modify my menu.lst file, hence the instruction to back it up.

It is our lack of experience that kept us from "knowing" what you meant rather than what you said. There are so many incredibly talented people like yourself in this forum, it was not unreasonable for me to perceive that your install package was "that smart".

I think that it would be easier for us noobs if the instructions said something like, backup your menu.lst file and then modify the original. Uncomment out the timeout line and set for the length of time you want puppy to wait before loading the default version. Comment out the color line. After the color line insert a line with "gfxmenu /boot/grub/message.puppy. Save and exit then reboot and be pleased.

Again, thanks for the graphical and the lesson. Keep up the great work, Chris.

Post Reply