The Data Evolution decTOP (previously known as the AMD PIC) is a small, low-power, fanless PC originally designed as an "internet appliance" for developing markets. While an earlier version of the decTOP/PIC used a locked-down BIOS to prevent installation of alternative operating systems, current units can be used with Linux and NetBSD. This document explains the process of installing and configuring Xubuntu 7.04 on the decTOP. HOWTOs for installing the older Ubuntu 6.06 release can be found here and here.
the decTOP system and a monitor
a 1 GB or larger USB flash drive
another PC running Linux or Windows (this HOWTO assumes a Debian or Ubuntu Linux system)
a reasonably fast internet connection for downloading a CD image
Since the decTOP doesn't have a CD/DVD drive, the normal CD installation procedure isn't an option (unless you happen to have an external, USB CD drive available). Instead, this guide uses a USB flash drive to boot the system and run the text-based installer from an ISO image of the installation CD.
Download the Xubuntu 7.04 i386 alternate install CD image from a local mirror. The alternate installer is needed due to its lower RAM requirements and greater flexibility. The file you want is xubuntu-7.04-alternate-i386.iso. Also go here and download the vmlinuz and initrd.gz
files. These files are special versions of the Linux kernel and initial
ramdisk that have been made for use with this installation method.
Don't decompress the initrd.gz file; just save it to disk. Finally, click on this link to download the xserver-xorg-video-amd driver package that you'll need later on in the installation process.
Install syslinux and mtools on your PC. If you're working from a terminal window, run:
sudo apt-get install syslinux mtoolsPlug in the flash drive. Under Ubuntu, the drive should automount to a point under the /media directory and appear on your desktop. Copy off any files that you want to save and then delete everything on the flash drive.
Verify the drive's device name and format. Flash drives are usually FAT16 formatted, which is what you want, but it doesn't hurt to make sure. On my system,
cat /etc/mtab | grep media
returns:
/dev/sdb1 /media/disk vfat rw,nosuid,nodev,shortname=mixed,uid=1000,utf8,umask=077 0 0
That output indicates that the flash drive's device name is sdb, the drive's partition (sdb1) is mounted to /media/disk, and the file format is FAT (vfat). Make a note of the device name on YOUR system; it may differ from this example.
Make the flash drive bootable. Run:
syslinux /dev/sdb1
to install the SYSLINUX bootloader. Then run:
install-mbr /dev/sdb
to install an MBR (master boot record) to the flash drive.
NOTE: SYSLINUX is installed to the partition (/dev/sdb1), while the MBR is installed to the device (/dev/sdb).
WARNING: Be absolutely sure to use the correct device name for YOUR flash drive, as determined in the previous step.
Use the text editor of your choice to create a new file named syslinux.cfg. The contents of the file should be:
default vmlinuz
append initrd=initrd.gzCopy the xubuntu-7.04-alternate-i386.iso, vmlinuz, initrd.gz, syslinux.cfg and xserver-xorg-video-amd_2.7.6.5~20060905-0ubuntu1_i386.deb files to the flash drive. To verify that you have the right files on the flash drive,
ls -a /media/disk
should return:
. .. initrd.gz ldlinux.sys syslinux.cfg vmlinuz
xserver-xorg-video-amd_2.7.6.5~20060905-0ubuntu1_i386.deb
xubuntu-7.04-alternate-i386.isoInstalling Xubuntu to the decTOP is much like installing on any other PC, but there are a few quirks to work around. These are detailed below.
After the decTOP completes its self-tests, you'll see this prompt:
MBR FA:
Press the "a" key and the prompt will change to:
MBR 1234F:
Press the "1" key and the system should boot into the text-based installer.
Follow the prompts to start the installation. The process is fairly self-explanatory and the Ubuntu team has good documentation available here. Everything should go smoothly up until the kernel installation stage.
Eventually, the installer will complain that "No installable kernel was found in the defined APT sources" and will ask if you want to continue without a kernel. Instead of answering the prompt, press Alt+F2 to switch to a console. Press Enter to activate the console, and then:
chroot /target
apt-get install linux-generic
A few moments later, a prompt will ask if you want to create a
symbolic link to the current kernel image; choose "Yes." This will be
followed by a lengthy warning message about bootloader configuration;
press Tab and choose "Ok." Next, the installer asks if you want to
abort the kernel installation; choose "No." That warning message can be
safely disregarded because Ubuntu uses GRUB instead of LILO,
and it will be configured properly as the last step of the installation
process. Once the system is up and running, a minor change to /etc/kernel-img.conf, detailed later in this HOWTO, will stop that warning message from appearing during subsequent kernel upgrades.
Once the kernel installation is complete, exit twice, once to leave the chroot
and again to leave the console. Press Alt+F1 to switch back to the
installer. Answer "Yes" to the "Continue without installing a kernel?"
question. The installer picks up where it left off and eventually gives
you the option of installing the Xubuntu desktop package; go ahead and
install it.
The Xubuntu desktop package will install normally until it reaches the anthy package. The installation hangs at this point due to lack of RAM; details are available in this bug report. Press Alt+F2 to switch to the console again and run:
ps | grep mkworddic
Note the PID of /usr/bin/mkworddic and run:
kill -9 [PID]
The installer then resumes gracefully. You probably don't need the anthy package on your system; it's only used for inputting Japanese text. If you do want/need it, you can always run:
sudo aptitude reinstall anthy
after the installation is finished.
The rest of the installation is smooth sailing; just sit back and wait until the installer tells you to reboot. Be sure to disconnect the flash drive so the system starts up from the hard drive.
A few tweaks are necessary to get everything up and running properly.
The xorg.conf file generated by Xubuntu didn't work on
my system; I was left with a black screen and couldn't even switch to a
text console. I recommend booting into single-user mode immediately
after installation so X.org can be set up correctly. When the system
reboots after finishing the installation, press the "ESC" key as soon
as the GRUB loading message appears. Pay attention, because you only
have about 3 seconds before the system automatically boots in
multi-user mode. Choose the "recovery mode" option and press Enter to
boot into single-user mode.
The video driver for the decTOP's Geode video chip isn't installed by default, but it should be on your flash drive. Once the command prompt comes up, plug in the flash drive and mount it:
mount -t vfat /dev/sda1 /media
And install the video driver:
dpkg -i /media/xserver-xorg-video-amd_2.7.6.5~20060905-0ubuntu1_i386.deb
To reconfigure your xorg.conf file, you can either run:
dpkg-reconfigure xserver-xorg
or manually edit your /etc/X11/xorg.conf file. The proper driver for the decTOP is amd. If you're manually editing your xorg.conf, look for this section:
Section "Device"
Identifier "Generic Video Card"
Driver "vesa"
BusID "PCI:0:1:1"
EndSection
and change vesa to amd.
Note that dpkg-reconfigure will automatically back up your original xorg.conf for you, but if you edit manually be sure to back up the original file first. For reference, my xorg.conf is available at the bottom of this page.
The amd driver supports the EXA acceleration architecture, but enabling it produced some rendering artifacts on my system. If you want to try it out, add this line to the Device section of your xorg.conf:
Option "AccelMethod" "EXA"
Xubuntu recognizes the decTOP's bundled USB Ethernet adapter as a Realtek RTL8150 and loads the appropriate driver automatically. Unfortunately, on my decTOP the adapter was flaky to the point of uselessness until I enabled ACPI. Doing so requires a small change to the boot-time kernel options. Run:
nano /boot/grub/menu.lst
Scroll down to the line that begins with # kopt=root= and add acpi=force to the end of the line. Save the file, then run:
update-grub
Reboot the system and ACPI will be enabled. After making that change, my Ethernet worked perfectly.
Next, you can edit /etc/kernel-img.conf to take care of the bootloader warning that appeared during installation:
nano /etc/kernel-img.conf
Just add a new line at the end that reads:
do_initrd = yes
Finally, edit your APT sources file, located at /etc/apt/sources.list and comment out the deb cdrom line near the top of the file. This will prevent Xubuntu from asking for the installation CD while installing packages.
When shutting down the decTOP, the hard drive spins down, then spins
back up and remains spinning after the rest of the system shuts off.
I've experimented with various changes to the /etc/init.d/halt script but haven't found a solution yet. I suspect it may be an ACPI quirk. Any help from readers would be appreciated.
Copyright © Joseph Gidi 2007

This work is licensed under a
Creative Commons Attribution-Noncommercial-Share Alike 3.0 License.