Wednesday, September 06, 2006

Fly Live DVD ... Fly!

Hey,

I know its been a month since there were any real posts in the blog. But things were keeping me so busy that i hardly had any time to update the blog.

I have finally finished the OscarLiveDVD beta and it is sent to France for evaluation. Geoff should receive it on 8th.

Its a beautiful LiveDVD. I will post the screenshots soon..

Do check out!

Sorry for the longgggggg pause

OscarLive LOGO




This is the new logo for the OscarLiveDVD..

Any suggestions?

Wednesday, August 02, 2006

Building Livecd using Urs scripts...

I am right now building the Livecd, and i am following the steps of Urs scripts........

* Start with a working Scientific Linux 4 system. You will need a working yum setup
* Make a new directory to build in, for example

LIVE=/scratch/livecd
mkdir -p $LIVE

* You need about 4 GB free space in the directory $LIVE to build a live CD having the size of 700 MB.
* Make some subdirectories

cd $LIVE
mkdir dev proc sys etc tmp

* Create some files to avoid error messages later

touch etc/fstab etc/mtab

* Mount some virtual filesystems, if you reboot you will have to redo this step

mount --bind /dev dev
mount null -t proc proc
mount null -t sysfs sys

* Copy your existing yum.conf into the new etc directory

cp /etc/yum.conf $LIVE/etc

* Install the system with yum like this:

yum -c $LIVE/etc/yum.conf --installroot=$LIVE install yum rootfiles shadow-utils bind-utils gnupg vim-enhanced vixie-cron crontabs passwd which kudzu dhclient pciutils eject alsa-utils mkisofs wget

* This should install around 114 packages for a total of 89 MB.
* Enable the use of shadow passwords

sed -i "s|\*|x|" etc/passwd
sed -i "s|^root::|root:x:|" etc/passwd
cat etc/passwd | cut -d":" -f 1 | while read u; do echo "$u:*:12345:0:99999:1:::"; done >> etc/shadow
chmod 600 etc/shadow

* To allow choosing diffent keyboard layouts install

yum -c $LIVE/etc/yum.conf --installroot=$LIVE install kbd system-config-keyboard

* To install a basic graphical environment (xserver, login manager, windows manager)

yum -c $LIVE/etc/yum.conf --installroot=$LIVE install system-config-display gdm xterm icewm

* Without the package "system-config-display", the xserver will be not correctly configured !
* Install further rpms using yum, for example to add KDE

yum -c $LIVE/etc/yum.conf --installroot=$LIVE install kdeartwork kdebase kdegraphics kdelibs kdemultimedia kdenetwork kdepim kdesdk kdeutils

* You will have to play around until you find which packages you need.
* You can make any changes you would like to have on your Live CD now or you can do this later also in chroot.
* Copy resolv.conf to the chroot (so yum will work in the chroot)

cp /etc/resolv.conf $LIVE/etc

* Copy your networking config file

cp /etc/sysconfig/network $LIVE/etc/sysconfig

* Edit the new shell prompt so you don't get lost when you enter the chroot

echo 'if [ ! -d /proc/1/root ] ; then PS1="[\u@LIVE \W]\\$ " ; fi' >> $LIVE/root/.bashrc

Install the livecd kernel

* The latest kernel (kernel-2.6.9-[release].EL.livecd.[arch].rpm) with squashfs can be found here ftp://ftp.psi.ch/psi/livecd/RPMS
* Install the kernel in chroot (for example [release]=34 and [arch]=i686)

chroot $LIVE
rpm -ivh ftp://ftp.psi.ch/psi/livecd/RPMS/kernel-2.6.9-34.EL.livecd.i686.rpm --oldpackage

* Uninstall the old kernel to save space.

rpm -e kernel-2.6.9-34.0.1.EL

* You may want to install additionally some kernel modules for the livecd kernel from ftp://ftp.psi.ch/psi/livecd/RPMS
* To leave chroot, type

exit

Run the build scripts

* Download the latest build scripts (livecd-x.x.tar.gz) from here ftp://ftp.psi.ch/psi/livecd/build
* Copy the tarball to chroot, for example into the folder build

mkdir $LIVE/build
cp livecd-x.x.x.tar.gz $LIVE/build

* chroot into the image

chroot $LIVE

* Unpack the scripts in chroot

cd /build
tar xfvz livecd-x.x.x.tar.gz

* Change to the livecd build script directory

cd /build/livecd-x.x.x

To build a Livecd with more compression you need to have the squashfs support for

./build-livecd.sh -sl

* Expect some errors. All going well you will get to creating compressed images... which will take some time, particularly usr.mo
* You should then get the LiveCD ISO created in /tmp/livecd.iso or $LIVE/tmp/livecd.iso, respectively.
* For more information about the build scripts see also the README file provided within the tarball.

Test the ISO image

* You can burn this ISO image to a CD or DVD ROM. However, it is much easier to test it with qemu
* For example get qemu from here: http://dag.wieers.com/packages/qemu. Take the rpm for el4.
* How to run qemu (see also man qemu):

qemu -m 256 -cdrom livecd.iso
qemu -m 256 -full-screen -cdrom livecd.iso