Walltop: Difference between revisions

From Wildsong
Jump to navigationJump to search
Brian Wilson (talk | contribs)
Brian Wilson (talk | contribs)
Line 77: Line 77:


  adduser bwilson
  adduser bwilson
adduser kiosk
  Give root a password  
  Give root a password  
  Copy in .ssh directories for root and bwilson
  Copy in .ssh directories for root and bwilson
Line 83: Line 84:


  apt-get upgrade
  apt-get upgrade
Customize /etc/gdm/gdm.conf to support timed login as user "kiosk"


Good enough for now
Good enough for now

Revision as of 07:04, 24 June 2009

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
adduser kiosk
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

Customize /etc/gdm/gdm.conf to support timed login as user "kiosk"

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 .