LinuxQuestions.org
Review your favorite Linux distribution.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - General
User Name
Password
Linux - General This Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place.

Notices


Reply
  Search this Thread
Old 05-23-2007, 11:11 AM   #1
Nemus
Member
 
Registered: Apr 2007
Distribution: Fedora/Ubuntu
Posts: 63

Rep: Reputation: 15
Creating a custom boot splash screen


how would I go about creating a custom boot splash screen?

I am running ubunutu 7.0.4 with gnome, but I figured this would be a general linux questions.
 
Old 05-24-2007, 04:09 AM   #2
SCerovec
Senior Member
 
Registered: Oct 2006
Location: Cp6uja
Distribution: Slackware on x86 and arm
Posts: 2,471
Blog Entries: 2

Rep: Reputation: 980Reputation: 980Reputation: 980Reputation: 980Reputation: 980Reputation: 980Reputation: 980Reputation: 980
Talking easy (i hope :-) )

Firstly download the bootsplash package...
then be nice :-) and do some homework about bootsplash and the kernel and the required format of the jpg-images... they have site, lookup the doc from the package...

Then come back for more help if needed...
 
Old 05-24-2007, 09:58 AM   #3
Nemus
Member
 
Registered: Apr 2007
Distribution: Fedora/Ubuntu
Posts: 63

Original Poster
Rep: Reputation: 15
Quote:
Originally Posted by SCerovec
Firstly download the bootsplash package...
then be nice :-) and do some homework about bootsplash and the kernel and the required format of the jpg-images... they have site, lookup the doc from the package...

Then come back for more help if needed...
thank you for your reply but did you mean?

www.bootsplash.org

I am mainly looking for a point in the right direction, and I was just wondering what everyone else used to create bootsplash images.

thank you
~Nemus
 
Old 05-25-2007, 04:04 AM   #4
SCerovec
Senior Member
 
Registered: Oct 2006
Location: Cp6uja
Distribution: Slackware on x86 and arm
Posts: 2,471
Blog Entries: 2

Rep: Reputation: 980Reputation: 980Reputation: 980Reputation: 980Reputation: 980Reputation: 980Reputation: 980Reputation: 980
Thumbs up Right on track

Quote:
Originally Posted by Nemus
thank you for your reply but did you mean?

www.bootsplash.org

I am mainly looking for a point in the right direction, and I was just wondering what everyone else used to create bootsplash images.

thank you
~Nemus
Yap, that's the site :-)

Now, if you have a vanilla kernel (the one from kernel.org) You have to apply the patch first, reconfigure with bootsplash and without boot-logo, then make all of the new kernel and install it...

If You have a system that depends on additional patches, You have to apply them too before configuring the new kernel too...

After You have tested the new kernel for a while, (and probably re-reconfigured+re-maked it too ;-) ), go on and make your own bootsplash theme for it.

Except lilo you can also add a nice graphic to grub now too. Lookup for the proper grub-package (with splash enabled) or make it from source if You wish.

The important thing to remember for grub-splash is that You need a indexed 15 color image (despite the 16 bits allocated per pixel) in .xpm format. Avoid soft gradients in favor of even-tone areas for nicer results. ;-)

Have a nice hacking.
 
Old 05-25-2007, 11:36 AM   #5
Nemus
Member
 
Registered: Apr 2007
Distribution: Fedora/Ubuntu
Posts: 63

Original Poster
Rep: Reputation: 15
Unhappy How would I create a theme?

Quote:
Originally Posted by SCerovec
Yap, that's the site :-)

Now, if you have a vanilla kernel (the one from kernel.org) You have to apply the patch first, reconfigure with bootsplash and without boot-logo, then make all of the new kernel and install it...

If You have a system that depends on additional patches, You have to apply them too before configuring the new kernel too...

After You have tested the new kernel for a while, (and probably re-reconfigured+re-maked it too ;-) ), go on and make your own bootsplash theme for it.

Except lilo you can also add a nice graphic to grub now too. Lookup for the proper grub-package (with splash enabled) or make it from source if You wish.

The important thing to remember for grub-splash is that You need a indexed 15 color image (despite the 16 bits allocated per pixel) in .xpm format. Avoid soft gradients in favor of even-tone areas for nicer results. ;-)

Have a nice hacking.
I've got the kernel patched and I am able to change the boot splash theme with *.so files I download from gnome-look, but I am unable to create my own.

I've been using the following guides:

https://help.ubuntu.com/community/US...omizationHowto
http://www.taimila.com/osx-guide-2.php


I am able to compile a picture from a *.png file, but when I set it to boot it doesn't display anything. I think I am doing something wrong when I compile the picture.

I downloaded the bootsplash.org bootsplash userspace utilities and scripts, but I am unable to compile the utility
ftp://ftp.bootsplash.org/pub/bootspl...-3.0.7.tar.bz2


this is the out put I am getting:

In file included from ttf.c:13:
/usr/include/freetype2/freetype/freetype.h:20:2: error: #error "`ft2build.h' hasn't been included yet!"
/usr/include/freetype2/freetype/freetype.h:21:2: error: #error "Please always use macros to include FreeType header files."
/usr/include/freetype2/freetype/freetype.h:22:2: error: #error "Example:"
/usr/include/freetype2/freetype/freetype.h:23:2: error: #error " #include <ft2build.h>"
/usr/include/freetype2/freetype/freetype.h:24:2: error: #error " #include FT_FREETYPE_H"
ttf.c: In function ‘rendertext’:
ttf.c:802: warning: pointer targets in assignment differ in signedness
make: *** [ttf.o] Error 1

I think I am missing a freetype library or something, but I did an apt-cache search and I already had all the freetype packages.


I tried downloading the .diff.gz file I unziped it and ran it ( I also don't understand what it does exactly or why I would need it )

and this is the following output I get:

ftp://ftp.bootsplash.org/pub/bootspl...2.6.21.diff.gz

./bootsplash-3.1.6-2.6.21.diff
diff: linux-2.6.21-orig/drivers/char/keyboard.c: No such file or directory
diff: linux-2.6.21/drivers/char/keyboard.c: No such file or directory
./bootsplash-3.1.6-2.6.21.diff: line 2: ---: command not found
./bootsplash-3.1.6-2.6.21.diff: line 3: +++: command not found
./bootsplash-3.1.6-2.6.21.diff: line 4: @@: command not found
./bootsplash-3.1.6-2.6.21.diff: line 6: syntax error near unexpected token `KERN_WARNING'
./bootsplash-3.1.6-2.6.21.diff: line 6: ` printk(KERN_WARNING "keyboard.c: can't emulate rawmode for keycode %d\n", keycode);'

So then my real questions would be how do I create a theme?

I read some where that gimp 2.3 has a utility that helps you create a boot splash theme. I think my next step is going to be messing with gimp.

all I really what to do is display an image during the boot process that I created(not change the grub background image). personally at this point I don't care about animation. I just want to take things one step at a time.

anyway thank you for your help I really appreciate it.

~ Nemus
 
Old 05-26-2007, 04:14 AM   #6
SCerovec
Senior Member
 
Registered: Oct 2006
Location: Cp6uja
Distribution: Slackware on x86 and arm
Posts: 2,471
Blog Entries: 2

Rep: Reputation: 980Reputation: 980Reputation: 980Reputation: 980Reputation: 980Reputation: 980Reputation: 980Reputation: 980
Lightbulb it's a small step for a man... ;-)

As i was standing 'in your shoes' a while a go, I'm going to make a oversight of the 'splashed' boot process:

1. the kernel gets loaded
2. the initrd containig a bootsplash-tail gets loaded
3. control is passed to the kernel
4. When the time is right, the bootsplash code examines the initrd for the bootsplash-tail
5a. if no bootsplash-tail is found, continue without splash
5b. the bootsplash-tail is processed and the adequate images are loaded into framebuffer
6. kernel continues booting
7. the init invokes the initscripts
8. bootsplash routines, bundled inside the initscripts update the progressbar according to the theme
9. init invokes the runlevel-specific scripts
10. as init-scripts pass over to login, bootsplash exits.

This way You have a chance to 'dig your own way out' instead of seeking thru error/mistake.

prerequisites:

1. kernel that is able to splash (the .diff.gz patches the kernel source)
2. initscripts that are able to update the splash's progress bar
3. bootsplash tools (for making the splash and for the initscripts)
4. right framebuffer (eg. vga=791 for 1024x768 64k) parameter for the kernel
5. initrd with embeded image(s) of the right resolution and bpp. (eg. 1024x768 64k (16bpp))
6. bootsplash theme in /etc/bootsplash/
7. the splash trigger in the kernel's boot parameters (splash=silent)

Where did you get confused? I can 'spew' more details for that point. ;-)
Please post even You make it thru :-)

regards

Last edited by SCerovec; 05-26-2007 at 04:18 AM.
 
Old 05-31-2007, 01:04 PM   #7
Nemus
Member
 
Registered: Apr 2007
Distribution: Fedora/Ubuntu
Posts: 63

Original Poster
Rep: Reputation: 15
Wink the next step?

okay I think I am starting to understand how to do this:

I use the splash program from the utilities I downloaded from www.bootsplash.org:
using this command from the documentation:

sudo ./splash -s -f \ /usr/src/bootsplash-3.0.7/Utilities/boot.cfg \ >> /boot/initrd.splash



and that should append my image to my initrd file right?

I am able to execute the command but when I reboot it looks like it trys to load the image but then fails for some reason

it does the blink then blink out( like when a computer is changing resolution),but then it goes back to text.

I am thinking it has something to do with the image color or maybe my resolution settings or maybe I didn't patch the kernel correctly I will spend more time trouble shooting it to see what happens tomorrow.

thank you
~ Nemus

here is my boot.cfg file:

# This is the configuration file for the 800x600 bootsplash picture.
# This file is necessary to specify the coordinates of the text box on
# the splash screen.

# config file version
version=3

# should the picture be displayed?
state=1

# fgcolor is the text forground color.
# bgcolor is the text background (i.e. transparent) color.
fgcolor=7
bgcolor=5

# (tx, ty) are the (x, y) coordinates of the text window in pixels.
# tw/th is the width/height of the text window in pixels.
tx=20
ty=20
tw=760
th=560

# name of the picture file (full path recommended)
jpeg=/opt/boot.jpg

progress_enable=1
percent=6000

# progress bar
box silent inter 224 393 224 404 #fd8100
box silent 224 393 601 404 #fd8100
box inter 224 393 224 404 #fd8100
box 224 393 601 404 #fd8100
box noover 15 17 785 583 #333333E0

overpaintok=1
 
Old 06-01-2007, 08:28 AM   #8
SCerovec
Senior Member
 
Registered: Oct 2006
Location: Cp6uja
Distribution: Slackware on x86 and arm
Posts: 2,471
Blog Entries: 2

Rep: Reputation: 980Reputation: 980Reputation: 980Reputation: 980Reputation: 980Reputation: 980Reputation: 980Reputation: 980
test the next :-)

Quote:
Originally Posted by Nemus
okay I think I am starting to understand how to do this:

I use the splash program from the utilities I downloaded from www.bootsplash.org:
using this command from the documentation:

sudo ./splash -s -f \ /usr/src/bootsplash-3.0.7/Utilities/boot.cfg \ >> /boot/initrd.splash



and that should append my image to my initrd file right?
Right.
Quote:
I am able to execute the command but when I reboot it looks like it trys to load the image but then fails for some reason

it does the blink then blink out( like when a computer is changing resolution),but then it goes back to text.

I am thinking it has something to do with the image color or maybe my resolution settings or maybe I didn't patch the kernel correctly I will spend more time trouble shooting it to see what happens tomorrow.
On slackware, there is a lilo.conf and grub's menu.lst file containing the valid (and worthy) values for vga=
You have to match the correct resolution/bpp for both the image and the fb driver.
As I guess You ain't slackin' I post You the part of them:
Code:
# Normal VGA console
# vga = normal
# VESA framebuffer console @ 1024x768x64k
# vga=791
# VESA framebuffer console @ 1024x768x32k
# vga=790
# VESA framebuffer console @ 1024x768x256
# vga=773
# VESA framebuffer console @ 800x600x64k
# vga=788
# VESA framebuffer console @ 800x600x32k
# vga=787
# VESA framebuffer console @ 800x600x256
# vga=771
# VESA framebuffer console @ 640x480x64k
# vga=785
# VESA framebuffer console @ 640x480x32k
# vga=784
# VESA framebuffer console @ 640x480x256
# vga=769
Re-check the boot line parameters of Your kernel

Easy way is to examine the output od dmesg:
Code:
dmesg | less
or if dmesg is bloated:
less /var/log/dmesg
There one can find the kernel's commandline, the framebuffer options and how is bootsplash dealing with the initrd.
Quote:

here is my boot.cfg file:

# This is the configuration file for the 800x600 bootsplash picture.
# This file is necessary to specify the coordinates of the text box on
# the splash screen.

# config file version
version=3

# should the picture be displayed?
state=1

# fgcolor is the text forground color.
# bgcolor is the text background (i.e. transparent) color.
fgcolor=7
bgcolor=5

# (tx, ty) are the (x, y) coordinates of the text window in pixels.
# tw/th is the width/height of the text window in pixels.
tx=20
ty=20
tw=760
th=560

# name of the picture file (full path recommended)
jpeg=/opt/boot.jpg

progress_enable=1
percent=6000

# progress bar
box silent inter 224 393 224 404 #fd8100
box silent 224 393 601 404 #fd8100
box inter 224 393 224 404 #fd8100
box 224 393 601 404 #fd8100
box noover 15 17 785 583 #333333E0

overpaintok=1
The file seems ok. About the .jpg I would recommend to put it near the file (a dir/ in the file's path containig the pics?)
Otherwise no remarks.
Post on regardless of outcome ;-)
I'm up to guide You 'till You make it...
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Creating kde splash screen boot screen JUDOLIZARD Linux - Newbie 6 01-30-2009 12:32 PM
Custom Splash Animated Boot Screen sadarax Linux - General 2 03-09-2006 10:47 PM
Custom LILO Boot Splash Slycer Linux - General 0 02-11-2005 04:24 AM
custom linux splash screen Darkfalz Linux - Software 1 12-17-2004 03:38 PM
need help with creating a custom boot image linuCs Linux - Distributions 0 07-23-2004 09:23 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - General

All times are GMT -5. The time now is 10:20 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration