LinuxQuestions.org
Review your favorite Linux distribution.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices

Reply
 
Search this Thread
Old 08-28-2006, 02:21 PM   #1
Excessive
LQ Newbie
 
Registered: Aug 2006
Distribution: Slackware 10.2
Posts: 7

Rep: Reputation: 0
Bootsplash on Slackware 10.2


Here is a quick how-to I wrote for installing and configuring Bootsplash on Slackware 10.2 with Kernel 2.6.17.7. I hope it will be useful. It was really annoying to post 3 messages before posting my tutorial. Anyway, here we go

Slackware Linux 10.2 Bootsplash Quick Howto
-------------------------------------
by Excessive

This document explains how to set up Bootsplash on a Slackware Linux 10.2 with Kernel 2.6.17.7.

1. Getting files

First, we have to get the required packages from www.bootsplash.org:

a. Bootsplash kernel patch:
ftp://ftp.openbios.org/pub/bootsplas....6-2.6.15.diff

b. Bootsplash utilities:
ftp://ftp.openbios.org/pub/bootsplas...-3.0.7.tar.bz2

c. Generic Linux theme:
ftp://ftp.openbios.org/pub/bootsplas...-Linux.tar.bz2

Please extract these archives to seperate folders. For example:

bootsplash-3.0.7.tar.bz2 to ~/bootsplash/tools
Theme-Linux.tar.bz2 to ~/bootsplash/themes

with tar or Midnight Commander (mc) before proceeding.

2. Preparing:

a. Patch your kernel:

Become root (via su) and navigate to /usr/src/linux directory (provided it is pointing the 2.6.17.7 kernel)

# cd /usr/src/linux

# patch -p1 < /path/to/bootsplash-3.1.6-2.6.15.diff

file drivers/char/keyboard.c
Hunk #1 succeeded at 1160 (offset 98 lines).
patching file drivers/char/n_tty.c
Hunk #1 succeeded at 1298 (offset 6 lines).
patching file drivers/char/vt.c
Hunk #1 succeeded at 3238 (offset -22 lines).
patching file drivers/video/Kconfig
Hunk #1 succeeded at 1473 (offset 4 lines).
patching file drivers/video/Makefile
patching file drivers/video/bootsplash/Kconfig
patching file drivers/video/bootsplash/Makefile
patching file drivers/video/bootsplash/bootsplash.c
patching file drivers/video/bootsplash/bootsplash.h
patching file drivers/video/bootsplash/decode-jpg.c
patching file drivers/video/bootsplash/decode-jpg.h
patching file drivers/video/bootsplash/render.c
patching file drivers/video/console/bitblit.c
patching file drivers/video/console/fbcon.c
Hunk #4 succeeded at 1104 (offset -4 lines).
Hunk #5 succeeded at 1729 (offset -6 lines).
Hunk #6 succeeded at 1819 (offset -4 lines).
Hunk #7 succeeded at 1965 (offset -6 lines).
Hunk #8 succeeded at 2083 (offset -3 lines).
Hunk #9 succeeded at 2207 (offset -3 lines).
Hunk #10 succeeded at 2413 (offset -3 lines).
patching file drivers/video/console/fbcon.h
patching file drivers/video/vesafb.c
Hunk #1 succeeded at 167 (offset -34 lines).
patching file include/linux/console_struct.h
patching file include/linux/fb.h

#

b. Now your kernel is patched, its time for us to enable bootsplash in the kernel:

# make menuconfig

Under Device Drivers > Block Devices

<*> RAM disk
(1) Default number of RAM disks
(4096) Default RAM disk size (kbytes) (NEW)[*] Initial RAM filesystem and RAM disk (initramfs/initrd) support

Under Device Drivers > Graphics Support

<*> Support for frame buffer devices[*] VESA VGA graphics support

Under Console display driver support
[*] Video mode selection support
<*> Framebuffer Console support[*] Select compiled-in fonts[*] VGA 8x8 font[*] VGA 8x16 font

Under Logo configuration

[ ] Bootup logo (Disable it)

Under Bootsplash configuration
[*] Bootup splash screen

Save your new kernel configuration and compile:

# make ; make install ; make modules_install

CHK include/linux/version.h
CHK include/linux/compile.h
Kernel: arch/i386/boot/bzImage is ready (#6)
Building modules, stage 2.
MODPOST
Added Linux *
INSTALL drivers/hwmon/hwmon.ko
INSTALL .....
.
.
if [ -r System.map -a -x /sbin/depmod ]; then /sbin/depmod -ae -F System.map 2.6.17.7; fi

#

c. Compile the splash utility:

Navigate to the directory which you extracted the utilities (as a normal user):

$ cd ~/bootsplash/tools/utilities
$ make splash
gcc -Os -Wall -I/usr/include/freetype2 -L/usr/lib splash.c -o splash

Now become root and copy splash to /sbin/ :

# cp splash /sbin/

d. As now everything is in order, let's create our bootsplash configuration:

# mkdir /etc/bootsplash
# mkdir /etc/bootsplash/themes/

After creating directories, copy the contents of ~/bootsplash/themes to /etc/bootsplash/themes directory.
Again, copying with Midnight commander is easiest

After copying the contents of themes directory, a directory named Linux will be created at /etc/bootsplash/themes directory.

Let's create our initrd image with splash utility:

Recommendation: if you have a /boot/initrd.splash, remove it before issuing the command below.

# /sbin/splash -s -f /etc/bootsplash/themes/Linux/config/bootsplash-1024x768.cfg >> /boot/initrd.splash

Now, open your /etc/lilo.conf and add three lines:

vga = 791 (under # VESA framebuffer console @ 1024x768x64k line)
append="splash=silent" (under root = /dev/*** line)
initrd=/boot/initrd.splash (under append="splash=silent" line)

and save lilo.conf. after saving, execute the command:

# lilo
Added Linux *
#

and reboot.

Congratulations! You now have a brand new Bootsplash background under your beloved Slackware 10.2 system.
You can change the images of your theme at /etc/bootsplash/themes/Linux/images. Be sure to use:

# rm /boot/initrd.splash
# /sbin/splash -s -f /etc/bootsplash/themes/Linux/config/bootsplash-1024x768.cfg >> /boot/initrd.splash

after changing your images. If for some reason, your image doesn't show up at the console, check the size of the image, and resave it with gimp. It will work that way.
 
Old 08-28-2006, 02:58 PM   #2
Randux
Senior Member
 
Registered: Feb 2006
Location: Siberia
Distribution: Slackware & Slamd64. What else is there?
Posts: 1,705

Rep: Reputation: 54
And if you want a nice graphic for your lilo menu:

http://www.linuxquestions.org/questi...d.php?t=418094

Thanks for your guide! I will look at it. Together this should be everything anyone needs to know for graphics from power-on until sign-on!
 
Old 08-28-2006, 11:04 PM   #3
drkstr
Senior Member
 
Registered: Feb 2006
Location: Seattle, WA: USA
Distribution: Slackware 11.0
Posts: 1,191

Rep: Reputation: 45
Thanks for the info. Just out of curiosity, is this different (better) then then turning on the built in Device Drvers->Graphic Support->Logo configuration
Then run
Code:
pngtopnm logo.png | pnmtoplainpnm > logo_linux_clut224.ppm
cp logo_linux_clut224.ppm /usr/src/linux/drivers/video/logo/
<recompile kernel>

This is what I currently have set up, but I'm trying to figure out how to get an animated logo.

Thanks again!
...drkstr
 
Old 08-29-2006, 08:34 AM   #4
Excessive
LQ Newbie
 
Registered: Aug 2006
Distribution: Slackware 10.2
Posts: 7

Original Poster
Rep: Reputation: 0
It's way better than that. You have to read documentation of Bootsplash at www.bootsplash.org to get animated screens.

I'll also include progress bar setup this night, and post it here.
 
Old 12-17-2006, 05:50 AM   #5
Bruce Hill
HCL Maintainer
 
Registered: Jun 2003
Location: Tupelo, MS
Distribution: Gentoo
Posts: 6,926

Rep: Reputation: 124Reputation: 124
Just found this thread and wondered how the progress bar setup came along ...
 
Old 12-30-2006, 11:43 PM   #6
drkstr
Senior Member
 
Registered: Feb 2006
Location: Seattle, WA: USA
Distribution: Slackware 11.0
Posts: 1,191

Rep: Reputation: 45
Quote:
Originally Posted by Bruce Hill
Just found this thread and wondered how the progress bar setup came along ...
Hi bruce,

I just now got the progress bar working and thought I would post what I did here in case you (or anyone else) were still curious.

First, create the file /etc/rc.d/rc.bootsplash:
Code:
#! /bin/sh
#
# rc.bootsplash

function progressbar()
{
	if [ $# != 1 ]
		then
        	echo "Usage: progressbar {progress}"
		exit 1
       	fi
	echo "show $(( 65534 * $1 / 100 ))" > /proc/splash
}
#
function animate()
{
	if [ $# = 0 ]
		then
               	echo "Usage: animate {hook}"
		exit 1
       	fi
	splash "$*"
}
You would then open up your /etc/rc.d/rc.S and add to the beggining:

Code:
. /etc/rc.d/rc.bootsplash
progressbar 0
Then add the line "progressbar x" under every major event, where x is steadily increasing to 50. Repeat for the rc.M except use numbers from 50 - 100.

The incrementing and number ranges are just preference, and may want to be changed to increment stuff in the rc.local or sysvinit scripts (if any).

Also, I found it necessary to add a special animation if the file system check is initiates so the user doesn't think the boot up stalled and hit the kill switch.

Hope this helped!

Best regards,
...drkstr

**edit**
PS: Thanks Excessive, you were right. It's much nicer!

Last edited by drkstr; 12-30-2006 at 11:46 PM.
 
Old 06-27-2008, 02:31 AM   #7
sidd-ua
LQ Newbie
 
Registered: Jun 2008
Location: Kyiv, Ukraine
Posts: 7

Rep: Reputation: 0
Hello. Sorry, I'm bad speak English
So I did everything, as be written in how-to. But after rebooting I got this error:
Quote:
RAMDISK: Couldn't find valid RAM disk image starting at 0.
No filesystem could mount root, tried:
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(3,6)
Where could I be mistaken? My distribution is Slackware 12.0.
Thanks for your help.

Last edited by sidd-ua; 06-27-2008 at 02:32 AM.
 
Old 06-27-2008, 10:18 AM   #8
gnashley
Amigo developer
 
Registered: Dec 2003
Location: Germany
Distribution: Slackware
Posts: 4,749

Rep: Reputation: 461Reputation: 461Reputation: 461Reputation: 461Reputation: 461
The method described in this old thread will not work with slackware-12. You need to search this forum for newer postings about bootsplash and there is a slackwiki page with directions.

Newer kernels which use the intramsfs have to have the initrd file created in a different way than what is described here.
 
Old 06-27-2008, 11:19 AM   #9
sidd-ua
LQ Newbie
 
Registered: Jun 2008
Location: Kyiv, Ukraine
Posts: 7

Rep: Reputation: 0
Quote:
Originally Posted by gnashley View Post
The method described in this old thread will not work with slackware-12. You need to search this forum for newer postings about bootsplash and there is a slackwiki page with directions.

Newer kernels which use the intramsfs have to have the initrd file created in a different way than what is described here.
Thanks. Then I'll search manuals for my Slack
 
  


Reply

Tags
bootsplash, lilo, slackware


Thread Tools Search this Thread
Search this Thread:

Advanced Search

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 Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
bootsplash on slackware 10.2 fireedo Slackware 4 12-06-2005 01:48 PM
Bootsplash - Slackware - Kernel 2.6.6 - NOT working pat99 Linux - Software 3 06-23-2004 12:29 PM
How to use bootsplash in Slackware 9.1? rsamurti Slackware 1 05-22-2004 08:16 PM
bootsplash in slackware problem teona Linux - Software 3 05-20-2004 12:48 PM
Bootsplash in Slackware ! Cdzin Slackware 15 03-03-2004 10:20 AM


All times are GMT -5. The time now is 05:25 AM.

Main Menu
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
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration