# instructions to make a Knoppix DVD with Scratchbox for ARM included su # become superuser # newsrc is where we will build our bootstrap image # master is where we will build our CD cd $HOME export KNXISO=KNOPPIX_V5.1.1CD-2007-01-04-EN.iso wget http://ftp.osuosl.org/pub/knoppix/${KNXISO} ln -s `pwd`/${KNXISO} /tmp/${KNXISO} # make link for later su # become superuser ! type extract_compressed_fs && apt-get cloop-utils # You will need cloop ! type qemu && apt-get qemu # Optional, you might need qemu KNXROOT=`pwd`/knxcd NEWSRCDIR=${KNXROOT}/newsrc/KNOPPIX MASTERDIR=${KNXROOT}/master ARCH=i386 DEBIAN_RELEASE=sid # (http://www.debian.org/releases/unstable/) DEBIAN_MIRROR=http://http.us.debian.org/debian DEBIAN_MIRROR=http://debian.osuosl.org/debian # for me only # make dir's, mount CD image, copy some files over to MASTERDIR mkdir -p ${MASTERDIR} ${NEWSRCDIR}/usr/src ${KNXROOT}/mnt mount -t iso9660 -o ro,loop=/dev/loop/0 /wherever/${KNXISO} ${KNXROOT}/mnt cd ${KNXROOT}/mnt && find . -size -10000k -type f -exec cp -p --parents '{}' ${MASTERDIR} \; # extract compressed KNOPPIX filesystem extract_compressed_fs ${KNXROOT}/mnt/KNOPPIX/KNOPPIX > ${KNXROOT}/KNOPPIX.src.iso cd ${KNXROOT}; umount ${KNXROOT}/mnt mount -t iso9660 -o ro,loop=/dev/loop/0 ${KNXROOT}/KNOPPIX.src.iso ${KNXROOT}/mnt # copy files over to NEWSRCDIR cp -Rp ${KNXROOT}/mnt/* ${NEWSRCDIR} umount ${KNXROOT}/mnt rmdir ${KNXROOT}/mnt cp /etc/hosts ${NEWSRCDIR}/etc/hosts #use our hosts file # let's display README after the hard disk install: # in ${NEWSRCDIR}/usr/share/knoppix-installer/modules/install/02-install-tools.bm chage: ------------------------------ Name=KNOPPIX # Exec=kfmclient openProfile webbrowsing http://knoppix.com/ Exec=konqueror --geometry 800x600+110+40 http://knoppix.com/ Type=Application Icon=html Terminal=0 EOF ------------------------------ to: ------------------------------ Name=emacs # Exec=kfmclient openProfile webbrowsing http://knoppix.com/ Exec=emacs $HOME/arm/README Icon=html Terminal=0 EOF ln $TARGET_MNT_POINT/home/$USER_NAME/Desktop/KNOPPIX.desktop $TARGET_MNT_POINT/home/$USER_NAME/.kde/Autostart/showindex.desktop ------------------------------ # go to NEWSRCDIR and install, dependencies, knoppix specific and extra chroot ${NEWSRCDIR} /usr/bin/env -i HOME=/root TERM=$TERM \ PS1='\u:\w\$ ' PATH=/bin:/usr/bin:/sbin:/usr/sbin /bin/bash --login # * Install Dependencies required for Knoppix, answer "y" to all queries mount -t proc /proc proc cp /etc/resolv.conf ${NEWSRCDIR}/etc/dhcpc/resolv.conf echo 'deb ${DEBIAN_MIRROR} ./' > /etc/apt/sources.list echo 'deb-src http://debian-knoppix.alioth.debian.org ./' >> /etc/apt/sources.list echo 'deb http://debian-knoppix.alioth.debian.org ./' >> /etc/apt/sources.list apt-get update # Install scratchbox echo 'deb http://scratchbox.org/debian ./' >> /etc/apt/sources.list apt-get update # must do modprobe binfmt_misc apt-get install scratchbox-core scratchbox-libs apt-get install scratchbox-devkit-debian scratchbox-devkit-perl apt-get install scratchbox-toolchain-arm-linux-2006q3-27 scratchbox-devkit-cputransp apt-get install emacs21 crypt++el bbdb mkdir /etc/skel/arm; cd /etc/skel/arm wget http://maxim.org.za/AT91RM9200/2.6/2.6.20-at91.patch.gz wget http://kernel.osuosl.org/pub/linux/kernel/v2.6/linux-2.6.20.tar.bz2 wget http://repository.maemo.org/stable/3.1/armel/maemo-sdk-rootstrap_3.1_armel.tgz # or a bigger root here: # wget http://armel.applieddata.net/developers/linux/eabi/armel-root-fs.tar.bz2 cd / wget http://www.efn.org/~rick/work/KnoppixScratchboxARM/KnoppixScratchboxArm.tar.bz2 tar jxf KnoppixScratchboxArm.tar.bz2; rm -f KnoppixScratchboxArm.tar.bz2 exit # now (outside of chroot): /bin/cp -fprd $HOME/linux/arm/maemo-sdk-rootstrap_3.1_armel.tgz $HOME/linux/arm/Makefile $HOME/linux/arm/arm.mk $HOME/linux/arm/README ${NEWSRCDIR}/etc/skel/arm/ # NOTE: if doing: dpkg --status xserver-xorg-video-nv # tells you it's not installed then something is wrong and you need to # force dpkg to install this (and many more probably missing) * Make the compressed KNOPPIX CLOOP file sudo mkisofs -R -U -V "Knoppix" -publisher "Amazonia" -hide-rr-moved \ -cache-inodes -no-bak -pad ${NEWSRCDIR} | nice -5 \ /usr/bin/create_compressed_fs - 65536 > ${MASTERDIR}/KNOPPIX/KNOPPIX # * Create the knoppix.iso file sudo mkisofs -pad -l -r -J -v -V "KNOPPIX" -no-emul-boot -boot-load-size 4 \ -boot-info-table -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat \ -hide-rr-moved -o ${KNXROOT}/knoppix.iso ${MASTERDIR} # Burn it (don't do from superuser) k3b ${KNXROOT}/knoppix.iso # try it out qemu -m 128 -cdrom ${KNXROOT}/knoppix.iso -boot d # or run it from a bootable knoppix CD: knoppix screen=1024x768 bootfrom=/dev/sda5/home/rick/knxcd/knoppix.iso