Unlike every other distro, Slackware doesn’t brand anything. Everything is vanilla. So when you boot, you see the original linux penguin logo at the top of your screen.

Download the latest kernel source from kernel.org. I’ll be using here kernel 2.6.32 source and patch. So you understand that you don’t need to download the whole kernel source every-time a new kernel version is released. If you have the previous source or a kernel source which is older, say 2.6.31, then you will need all the subsequent incremental patches from to and you will need to apply them one by one to the kernel source. I’ll just be showing one.

First download the source from kernel.org and the subsequent incremental patches. I just need patch Now get root privilege using “su” or if you prefer to use “sudo” then put that in front of every code. Move the downloaded kernel source to /usr/src. I have been hearing people say that this old method of kernel compiling at /usr/src is outdated and frowned upon, usually /home is preferred nowadays, well not for me. I like the traditional way.

mv /path/to/linux-version.tar.bz2 /usr/src

tar xvjf linux-version.tar.bz2

rm -r linux  [if any]

ln -s linux-version linux

mv /path/to/patch-version.bz2 /usr/src/linux

bunzip2 patch-version.bz2

patch -p1 < patch-version

Note: Replace the “version” accordingly. An useful tip: Use tab completion to save time typing. 😉

Now, it’s time to get the logo. I’m going to upload a ready-made logo for the fellow Slackers, but if you want some other logo then download/create a png image.

Step 1: Open the image in gimp or wherever.

Step 2: Scale the image to 80×80

Step 3: Save the image back to png  format. Name it logo.png.

Now open terminal and type:

pngtopnm logo.png | ppmquant -fs 223 | pnmtoplainpnm > logo_linux_clut224.ppm

cp logo_linux_clut224.ppm /usr/src/linux/drivers/video/logo/

As promised for the Slackers, you may use this one and just copy it over as shown above.

Another logo here.

Now the usual compiling. In my previous guides I showed you how to compile kernel and create an initrd image, this time let’s do it without one.

cd /usr/src/linux

make mrproper

make menuconfig

In General Setup -> Local version – you can use your nick or anything, I use -pdg and then select below “Automatically append version information to the version string”.

Choose Kernel compression mode as LZMA for a smaller kernel size but slower compression.

Processor type and features  —> Processor family -> Mine is Core 2, choose yours accordingly.

File systems  —> Build in (*) the root partition, if its ext4 then build in ext4, if it’s XFS, build in XFS. Don’t build as modules (M).

Device Drivers —> Graphics Support –>

  • Support for frame buffer devices
  • VESA VGA graphics support
  • Video mode selection support
  • Framebuffer Console support
  • Select compiled-in fonts
  • VGA 8×16 font
  • Bootup logo
  • Standard 224-color Linux logo

Now save and exit. Time to compile.

make -j3

Use no. of CPUs+1, for Core 2 Duo it’s 2+1 = 3

After it’s done:

make modules_install

cp arch/x86/boot/bzImage /boot/kernel-version-localversion

Change version-localversion accordingly.

cp System.map /boot/System.map-version-localversion

cp .config /boot/config-version-localversion

cd /boot

rm vmlinuz

ln -s kernel-version-localversion vmlinuz

rm System.map

ln -s System.map-version-localversion System.map

ln -s config-version-localversion config

nano /etc/lilo.conf

Now see if there is an entry:

image = /boot/vmlinuz
root = /dev/hda2
label = Linux

If not, add it.


Now reboot and enjoy your new boot logo.