Friday, March 2, 2007

Build a live Fedora CD using Kadischi

Kadischi was created in 2005 by Darko Ilic specifically for creating Fedora based Live CDs. Although it is still in active early development, it is still quite usable. What this means to the average user, is that there currently are not any RPMs for Kadischi; it is only downloadable from CVS.

Basic setup

This tutorial assumes that Fedora Core 6 is already installed on a system with a graphical interface. There needs to be a software repository of between 3 GB and 5 GB as well as a build directory of approximately 2 GB ( or 8 GB for a DVD build).

Install necessary utilities as root or using sudo

[root@buildhost ~]$ yum install fedora busybox-anaconda syslinux
mkisofs squashfs-tools zisofs-tools e2fsprogs createrepo yum-utils
gnome-python2-extras cvs

Be sure you have the space available for the build directory (/LiveFC6 in this case)

[root@buildhost ~]$ df -h /
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00 48G 9.0G 36G 21% /

In this case, there is plenty of room (36 GB) to place our build directory under “/”.
Create and populate your repo from the ISO images for Fedora Core 6. In this example the DVD ISO was used to save time by not having to continually mount and unmount the CD ISOs.

[root@buildhost ~]$ mkdir /LiveFC6
[root@buildhost ~]$ cp -av /media/FC6/Fedora/ /LiveFC6
[root@buildhost ~]$ cp -av /media/FC6/repodata /LiveFC6

Checkout Kadischi from cvs

[root@buildhost ~] $ cd /LiveFC6
[root@buildhost ~] $ export
[root@buildhost ~]$ cvs -z3 login
[root@buildhost ~]$ cvs -z3 co kadischi

Note: The “export” line above should be all on one line, not broken up.

Build and install Kadischi

[root@buildhost ~] $ cd /LiveFC6/kadischi

[root@buildhost ~] $ ./
[root@buildhost ~] $ make
[root@buildhost ~] $ make install

Configure Kadischi to use your preferred Live CD bootloader (GRUB and isolinux are the choices)

[root@buildhost ~] $ vi /etc/kadischi/kadischi.conf


Build the live CD

The build process follows similar steps in building a system from CD. It uses anaconda to detect hardware, and the same dialogs are used to make selections like packages and localization.

See the Full Article Here