Hacking the Eee PC

How to tweak your Eee PC.

The version number of the package may have changed since the time of this writing. As this upgrades the version of Skype already installed, the Skype launcher will launch the new version.

Figure 3. Some Linux mascots take time out from their busy schedule to test video calling for us.

During the course of adding applications to the menu, the observant will notice that the Eee ships with most of KDE installed. During its development phase, the Eee exposed an option to enable a full desktop mode with a complete KDE 3.4 desktop. The most elegant solution for enabling the full desktop is to install a package that does the configuration for you from wiki.eeeuser.com/howto:getkde. This package essentially downloads the packages for kicker and ksmserver, and modifies the ASUS startup scripts. It adds an option to log in to full desktop mode from the easy mode shutdown dialog. To get back into easy mode, there is an option in the K menu. This page also details the manual methods for enabling full desktop mode.

Figure 4. A Full KDE Desktop

Adding more software from a Xandros or Debian repository is the next logical step in customising the operating system that ships with the Eee. For us, the Eee requires only the addition of Emacs and Subversion to be a great portable hacking tool. You can use any Debian Sarge repository or a Xandros 4.0 one, as shown below. There are a few caveats though. As the Xandros running on the Eee is heavily customised by ASUS, it's very easy to end up with the Eee in an unbootable state if you allow apt to upgrade too much. Although it's not a complete solution, apt pinning can be used to ensure that the ASUS repository always takes priority for a package.

Add your repository to /etc/apt/source.list with your favourite text editor as root, either your local Debian Sarge repository or the Xandros one below:

deb http://xnv4.xandros.com/4.0/pkg xandros4.0-xn main 
 ↪contrib non-free

Then, create the file /etc/apt/preferences, and add the lines:

Package: *
Pin: origin update.eepc.asus.com
Pin-Priority: 999

As apt sources default to a lower priority, this ensures that packages from the ASUS repository are prioritised. It's still possible though to break your Eee by installing packages willy-nilly. If it looks as though an action is going to upgrade a large number of packages, especially if it looks like what it's upgrading is all of KDE, cancel the change.

This limitation can be extremely frustrating if you want to make more drastic changes to your Eee PC's installed packages. Another option is to install a generic Linux distribution on the Eee. eeeXubuntu (wiki.eeeuser.com/ubuntu:eeexubuntu:home) is a version of the Xubuntu 7.10 distribution with Eee-specific drivers integrated and tweaks for low-resolution displays. It's an excellent choice if you want a more modern distribution on your Eee but would prefer not to compile the drivers from ASUS by hand.

The wiki page has in-depth instructions on how to create a bootable USB stick for your Eee. Boot your Eee from the USB stick by pressing Esc at boot time to get to the boot options menu, and from the GRUB bootloader, select the option to load eeeXubuntu with Eee-specific drivers and fixes. From there, it's all very familiar. Click the Install icon on the desktop once the live CD loads, and navigate your way through the Ubuntu installer.

If your Eee has 512MB or more of memory, you probably can get away with not creating a swap partition. In our testing, running Firefox, Pidgin and Thunderbird, the Eee was using approximately 300MB of memory, minus buffers/caching. If your Eee has 1,024MB or more of memory, you'll never notice the difference.

Opting out of swap, however, does have the side effect that hibernate to disk is disabled. The Eee does have suspend to RAM support under eeeXubuntu, but this level of suspend does consume a fair amount of battery. Leave your Eee suspended for 24 hours, and expect to see your battery down to half when you resume it.

Figure 5. eeeXubuntu is a customised Xubuntu for the Eee PC.

The simplest and most rewarding Eee hardware mod is upgrading the built-in memory. Note: this mod requires removing a sticker that claims its removal will void your warranty. According to a public statement by ASUS at usa.asus.com/news_show.aspx?id=9223, this is not the case, and upgrading your memory will not void the warranty on your Eee. However, Linux Journal takes no responsibility for any damages to your Eee or loss of warranty incurred by following this advice.

The Eee PC takes a single SODIMM of DDR2667, in either 512, 1,024 or 2,048MB. That's right, the Eee PC can be upgraded to an impressive 2GB of memory.

To upgrade the memory on your Eee, you need a set of small electronics screwdrivers and a clean surface that's safe for handling static-sensitive equipment.

If you haven't installed memory before, Linux Journal recommends you enlist the help of a professional or a hardware-minded friend.

Ensure that the Eee is shut down (not suspended), and unplug it from the power. Turn the Eee upside down and remove the battery.

Using a very small Phillips screwdriver, remove the two screws in the memory panel. One is covered by a sticker that will tear easily if you simply remove the screw as though the sticker was not there.

Use a small flatblade screwdriver very carefully or a fingernail to lever up the memory compartment. Put the memory compartment cover and the screws to one side.

To remove the memory that shipped with your Eee, carefully use a pair of small screwdrivers or your fingers to lever the clips outward. The memory module will pop upward when it is free of the clips. Remove the module from the slot, taking care to touch only the very outside edges of the module.

Figure 6. Removing the Module

Place the module aside in a static-safe place, and remove the new module from its packaging. Place it in the slot at a 45-degree angle, as shown in Figure 7, taking care that the notch on the module matches the key on the slot. When the module's base is securely slotted in, it can be carefully lowered into position by pushing the top corners of the module backward with your fingers, so that it lies flat against the Eee's motherboard. The metal clips should snap over the sides of the module with a satisfying click when it's properly in place. Once the memory is secure, replace the memory compartment cover and ensure that all sides have clicked down.

Figure 7. Installing the New Module

If you're anything like us, at this point, you'll hunt all over the desk searching for the screws only to find them 20 minutes later stuck to the magnetic closure on the MacBook. Replace the two screws to secure the memory compartment cover, and insert the battery again. It's always a good idea to run memtest86 over any new memory you install, which is an option from any recent Ubuntu live CD or the eeeXubuntu bootable USB stick if you made one earlier.

It's pretty easy to see how the Eee has taken the personal computer market by storm. It's cheap, friendly and oh-so-very hackable, with something for everyone. There are myriad other hacks not covered here, from installing Linux distributions and adding the drivers yourself to soldering additional gadgets to the motherboard. In fact, that's what we're off to do right after we submit this article—solder a mutilated Bluetooth dongle to the motherboard, as now we won't get in trouble if we break it.

Have fun hacking your Eee, but remember—installing Windows is cruel to Eee PCs and not endorsed by Linux Journal!

Jes Hall is a Linux Technical Specialist and KDE developer from New Zealand. She's passionate about helping open-source software bring life-changing information and tools to those who would otherwise not have them.



Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

asus eee pc

ltpbattery's picture

give the asus laptop battery new life http://www.ltpbattery.us/

Hacking the eee PC

Steve315's picture

Wonderful article. Just what I was looking for. I might mention one tiny nit. In the section where Jes is talking about apt pinning, the entry for the pin should be:

Pin: origin update.eeepc.asus.com

rather than

Pin: origin update.eepc.asus.com

How to not lose those screws.

Jim Ramsey's picture

Go into the kitchen and get a tea cup or coffee cup, style doesn't matter, but I like wider ones than narrower ones.

Drop the screws and the memory panel and your small screwdriver, for that matter, into the cup.

Now everything is easy to find.

If you feel especially hygienic, wash the cup when you're done.

If you feel really hygienic,

Anonymous's picture

If you feel really hygienic, wash the cup before you begin.

new file engine search

mous's picture

http://newfileengine.com/ is the best search engine- new system which do really works!

Just wondering if installing

Anonymous's picture

Just wondering if installing an alternative OS, like Ubuntu EEE or eeexubuntu would void my warranty. I had an HP laptop at one point, I installed Ubuntu 7.10 and they said I voided my warranty by doing that. Hopefully Asus isn't as lame.

Asus eeePC hacks

frontierscientist's picture

More eeePC hacks, please! The installed Xandrox Linux system--which apparently is an offshoot of Debian--does not include very many advanced apps, such as a java interpreter, c/c++ compiler, or other developer tools. Xandrox.com has only 2 free tools for download (neither of which looks interesting!) and I am not sure if Debian or Ubuntu programs will run correctly (So it seems from the eeePC forums I have been looking at)..so please, more command line hacks, lists of compatible Linux software and sources, and help to "Xandrosize" other Linus Software!

frontier sciences group

A couple of tips

Anonymous's picture

The main IceWM config file on my Eee 900 is actually ~/.icewm/preferences

And after editing the file you don't have to reboot for changes to take effect; just issue 'killall -HUP icewm'

A couple of tips

Anonymous's picture

The main IceWM config file on my Eee 900 is actually ~/.icewm/preferences

And after editing the file you don't have to reboot for changes to take effect; just issue 'killall -HUP icewm'