This is a non-edited copy of the crib sheet I kept. It lists all major steps; in or two instances minor editing is involved which is not fully documented here but clear from the context.
#!/bin/sh # parts from http://www.stirnimann.com/mystuff/doc/knoppix.txt # parts from Linux Gazette article by Sunil Thomas Thonikuzhivil # http://tldp.org/LDP/LG/issue87/sunil.html # also see http://www.knoppix.net/docs/index.php/KnoppixRemasteringHowto cd ~/src/debian/Quantian ## create (monstrously large) swapfile ## -- turns out that that is not needed on our 1gb ram box #dd if=/dev/zero of=swapfile bs=1024 count=2000000 #mkswap swapfile #swapon swapfile ## mount the compressed file from inside the iso, or cdrom mount -t iso9660 -o ro,loop=/dev/loop0 knopper.net/KNOPPIX_V3.2-2003-05-20-EN.iso /cdrom ## copy cdrom image to hard disk [ ! -d orig-cdrom ] && mkdir orig-cdrom cp -Rapv /cdrom/* orig-cdrom/ ## umount iso image umount /cdrom ## uses cloop module, compiled for 2.4.20 on homebud, 2.4.21-rc1 on chibud ## seems to create problems on chibud though insmod cloop file=orig-cdrom/KNOPPIX/KNOPPIX ## after mounting the system is visible in uncompressed/ [ ! -d uncompressed ] && mkdir uncompressed mount -o ro /dev/cloop uncompressed ## copy out of the uncompressed-on-the-fly knoppix system [ ! -d source ] && mkdir source cp -Rapv uncompressed/* source/ ## umount compressed image, and release cloop module umount /dev/cloop rmmod cloop ## at this point, du -kcs shows ## Knoppix 3.2: 2103356 ## chroot into copied and expanded Knoppix chroot source/ mount -t proc proc /proc umount /proc/bus/usb ## cleanup vi /etc/mtab # to remove what Klaus Knopper had mounted vi /etc/resolv.conf # to get a nameserver vi /etc/apt/apt.conf # to use unstable, not testing for Quant stuff ## mount local apt archive over NFS [ my server is at 192.168.1.8 ] mount 192.168.1.8:/var/cache/apt/archives /var/cache/apt/archives ## make room # sort by size grep-status -FStatus -sInstalled-Size,Package -n \ "install ok installed" | paste -sd " \n" | sort -n ## openoffice ## -- then down to 1888380 dpkg --purge openoffice-de-en ttf-openoffice rm -rv /usr/share/fonts/truetype/openoffice ## large internationalization data ## -- down to 1767360 dpkg --purge `grep-status -F Package -s Package -n i18n` ## windows emulator ## -- down to 1739920 dpkg --purge `grep-status -F Package -s Package -n wine` ## games ## -- down to 1670796 dpkg --purge freeciv falconseye-data fb-music-high rocks-n-diamonds \ frozen-bubble frozen-bubble-data enigma falconseye xboing \ chromium chromium-data xboard kasteroids freeciv-gtk \ netris fortune-mod fortunes-min gnuchess kteatime \ xbattle kbounce ksokoban xskat \ koules xgalaga gtans libkdegames1 kreversi kbattleship \ kmahjongg imaze ace-of-penguins \ freeciv-data freeciv-client-gtk freeciv-server ## gimp, but libgimpprint and lingimp1.2 stay ## -- down to 1646896 dpkg --purge gimp1.2 gimp1.2-nonfree gimp1.2-print ## festival (not in 3.2) #dpkg --purge `grep-status -F Package -s Package -n fest` ## KEEP foomatic #dpkg --purge `grep-status -F Package -s Package -n foomatic` ## lyx ## -- now down to 1626908 dpkg --purge `grep-status -F Package -s Package -n lyx` ## abiword #dpkg --purge `grep-status -F Package -s Package -n abiword` ## isdn, ppp, "comm" #dpkg --purge `grep-status -F Package -s Package -n isdn` #dpkg --purge isdnutils-base libcapi20 ipppd pppdcapiplugin ibod ipppd #dpkg --purge `grep-status -F Package -s Package -n ppp` #dpkg --purge ppp wvdial pptp-linux xtel #dpkg --purge `grep-status -F Section -s Package -n comm` ## and some large ones #dpkg --purge scotty asc freeciv locales libopenh323-1.9.10 umognomemeeting \ # freeciv-gtk ## a few large packages ## -- now down to 1594212 dpkg --purge qcad selflinux ding trans-de-en ## remove non-free incl. netscape and acrobat (mozilla, xpdf are in) ## -- that brings it to 1578868 dpkg --purge unp dpkg --purge `grep-status -s Package -F Section non-free -n ` ## remove some extra window managers (keep fluxbox) ## -- now at 1609324 dpkg --purge larswm icewm-common icewm wmaker wmaker-data wmakerconf \ wmakerconf-data xfce xfce-common dpkg --purge manpages-de mozilla-locale-de-at user-de squid dpkg --purge `deborphan` ## NOW we are at 1600372 ## put the Quant back into Quantian ## from unstable, pulls in atlas, gcc-3.3, gnome stuff -- 94.7mb apt-get install r-base-dev r-mathlib r-recommended ess \ r-cran-gtkdevice r-gnome r-omegahat-rgtk r-omegahat-ggobi \ r-cran-rodbc r-cran-tseries r-cran-tkrplot ## 7.3mb apt-get odbc-postgresql libmyodbc r-cran-coda r-cran-mcmcpack r-noncran-lindsey ## 41.3mb apt-get install gsl-bin libgsl0-dev \ quantlib-python libquantlib0-dev quantlib-examples r-cran-rquantlib \ octave2.1 octave2.1-emacsen octave-ci octave-epstk \ octave-forge matwrap octave-sp libinline-octave-perl ## 10.6mb apt-get install gretl libgretl1-dev ## 0.4mb apt-get install libstatistics-descriptive-perl libmath-numbercruncher-perl ## 87.5mb apt-get install gperiodic rasmol pdl yorick gnuplot plotutils \ aribas autoclass euler geg geomview \ mcl multimix pari-extra pari-doc pari-gp \ maxima xmaxima maxima-emacs maxima-share \ pgapack pspp rcalc saml \ scigraphica gnumeric-gda gnumeric-python #kmatplot kmplot # 10.8mb apt-get install ginac-tools libginac-dev #ginaccint # 129mb apt-get install apcalc calc xlispstat yacas yacas-doc \ evolver freefem freefem-examples gambit gambit-doc gap \ gap-core gap-small-groups gap-prim-groups gap-trans-groups\ glpk lp-solve gmt gmt-doc-pdf gmt-tutorial mayavi # 13.2 apt-get install texmacs ## back to testing ## 67.8mb apt-get install dx dx-doc dx-dev dxsamples # utilities #apt-get install tramp jed xjed smtm ## Now we have 2057276 rm /etc/skel/Desktop/SelfLinux.desktop vi /etc/skel/.kde/share/config/kickerrc # edit out OpenOffice entry # add /usr/share/applnk/Editors/Emacs_21.desktop umount -t nfs -a umount /proc ## Important !! ## trying X11 in the chroot ## - created some problems on server machine, so tar'ed up sources/ dir ## and transferred to laptop ## - copied /etc/X11/XF86Config-4 from actual env. ## - had to add xfs settings on fontserver ## - shut down kdm on laptop ## - startx et voila, kde 3.1 / knoppix 3.2 ## getting Ready to master cp source/usr/bin/create_compressed_fs . ## ## remember to undo resolv.conf, apt.conf, XF86-Config-4, ... ## clean out tmp, cache dirs, /etc/skel/, etc pp ## ## master the compressed image (slow, memory intensive) mkdir release mkdir release/KNOPPIX ## This take ~17mins and ~500mb ram on the dual Athlon 1800XP/1gb ram box mkisofs -R -l -V "KNOPPIX iso9660 filesystem" -hide-rr-moved -v source/ \ | create_compressed_fs - 65536> release/KNOPPIX/KNOPPIX ## master the iso cp -vax orig-cdrom/KNOPPIX/b* orig-cdrom/KNOPPIX/[ikmrw]* \ orig-cdrom/KNOPPIX/KNOPPIX-* \ orig-cdrom/KNOPPIX/README_Security.txt release/KNOPPIX cp -vax orig-cdrom/{Demos,LinuxTag,Makingof,Talks,auto*,index*,cdrom.ico} release mkisofs -l -r -J -V "Quantian (KNOPPIX 3.2 20030520)" -hide-rr-moved \ -v -b KNOPPIX/boot.img -c KNOPPIX/boot.cat -o Quantian.iso release/ ## inspect the iso (it doesn't have the top-level autorun.bat stuff) mount -t iso9660 -o ro,loop=/dev/loop0 Quantian.iso /cdrom ## if it's a cd-rw, blank it first cdrecord blank=fast ## write cdrecord -v -data Quantian.iso echo Done exit 0