if you want to try ["Simple-CDD"], on an etch system:
mkdir ~/my-simple-cdd
cd ~/my-simple-cdd
add to your sources.list:
echo deb http://http.us.debian.org/debian unstable main >> /etc/apt/sources.list
apt-get update
apt-get -t stable install simple-cdd devscripts
echo deb http://http.us.debian.org/debian unstable main/debian-installer >> /etc/apt/sources.list
apt-get update
dget simple-cdd-profiles
comment out the lines in /etc/apt/sources.list, or configure apt pinning so it doesn't pull in unstable packages.
create a profile named NAME:
mkdir profiles
for p in list of packages you want installed ; do echo $p >> profiles/NAME.packages ; done
build the CD with selected profile NAME, and include simple-cdd-profiles .udeb:
build-simple-cdd --profiles NAME --local-packages $(pwd)/simple-cdd-profiles_*.udeb
this will create a partial package mirror in the dir "tmp/mirror", and if all goes well, an .iso CD image in the "images" dir when it is finished.
use qemu to test:
apt-get install qemu
build-simple-cdd --qemu --profiles NAME --local-packages $(pwd)/simple-cdd-profiles_*.udeb
optional features:
if you want debconf preseeding, put a debconf-set-selections compatible file into profiles/NAME.preseed
if you want a custom post-install script, place it in profiles/NAME.postinst
for more options:
build-simple-cdd --help
adapted from: http://lists.debian.org/debian-custom/2006/12/msg00001.html