Good bye Gnome 3 , UNITY and we are Getting back to KDE ( Ubuntu live cd customization )

We all know Ubuntu Unity and Gnome-shell are sucks and crazy. They think we are 7 years kids who love the flash,nice images etc . So I am not going to use Gnome(Not too bad but enough sucks) or Fucking UNITY. Perhaps they are also permanent Windows users lol. And now trying to ripping off the Windows. So I customised my Ubuntu 12.04 and installed KDE based Interface. KDE is nice GUI and many distro such as Debian,Red hat enterprise, OpenSuse, Kubuntu Linux, Arch Linux  etc has the KDE for default use. Ubuntu live cd customization is not too hard. If you want to customize your ISO just follow this tutorial.
Do you believe that I did not even able to take all the screenshot when wrote this articles ? Perhaps I can’t and i don’t want to try. I don’t think so, any power users or pentester will use GNOM 3 or UNITY. When I installed GNOME-SHELL on Ubuntu 12.04 and i saw it is able back to the classic style but still the classic style also sucks but use-able somehow.
Frankly, I used KDE and Gnome both. when I installed Ubuntu 11.10 and 12.04 it just makes me cry!!
Anyway, If you don’t want to install the KDE,XFCE or other interface over and over whenever you install the fresh OS. If you decide to make your own ubuntu based Linux distro and install some hacking/pentesting tools on the CD  then this tutorial is for you.
First Install :
sudo apt-get install squashfs-tools genisoimage
Now we create a folder for our work:
mkdir kde-linux
Move or copy the iso to your working folder:
mv ubuntu-12.04-desktop-i386.iso kde-linux/
cd kde-linux
Now we need to mount the ISO. So first we create a folder:
mkdir mout
Now we mount the sucks ISO to mnt directory:
mount -o loop ubuntu-12.04-desktop-i386.iso mout
extract the ISO into a direcotry:
mkdir extracted
rsync --exclude=/casper/filesystem.squashfs -a mout/ extracted
Extracted the sqashfs filesystem and this will take some times, So wait:
unsquashfs mnt/casper/filesystem.squashfs
When extraction is 100% then just run the following command simply:
mv squashfs-root edit
What we need now? Now we chroot to be root for fully customization . But let’s do something before doing it.:
cp /etc/resolv.conf edit/etc/
cp /etc/hosts edit/etc/
mount --bind /dev/ edit/dev
Now Chroot so that you can install anything you want , lol install some hacking tools too hehe:
chroot edit

Anyway, Now we need to mount :

mount -t proc none /proc
mount -t sysfs none /sys
mount -t devpts none /dev/pts

And run blindly:
export HOME=/root
export LC_ALL=C
We are almost done correctly then all things. Now we need :
#dbus-uuidgen > /var/lib/dbus/machine-id
dpkg-divert --local --rename --add /sbin/initctl
ln -s /bin/true /sbin/initctl
Now we can install anything we want… So let’s install KDE first (kde-plasma-desktop,kde-full,kubuntu-desktop)
first we run :apt-get update
now lets run:
apt-get install kde-plasma-desktop
Oh shit, I get errors which maybe on your ISO or may not(Not sure!):

apt-get install kde-plasma-desktop
Reading package lists… Done
Building dependency tree
Reading state information… Done
E: Unable to locate package kde-plasma-desktop
So I saw  the sources.list:
nano /etc/apt/sources.list
and I get only 3 source .
And I quickly copy all the source from installed Ubuntu
gedit /etc/apt/sources.list
Just copy all the source and paste to your editing sources.list
or you can completely replace the file by “cp” command.
Now run again apt-get update
search the software which we are going to install:
apt-cache search kde-plasma-desktop

 kde-plasma-desktop – KDE Plasma Desktop and minimal set of applications
apt-get install kde-plasma-desk
or you can just install kde-full:
apt-get install kde-full
Sucks , It will download 103 Megabyte. So Let’s wait until it finish. But if you want to kde-full or kubuntu-desktop then it will download a lot. I prefer the minimal as I just want to leave the Gnome.
Anyway, If you want to install any other software :
apt-get install packagename #such asapt-get install vlc
apt-get install nmap
apt-get install skipfish
apt-get install gimp ksnapshot sqsh
If you want to install some deb file downloaded from internet then just copy the file to a folder ubuntu-kde/edit/somefolder. Example:

cp skype.deb ubuntu-kde/edit/home/somefolder

Now go to your chrooted terminal and : 

cd /home/somefolder                                     

dpkg -i skype.deb

Now we installed all necessary and it is time to build the ISO. Just we need to remove everything what created :
rm -rf /tmp/* ~/.bash_history                                                                
rm /etc/hosts
rm /etc/resolv.conf
rm /var/lib/dbus/machine-id
rm /sbin/initctl        
dpkg-divert --rename --remove /sbin/initctl
So now we need to umount what whatever we mounted .
umount /proc                                                                                 
umount /sys
umount /dev/pts
sudo umount edit/dev   
Now the real things blindly do:
chmod +w extracted/casper/filesystem.manifest

chroot edit dpkg-query -W --showformat='${Package} ${Version}n' > extracted/casper/filesystem.manifest

cp extract-cd/casper/filesystem.manifest extract-cd/casper/filesystem.manifest-desktop

sed -i '/ubiquity/d' extracted/casper/filesystem.manifest-desktop

sed -i '/casper/d' extracted/casper/filesystem.manifest-desktop
Now we compress the filesystems :
mksquashfs edit extracted/casper/filesystem.squashfs  (It will take some time)
We need to update the size otherwise it will not match the correct installation when installing. So lets update the size :
printf $(sudo du -sx --block-size=1 edit | cut -f1) > extracted/casper/filesystem.size 
Now :
cd extracted
rm md5sum.txt
find -type f -print0 | sudo xargs -0 md5sum | grep -v isolinux/ | sudo tee md5sum.txt
We are almost done :
 mkisofs -D -r -V "$IMAGE_NAME" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/ -no-emul-boot -boot-load-size 4 -boot-info-table -o ../your-new-linux-name.iso .
Now just burn the ISO into a blank DVD and Enjoy.
If you want to customize the Boot splash then you need more advance knowledge. Because Boot splash is related with plymouth( /lib/plymouth) and kernel.
I say Good Bye UNITY AND GNOME !!!! You made the power users crazy. Try to develop it soon.

Email me if you have any questions. 

This Post Has 4 Comments

  1. Nice post man!!! Really Ubuntu Unity and Gnome Shell is crazy.

  2. I agree with all of you. Unity and Gnome Shell simply suck.
    I am XFCE user.

  3. XFCE is also good. Just Unity and Gnome killed the Linux users…

    Hope Gnome/Unity will be developed soon!!!

  4. Completely agree with you!!
    They are also ruining the Linux desktop scene unfortunately.

    I am XFCE 4.10 user as well as my parents who are in their '60.

Leave a Reply

Close Menu