To use c-section you need a RPM repository, online or local. In the example below I use a kickstart file from the network
but a local repository. The --help dialog will explain some options.
/usr/share/c-section/post_install_scripts/ contain scripts that run after Anaconda is done.
01prelink.sh prelinks libraries and ELF executables
02install.sh installs some binaries scanswap and scripts for the LiveCD run control to setup the environment
03fstab.py Writes some of the fstab stuff
05fsclean.py empties some directories and does some other things
06sysconfig.py for directly manipulating files in /etc/sysconfig/ for example creating a SLiM
login manager LiveCD, you would make /etc/sysconfig/desktop DISPLAYMANAGER=/usr/bin/slim-dynwm
08symlink.sh sets up symbolic links in the filesystem for use with Anaconda when
running from the LiveCD, to do an installation to a system from LiveUSB or LiveCD.
install-boot.sh handles copying the initramfs and vmlinuz to outside the compressed tree and creating some things
like if you are using --live-usb, making the Ext2 fs with bootsector. Handles ISOLINUX with --live-optical
movefiles.py sets up the filesystem to use some directories bind mounted to tmpfs so you can write to them
c-section.py handles most of the dirty work.
[root@quad c-section]# c-section --kickstart=http://autopsy.liveprojects.info/repo/ks.cfg --live-optical --force /mnt/dvdrom /tmp/c-section.iso
[c-section]: Using /tmp/c-section.xOQjMX
[c-section]: Repository seems to be OK
[c-section]: Product path is Fedora
[c-section]: running Anaconda
[c-section]: Anaconda finished
[c-section]: Running scripts in /usr/share/c-section/post
[c-section]: Estimated size of /tmp/c-section.iso is 177 MegaBytes
[c-section]: Determining kernel version
[c-section]: Running mksquashfs
[c-section]: Compressed tree is /tmp/c-section.xOQjMX/compressed
[c-section]: Creating iso image /tmp/c-section.iso
[c-section]: Removing /tmp/c-section.xOQjMX
[c-section]: Finished successfully