Walltop
WallTop computers... recycle an old laptop by removing all the extraneous parts such as the cdrom drive, floppy drive, (dead) battery and then hanging it on the wall.
I am building one from an old Dell Inspiron 3700.
Operating system
I looked at using Debian, Damn Small Linux, Puppy Linux (which immediately panics on boot), and Movix. I decided I might as well stick with Ubuntu so I am building a custom Live CD. I will then transfer it to a Compact Flash card, which will be plugged into an adapter and replace the incredibly noisy stock 4200 rpm hard drive.
See http://www.debuntu.org/how-to-customize-your-ubuntu-live-cd
Set up - mount cd and copy files
mkdir /tmp/livecd mount -o loop /export/bellman/home/bwilson/Dell/xubuntu-9.04-desktop-i386.iso /tmp/livecd mkdir /home/bwilson/livecd mkdir cd rsync --exclude=/casper/filesystem.squashfs -av /tmp/livecd/ cd mkdir squashfs custom modprobe squashfs mount -t squashfs -o loop /tmp/livecd/casper/filesystem.squashfs squashfs/ cp -a squashfs/* custom umount squashfs umount /tmp/livecd rmdir /tmp/livecd
Access the image
cp /etc/resolv.conf /etc/hosts custom/etc/ chroot /home/bwilson/livecd/custom mount -t proc none /proc/ mount -t sysfs none /sys/ export HOME=/root
Customize the image
Packages to remove from the stock image.
apt-get remove --purge gnome-games # non-english language packs for i in `dpkg-query -W --showformat='${Package}\n' | grep language-pack | grep -v en`; do apt-get remove --purge $i; done
for i in `dpkg-query -W --showformat='${Package}\n' | grep gimp`; do apt-get remove --purge $i; done
apt-get remove --purge abiword gnumeric aspell aspell-en apt-get remove --purge cdparanoia cdrdao dvd+rw-tools brasero genisoimage apt-get remove --purge pidgin pidgin-data thunderbird
apt-get remove thunar xsane-common imagemagick imagemagick-doc
# EVERYTHING Gnome related - don't want a desktop apt-get remove --purge `dpkg-query -W --showformat='${Package}\n' | grep gnome`
# Windows friendly things apt-get remove --purge ntfs-3g ntfsprogs # System utilities apt-get remove --purge logrotate cups cups-bsd cups-common reiserfsprogs
# Documentation apt-get remove --purge docbook-xml manpages
Remove the desktop
Update the /etc/apt/sources.list file to activate other repositories.
Then get updates
apt-get update
Add the things I really want
apt-get install emacs21-nox libcurl3 openssh-server realplayer flash
adduser bwilson Give root a password Copy in .ssh directories for root and bwilson
Do the update at the end, there will be less to do
apt-get upgrade
Good enough for now
apt-get clean umount /proc/ umount /sys/ exit rm custom/etc/resolv.conf custom/etc/hosts rm -rf custom/tmp/*
Creating a new ISO image
The extra 'rm' commands are just in case we've been here before.
chmod +w cd/casper/filesystem.manifest chroot custom dpkg-query -W --showformat='${Package} ${Version}\n' > cd/casper/filesystem.manifest cp cd/casper/filesystem.manifest cd/casper/filesystem.manifest-desktop rm -f cd/casper/filesystem.squashfs mksquashfs custom cd/casper/filesystem.squashfs rm cd/md5sum.txt (cd cd && find . -type f -print0 | xargs -0 md5sum > md5sum.txt)
rm -f Ubuntu-Live-custom.iso cd cd mkisofs -r -V "Ubuntu-Live-Custom" -b isolinux/isolinux.bin -c isolinux/boot.cat -cache-inodes -J -l -no-emul-boot -boot-load-size 4 -boot-info-table -o ../Ubuntu-Live-custom.iso .