Some very simple minor fixes that you can add/improve to your BackTrack 4. This guide will work permanently on installed versions of backtrack 4! (thanks to smtx for pointing it out)

1) Howto grub splash fix:

This is a very easy fix, all you need to do is to use your favourite text editor and to edit a line in /boot/grub/menu.lst. I personally use vim so I would be doing:
Code:
sudo vim /boot/grub/menu.lst
I then search for the phrase bt4.xpm.gz:
Code:
/bt4.xpm.gz[enter]
I replace the lines (yours may vary abit) from:
Code:
image=[uuid]/boot/grub/bt4.xpm.gz
to:
Code:
splashimage=/boot/grub/bt4.xpm.gz
and to save changes:
Code:
:x
Reboot and you should have a working grub splash.

2) Howto boot splash:

Credit does not belong to me on this one but to muts who used to have it on his blog.

Code:
sudo fix-splash
or
Code:
sudo fix-splash800
If you have a custom menu.lst setup, including the setup of grub splash method above is to comment out the last 3 lines but not the last one in fix-splash, i.e.:

Code:
#!/bin/bash

echo "[*] Fixing Initrd"
cd /boot/
mkdir -p tmp
rm -rf tmp/*
cp initrd.img-$(uname -r) tmp/initrd.gz
cd tmp/
echo "[*] Extracting Initrd"
gzip -dc initrd.gz |cpio -id
cp /lib/modules/$(uname -r)/modules.dep lib/modules/$(uname -r)/
cat lib/modules/$(uname -r)/modules.dep |sed "/hid-dummy/d" > lib/modules/$(uname -r)/modules.dep1
mv lib/modules/$(uname -r)/modules.dep1 lib/modules/$(uname -r)/modules.dep
cp /opt/bootsplash/bootsplash .
find ./ | cpio -H newc -o > initrd
gzip initrd
mv initrd.gz ../initrd.img-$(uname -r)
cd ..
cat /boot/grub/menu.lst |sed "s/splash/vga=0x317/g" > /boot/grub/menu.lst1
mv /boot/grub/menu.lst1 /boot/grub/menu.lst
echo "[*] Reboot and bask in the joys of BootSplash"
into:
Code:
#!/bin/bash

echo "[*] Fixing Initrd"
cd /boot/
mkdir -p tmp
rm -rf tmp/*
cp initrd.img-$(uname -r) tmp/initrd.gz
cd tmp/
echo "[*] Extracting Initrd"
gzip -dc initrd.gz |cpio -id
cp /lib/modules/$(uname -r)/modules.dep lib/modules/$(uname -r)/
cat lib/modules/$(uname -r)/modules.dep |sed "/hid-dummy/d" > lib/modules/$(uname -r)/modules.dep1
mv lib/modules/$(uname -r)/modules.dep1 lib/modules/$(uname -r)/modules.dep
cp /opt/bootsplash/bootsplash .
find ./ | cpio -H newc -o > initrd
gzip initrd
mv initrd.gz ../initrd.img-$(uname -r)
cd ..
# cat /boot/grub/menu.lst |sed "s/splash/vga=0x317/g" > /boot/grub/menu.lst1
# mv /boot/grub/menu.lst1 /boot/grub/menu.lst
echo "[*] Reboot and bask in the joys of BootSplash"
If you still fail to see the console splash, you may want to try appending splash into /boot/grub/menu.lst, e.g. from:

Code:
kernel          /boot/vmlinuz-2.6.29.4 root=UUID=[UUID] ro quiet vga=0x317
to:
Code:
kernel          /boot/vmlinuz-2.6.29.4 root=UUID=[UUID] ro quiet splash vga=0x317
Alternatively, you can also use something like splashy if you want for fancy console splash including animated boot up (not animated bootloader bootup but console splash for booting up process)

N.B.: vga=0x317 is vesa mode for higher console resolution, yours may vary, if you want to try it out you can try using vga=ask and hit enter when it boots to see the list of options available. Settings of the numbers vary from kernels and from video chip I think.

3) Howto GUI Login Menu:

Code:
sudo apt-get install kdm-kde3
Ignore any errors. there should only be two lines of it fyi. Reboot and you will get a plain GUI login menu for kde that has welcome message for Kubuntu but these are customisable under:
KMenu > System > Settings > System Administration > Login Manager

4) Howto kmenu dragon icon:

I have noticed a few people asking and complaining why when one boots up the livedvd/liveusb they get the dragon image on their kmenu icon but once they installed it, it is replaced with a standard kmenu icon. The reason is simple, livesetup goes into root account and the icon resides in /root but once you installed it the stuff doesn't get copied across to your /home/$user directory however its still in /root.

So I have written a small script to handle it:
Code:
#!/bin/bash

sudo unzip -o /root/.kde3/share/icons/nuvoX_0.7/kmenu-dragon.zip -d /home/*/.kde3/share/icons/nuvoX_0.7/
sudo unzip -o /root/.kde3/share/icons/nuvoX_0.7/kmenu-dragon.zip -d /etc/.skel/.kde3/share/icons/nuvoX_0.7/
sudo unzip -o /root/.kde3/share/icons/nuvoX_0.7/kmenu-dragon-zip -d /opt/kde/share/icons/nuvoX_0.7/
Copy and paste that into your favourite text editor.. save it as whatever you want.. for convenience sake I would have the file extension as .sh so I will know its a shell script. chmod the file as executable i.e.:
Code:
chmod 700 foo.sh
and execute it:
Code:
./foo.sh
After running you may need to re-login for the changes to have an effect.

Enjoy!