Hacking the 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.
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.
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.
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.
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.
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.
Practical books for the most technical people on the planet. Newly available books include:
- Agile Product Development by Ted Schmidt
- Improve Business Processes with an Enterprise Job Scheduler by Mike Diehl
- Finding Your Way: Mapping Your Network to Improve Manageability by Bill Childers
- DIY Commerce Site by Reven Lerner
Plus many more.
- Building a Multisourced Infrastructure Using OpenVPN
- Happy GPL Birthday VLC!
- Unikernels, Docker, and Why You Should Care
- diff -u: What's New in Kernel Development
- What's New in 3D Printing, Part III: the Software
- Giving Silos Their Due
- Controversy at the Linux Foundation
- Don't Burn Your Android Yet
- Non-Linux FOSS: Snk
- Firefox OS