When I started this project I was surprised of how poor documentation and software was on this subject. My goal was to create a custom Ubuntu liveCD for a group of public computers, change the start-up and background to make it look professional, remove unnecessary programs and add some icons to the desktop for ease of use, that’s it. None of the software packages allowed me to do all of these very simple tasks; they allowed some but now all. I had to the rest of the research myself, gathering hard to find information on the web. Please do not be scared by the shell commands on this article, this is a walkthrough and it is very easy to follow.
There are three software packages that allow you to customize a Ubuntu LiveCD. Ubuntu Customization Kit, Remastersys and Reconstructor (I tried the installation package, not the website version which costs $5 a month). I discarded Reconstructor because for some reason none of the customizations I made seemed to get transfered to the liveCD image no matter what I did. I could not really use Remastersys because it makes a LiveCD based on a backup of your host; good idea if you have a clean install but I did not. I decided to go with Ubuntu Customization Kit, which has less features but works very well. Unbuntu Customization Kit allows you to set the language, add and remove programs using Synaptic and customize Ubuntu using the configuration editor, etc.
IMPORTANT NOTE BEFORE WE BEGIN: It is a must that your image and your host operating system are the same Ubuntu version. Do not try to customize a Ubuntu 10.10 LiveCD using a host computer running 10.04 or your LiveCD might not work! I learned this the hard way.
Working with Ubuntu Customization Kit
1) Download an image of your favorite Ubuntu version. I decided to go with the latest Ubuntu 10.10, since it boots straight to the liveCD without entering a menu first.
2) Install Ubuntu Customization Kit on your host computer.
3) Start Ubuntu Customization Kit by clicking on Applications -> System Tools -> Ubuntu Customization Kit.
4) Select all desired language packs and the language you want to use as default for your liveCD.
5) Select the desktop environment, for this example we will use gnome which is the one that comes with Ubuntu 10.10.
6) Select the Ubuntu Image you Just downloaded.
7) Name your liveCD.
8 ) Do you want to customize your CD manually during buildong? Select “yes”.
9) Do you want to delete all windows-related files from CD? Select “yes” so that you can have more space on you live CD available for loading programs.
At this point, UCK will start unpacking the files from the ISO image and putting them on a temp directory. We are going to modify these files using the host computer’s terminal, the synaptic and the consoles provided by UCK.
After UCK is finished unpacking the files, the following window will come up:
Package manager: This is basically the same as synaptic, with it you can add or remove any program you wish from the liveCD. If you can’t find the program you are looking for, you probably need to add the source; do this by clicking on Settings -> Repositories on your package manager menu.
Console application: This is the same as your Ubuntu terminal. If you want to get really technical, you can run Gnome Configuration Editor, by typing the following command:
However we will not be using it for this project.
Continue Building: Self explanatory. Before clicking on this option, make sure you have made absolutely all changes since by clicking this, UCK will start building the final ISO.
Installing or Removing programs
Just use UCK Package Manager (Synaptic) and add or remove anything you wish. You can also add Universe and Multiverse repositories here, by clicking on Setting and Repositories. If you make any changes to the repositories make sure you click on “reload” on the main synaptic window to update the program lists.
Installing Abode Reader and Flash
To install Adobe Reader and Adobe Flash, open the UCK package manager (Synaptic) and click on:
settings -> repositories -> other software tab
There add the following two lines (change the word maverick if you are using a different Ubuntu version):
deb http://archive.canonical.com/ubuntu maverick partner deb-src http://archive.canonical.com/ubuntu maverick partner
Close the window and don’t forget to hit reload on the main synaptic window, so that synaptic can update its lists. Now Adobe Flash and Adobe Reader should be available on synaptic to be installed.
Remove “Welcome” Window and “Install Ubuntu” Icon From Desktop
If you are going to use the disk as a LiveCD, then the initial “Welcome” window becomes useless. To remove it do the following:
On Ubuntu Customization Kit, open UCK Package Manager and remove Ubiquity.
This will remove the “Install Ubuntu” icon on the desktop as well.
Remove “Samples” Folder
This one is very easy. On the host computer, open a terminal window and type the following (To do this, UCK must have the LiveCD image uncompressed on the host computer’s hard drive. otherwise liveCD temp files won’t exist):
sudo nautilus ~/tmp/remaster-root/etc/skel
There you will find the “Examples” folder, delete it and you are done. To remove “Install Ubuntu 10.10” please read the previous section.
Create Desktop Shortcuts on Your LiveCD
Run liveCD with the ISO image you are going to use as model for your custom LiveCD using Virtualbox or other virtualization program, then create all desktop shortcuts you wish to have on you customized liveCD. Once you have all your shortcuts created, transfer them to you host (your actual computer, not the virtual one). I usually do this by opening a shared folder in the host computer and trasfering everything from the virtual machime to the shared folder in the host through the network.
To customize the desktop on your LiveCD you will have to create a custom folder for it. To do this, open a terminal window on your current operating system (not on UCK’s console window) and type the following command: (To do this, UCK must have the LiveCD image uncmpressed on the host computer’s hard drive. otherwise liveCD temp files won’t exist):
sudo nautilus ~/tmp/remaster-root/etc/skel
There, create a folder called Desktop, (make sure to capitalize the D) and drag the icons you created in your previous liveCD to this new folder.
Change GNOME’s Background
Generally background files are located in /usr/share/backgrounds. Open this directory by issuing the following command on your host computer’s terminal (To do this, UCK must have the LiveCD image uncompressed on the host computer’s hard drive. otherwise liveCD temp files won’t exist):
sudo nautilus ~/tmp/remaster-root/usr/share/backgrounds
Paste your background image in there, making sure to set the wallpaper to the “native” resolution you want displayed. I made mine 1024 X 768 because that is the native resolution of the monitors that I would be using. If you paste the background file using the name “warty-final-ubuntu.png” and replace the one currently there, you can probably skip the following instructions:
Changing files pointing to a different path and background filename (optional)
To change the files to point from the original filename to your background filename, open the “ubuntu-wallpapers.xml” and the “16_ubuntu-wallpapers” files, issuing the following commands on the host computer: (To do this, UCK must have the LiveCD image uncompressed on the host computer’s hard drive. otherwise liveCD temp files won’t exist)
sudo gedit ~/tmp/remaster-root/usr/share/gnome-background-properties/ubuntu-wallpapers.xml
sudo gedit ~/tmp/remaster-root/usr/share/gconf/defaults/16_ubuntu-wallpapers
once you have those two files open, look for the following string:
Change “warty-final-ubuntu.png” to your own background file name.
For XUBUNTU Users:
Please read my soon-to-be-released article “Build Your Own Custom Xubuntu LiveCD”