
BusyBox 1.20.2
---------------

http://busybox.net/downloads/busybox-1.20.2.tar.bz2

tar xvjf busybox-1.20.2.tar.bz2
cd busybox-1.20.2
make menuconfig
make
ls -l busybox

Initramfs
----------

mkdir initramfs
cd initramfs
mkdir -p bin dev etc lib/modules/3.8.2 mnt proc sbin sys usr/bin usr/sbin

cp ~/busybox-1.20.2/busybox bin/
cd bin
ln -sf busybox sh
cd ..

cp mdev.conf etc/
cp modules etc/

cp init.usb .
cp init.cdrom .
ln -sf init.cdrom init

for mod in fat vfat isofs crc-ccitt crc-itu-t lzo_compress udf squashfs overlayfs \
	   sg sr_mod cdrom usb-common usbcore ehci-hcd ohci-hcd usb-storage; do
	path=`find  /home/glevand/linux-3.8.2-build/lib/modules/3.8.2 -name $mod.ko`
	cp $path lib/modules/3.8.2/
done

# creating initramfs image

find . | cpio -H newc -o > ../initramfs.cpio
cd ..
cat initramfs.cpio | gzip > initramfs.cpio.gz

# extracting initramfs image

gunzip initramfs.cpio.gz
mkdir initramfs
cd initramfs
cpio -i -d -H newc --no-absolute-filenames < ../initramfs.cpio

debootstrap
------------

apt-get install debootstrap
 
mkdir livecd
 
debootstrap --arch powerpc squeeze /root/livecd http://ftp.us.debian.org/debian
 
# Enter chroot environment
 
mount -t proc none /root/livecd/proc
mount --rbind /dev /root/livecd/dev
LANG=C chroot /root/livecd /bin/bash
 
export TERM=xterm-color
 
echo "debian" > /etc/hostname
 
dpkg-reconfigure tzdata
 
# Configure network interfaces
 
cat /etc/network/interfaces
---
auto lo
iface lo inet loopback
 
allow-hotplug eth0
iface eth0 inet dhcp
 
allow-hotplug wlan0
iface wlan0 inet dhcp
    wpa-ssid ssid
    wpa-psk psk
-EOF-
	 
# Configure APT
	 
cat /etc/apt/sources.list
---
deb http://ftp.us.debian.org/debian squeeze main
deb-src http://ftp.us.debian.org/debian squeeze main
	 
deb http://security.debian.org squeeze/updates main
deb-src http://security.debian.org squeeze/updates main
-EOF-
	 
aptitude update
	 
aptitude install locales
dpkg-reconfigure locales
aptitude install console-data
dpkg-reconfigure console-data
	 
tasksel install standard
aptitude install hfsplus hfsutils hfsprogs ufsutils debootstrap
aptitude install binutils gcc make autoconf git vim openssh-server sudo
aptitude install wireless-tools iw wpasupplicant libssl-dev libncurses5-dev
aptitude install cryptsetup libreadline-dev libaio-dev libdevmapper-dev libudev-dev
aptitude install elinks lynx irssi mpg123 tcpdump
	 
# Make SSH server start at boot so we could ssh to our LiveCD
	 
update-rc.d ssh defaults
	 
aptitude clean

passwd
adduser glevand
passwd glevand
	 
rm -f /etc/udev/rules.d/70-persistent-net.rules

# exit chroot environment

exit

rm -f /root/livecd/root/.bash_history

# umount dev and proc

umount /root/livecd/dev/pts
umount /root/livecd/dev/shm
umount /root/livecd/dev
umount /root/livecd/proc

rootfs
-------

cd livecd
mksquashfs * ../root.sfs

unsquashfs root.sfs
cd squashfs-root
mksquashfs * ../root-changed.sfs

Burning CD
-----------

mkdir -p iso/debianlive
cp root.sfs initramfs.cpio.gz vmlinux-3.8.2 iso/debianlive

cat > iso/yaboot.conf <<"EOF"
default=debianlive

timeout=50

image=/debianlive/vmlinux-3.8.2
	label=debianlive
	initrd=/debianlive/initramfs.cpio.gz
	read-only
EOF

cp ofboot.b iso/

cd iso
mkisofs -o ../debianlive.iso -chrp-boot -U -part -hfs -T -r -l -J \
	-A "PowerMac G5 LiveCD" -sysid PPC -V "PowerMac G5 LiveCD" \
	-volset 4 -volset-size 1 -volset-seqno 1 \
	-hfs-volid "PowerMac G5 LiveCD" \
	-hfs-bless . -map ../hfs.map -no-desktop -allow-multidot .
cd ..
 
sudo cdrecord -v dev=/dev/sr0 blank=fast
sudo cdrecord -v dev=/dev/sr0 debianlive.iso

