This page documents the process that I used to install Ubuntu 6.06 on a decTOP system.
The decTOP is a cheap, fanless, low power PC, based on an AMD Geode processor. Originally sold as the AMD Personal Internet Communicator (PIC), it has since been bought by Data Evolution Corporation and is being sold through their online store for $99 (plus about $20 shipping).
decTOP system specs:
Links to other sites about the decTOP/PIC hardware:
The decTOP has limited specs out of the box, but it's not a bad deal for $100. It's definitely enough to get your mom on the internet. Both the RAM and the hard disk are easily upgraded if you want more. (My decTOP now has 512 MB of RAM and a 120 GB disk.)
Many people have emailed me to ask if this would make a good MythTV machine. Although I don't have a definitive answer, my experience with video playback in VLC and Flash is that the decTOP is not nearly powerful enough to play video smoothly (i.e. 1-2 frames per second). I'd suggest looking at VIA's fanless mini-ITX motherboards instead.
As it ships, the decTOP boots to an error prompt because there is no valid boot media. The internal disk has been wiped. No BIOS options are available, or at least I haven't found out how to access them yet. The good news is that the decTOP will try to boot from a USB storage device automatically if one is present. My USB drive is actually a USB SD card reader with a 1GB SD card inside, but it seems to work just fine.
To create a bootable USB disk, I used syslinux. Most of the documents on the web about syslinux describe how to use it on a Linux system (e.g. here); since my primary machine runs Windows, I'll describe the process on Windows. It's pretty simple:
syslinux -sma [X:], where X: is the drive letter of your USB drive. (Try not to do this using the wrong drive letter.) Most of the documentation out there omits any mention of the "m" and "a" flags, because they don't exist on the Linux version of syslinux. You need them. (Or, on Linux, you need to write the master boot record in some other way.)
You can try booting that flash drive now if you want, or you can just keep going to the next step.
Now, to the good part: installing Ubuntu. First question: which distribution/version/installer should you use? Installer is easy: use the alternate install CD image, not the live CD image. The live CD image will boot and run, but running the installer from within Ubuntu takes more than 128 MB of RAM. Version is easy, too: use 6.06. There's a problem with the 7.04 alternate installer that won't let you install from a USB key for some reason. The choice of distribution (Ubuntu or Xubuntu, basically) is up to you. I installed Ubuntu at first, but it's kind of slow. Xubuntu is a little more responsive. Both work fine, though.
Download your choice of installation CD image from the Ubuntu site. You should have a file with a name like "xubuntu-6.06.1-alternate-i386.iso". Either burn that file to a CD or unpack it using a program like 7-zip. Copy all of the files on the CD (or in the unpacked directory) to your USB drive.
Next, follow these instructions on the Ubuntu wiki: Installing Ubuntu from a Flash Drive. A summary of these steps is as follows:
mount -t vfat /dev/sda1 /cdrom. Use Alt-F1 to switch back to the first console where your menu is waiting.
Once installation is finished and you boot up your installed OS for the first time, be prepared for a nasty surprise. The X server will fail to load, and you'll be left staring at a screen that asks "Would you like to view the X server output to diagnose the problem?". This brings us to the next section.
Go ahead and view the output. It's going to gripe about your mouse:
(EE) Failed to load module "mouse" (module does not exist, 0). It gripes about some other things, too, but the mouse is the show stopper.
The problem is that the X server has no "mouse" module installed. It should be using "evdev" instead, but for whatever reason, it isn't configured properly. We have to edit the config file (/etc/X11/xorg.conf) ourselves.
The evdev module can be configured to find your mouse in one of three ways: by port name, by mouse name, or by autodetection. Unfortunately, autodetection is broken, so we're stuck with either binding evdev to a particular mouse or to a particular USB port. I am choosing the port option since I'd like to be able to swap mice without editing a config file. This Advanced Mouse HOWTO discusses all three options in more detail.
Here's a step by step breakdown of how to configure the X server to use evdev bound to a USB port:
more /proc/bus/input/devicesto list the devices attached to the system. Look for your mouse. Mine is called "Logitech USB Receiver". (You'll want to know that name if you're using the bind-to-name evdev config.) The important line for us is
P: Phys=usb-0000:00:0f.4-1/input0or something similar. This is the port you need to specify to evdev.
sudo vi /etc/X11/xorg.conf(root password is the same as the password you set up for your own login)
Section "InputDevice"to look like this:
Section "InputDevice" Identifier "Configured Mouse" Driver "evdev" Option "CorePointer" Option "Phys" "usb-0000:00:0f.4-1/input0" EndSectionThe value for the "Phys" option is whatever the "Phys=" line said in /proc/bus/input/devices. (This solution came from here.) Save this file and exit.
sudo /etc/init.d/gdm restart
Congratulations! You should have a working Ubuntu installation.
All material on this site Copyright (C) 2007 Jonathan Scott. All rights reserved.