I discovered recently the truth of the old saying that necessity is the mother of invention. Yes, I finally did it. I bricked my beloved EeePc. I had just installed the Smart package manager and a subsequent reboot saw me stuck in, well, an eternal boot loop. Impulsive mixing of repositories always ends in tears--but not being able to boot? Argh! To rub salt into the wound I had mislaid the Xandros DVD to do a reinstall and I didn't even have an external CD/DVD drive anyway. Organised or what? Well, I might not be organised but I'm a persistent little bugger and I was determined to either fix Xandros or replace it with something as good or better without shelling out for an external drive in the process. Ubuntu appeared to come to the rescue and not just any Ubuntu, but "the" Ubuntu specifically modified for ultra portable micro computers and MIDs--on a flash drive no less. Canonical seem to be taking netbooks seriously.
GNU/Linux, a solution for every problem
If you can point and click you'll be in hog Heaven
I know that the hacker community has been uber busy since the Asus EeePC broke through the clouds heralded by bugling heavenly angels and Seraphims announcing its arrival in the digital firmament. The roll call of customised GNU/Linux distros has grown impressively. Most of them are designed for a full SSD install to replace the Xandros OS. There are versions too for running some distros from a USB stick but they were not, in the first instance at least, for novices. In the year since the EeePC arrived on my doorstep matters have progressed significantly. Several distros designed for standard laptops have developed GUI tools for installing GNU/Linux onto a USB stick that take the pain out of formatting, partitioning and making it bootable. If you can point and click you'll be in hog Heaven.
Two GUIs stand out: Live USB Creator for Fedora and Create a USB Startup Disk in the menu of Ubuntu 8.10 (under Accessories). The latter is presumably specific for creating bootable Ubuntu USB images whilst the corresponding tool in Fedora only allows you to work with Fedora distros. There is a third option: Ubuntu Mobile itself has developed a version of Intrepid Ibex (8.10) specially modified for UMPCs and MIDs. (It was preceded by the Ubuntu Remix project from which it borrowed code and ideas.)
Better still, they have also provided a brilliantly simple GUI for installing their USB image to a flash drive. There are no bells or whistles. It has just enough features to do the job and no more. However, you will need to download and install it first and Ubuntu Mobile have provided a link for on their site. Once downloaded gdebi will install it for you and if you are doing this on Ubuntu 8.10 all dependencies will be satisfied. In fact, in a nice touch, I performed this operation entirely from a running live CD of Intrepid Ibex.
Use Ubuntu's own built-in USB creator
However, using Ubuntu Mobile's USB installer has a serious drawback: it runs Intrepid Ibex as a live session so there is no persistence of data, settings, files or installed software. That's pretty critical when you want to configure important stuff like wireless/mobile cards and they require a reboot to make sure they work. Fortunately there is a solution. Ubuntu 8.10 comes with it own built in USB installer and it utilises a persistence loop file (casper-rw loop file). It can be accessed from the System menu, the second item under Administration. However, whilst this installer will create a stick with persistence it won't recognise the mobile .img, only the .iso image of the full Ubuntu 8.10. Checkmate.
The good news is that if you are using Ubuntu 8.04 you can still access this usb-creator by downloading from here. Whichever of these two distro versions you are using, you can not only install Ubuntu onto a USB stick but also to a memory card which means that you can also exploit the EeePc's SD slot. If speed and space are prime considerations you can just as easily download Intrepid Ibex in other, leaner manifestations like Xubuntu or install different windows managers from within Gnome. Finally, if you are not using Ubuntu 8.10 there are reports that the packages for USB Startup Disk Creator will work on version 8.04 and you can grab a copy from the official Ubuntu site (but lacking persistence).
Try UNetbootin and Super Ubuntu
Failing that you can use UNetbootin which is available for Debian and Ubuntu. It's main selling point is that it sports an impressive list of supported distros. Your mileage may vary but I managed to install and run two out of four distros on the EeePC on a USB stick using UNetbootin. The only downside to this brilliant piece of software is that unlike the Ubuntu tool it does not support persistence, which is annoying if you are not planning a full install to the EeePc's internal SSD. However you can bolt on that feature with a choice of three persistence file sizes.
Open the Readme.txt file, digest the instructions and then download and install one of the three zip files (128MB, 256MB or 512MB). It is not as flexible as the Ubuntu tool, where the slider allows you to set the size of the persistence file relative to the USB stick capacity. If you are trying to run Fedora off a USB stick and this hack does not provide sufficient space for persistence, and you want to install Fedora on your stick, you are in luck: from Fedora 9 onwards a Live Usb Creator tool is included and it comes bundles with this vital feature. If you are not a Fedora fan there is one final throw of the dice: some enterprising soul has hacked UNetbootin to work with installing and downloading Super Ubuntu which has a lot more software pre-installed, saving bandwidth and hassle.
It is Windows only so unless you dual boot with Windows you're out of luck. However, if you download Super Ubuntu separately the non-customised version of UNetbootin will handle it. In fact as the download/install version downloads to tmp once you install and reboot the .iso will be lost (because, in this mode Unetbootin, as the name suggests, is a network install). Better to download and save conventionally and you can reuse it time and again without wasting time downloading again. It should even work with the 8.10 tool--with persistence too. It is a 1.1GB .iso (32-bit only) so you will need a USB stick with large capacity.
Taming the Ibex
Whatever tool you choose the main precaution you need to take is to ensure that you are installing to the intended device. The safe, easy and quick way to avoid disaster is to open a terminal and type df -h which will list all drives in a neat, human-readable format. Now, plug in the USB stick and run that command again and you will see it added and identified. When you run the GUI with the stick plugged in it will pick it up and you will know you are writing to the correct device.
Using the "bundled" tool supplied by the Ubuntu Mobile project was the only method available. I installed the customised distro to my 4GB Corsair Flash Voyager USB stick. I didn't time it but it wasn't hanging about and in a relatively short time it completed without a hitch, was duly removed from the USB port on my main laptop and inserted into a USB port on the EeePC. Powering it up, I hit F2 to pull up the BIOS screen and set the stick to the first device in the boot order, F10 to save and exit. Done. I was greeted by the now familiar Ubuntu boot screen and in a fairly respectable time I had a working Gnome desktop.
I would throw in the obligatory screenshots but I have demurred, to avoid readers spewing projectile vomit across their precious digital real estate
I was feeling pretty pleased, well, I was until I saw what greeted me. The very first thing you will want to customise is the appearance. Gnome has never been my favourite but Lord this one could give the three ugly sisters in Cinderella a run for their money. (Mr Shuttleworth, pretty is an issue.) Think Ubuntu and you think brown but this distro takes brown to new levels....of brownness. I felt like I was buried under a collapsed tunnel.The experience left me reflecting that the Ubuntu artists would be first against the wall alongside accountants come the revolution. Fortunately, I was able to mount the Xandros SSD and change the desktop wallpaper from my collection there. It was only a holding measure to avert terminal nausea. Usually at this point I would throw in the obligatory screenshot but I have demurred to avoid readers spewing projectile vomit across their precious digital real estate. The real problem however is in the way Ubuntu umpc apportions screen space--when every pixel is worth its weight in gold.
There were three problems here: (1) the task bar could be set to autohide, moved to another screen border or removed altogether but it seems to lack the really important feature common to virtually every other distro: resizing. It is simply too big on a seven-inch screen where space is at a premium, (2) there is also a transparent taskbar on the left which retains icons for mimimised running applications. Again, large, obtrusive and not resizable. Options are only to autohide or remove it. I removed it. (3) many of the applications seem to be lacking borders and close buttons--something exacerbated by the default theme colour.
This is GNU/Linux, not the Windows your Grandfather used
It wasn't difficult to improve things by relocating the main taskbar to the right, autohiding both taskbars and changing themes and wallpapers. Much better. However, once you relocate the main taskbar that contains the Start Menu you lose the ability to launch programmes from the menu. Aha!, I thought. This is GNU/Linux, not the Windows your Grandfather used. Just Alt F2 to get a run dialogue box. That was when I discovered that it in fact launched the applications menu as if I was using Fluxbox. Some functionality restored after all then.
Just when I thought I might be in the Clover I got a very nasty surprise. This is Ubuntu so I looked for Firefox. I launched the browser. I got Midori! So awful I immediately did apt-get update rapidly followed by apt-get install firefox. Even the stock Xandros install had Firefox. It can hardly have been Ubuntu Mobile's idea of saving space. After all OpenOffice.org was installed and it makes Firefox look like a Flyweight boxer on the scales. Fortunately, due to the good offices of Apt-get a host of browsers was available and Opera too, scaling beautifully--just as they did on Xandros. With Apt-get too the real solution was only a few mouse clicks away by installing more minimalist, less processor and memory intensive windows managers like XFCE or Fluxbox. Incidentally, Midori has become part of the XFCE desktop environment. Hopefully it look much better there--and on a bigger screen too.
Ubuntu has suddenly made true mobile computing a brainless reality
Wireless connectivity in GNU/Linux has improved a lot in the last few years but problems still clog the digital fora. Xandros, and all the others whose netbooks have piled in behind the fabulous success of the Asus EeePC, recognised the critical importance of getting wireless cards to work out of the box, sans any configuration whatsoever. Unlike Asus, the developers of customised distros for UPMCs have no financial incentive to ensure out-of-the-box compatibility but they have been working pretty hard to do just that and there have been highly successful--as they have to be. So, it is disappointing to relate that Fn+F2 does not work for wireless on Ubuntu 8.10 (but did in 8.04) but, as I discovered when exploring this distro on a live CD before installing it on a USB stick, Ubuntu had suddenly made mobile computing a brainless reality.
On Asus's Xandros OS the connection wizard took care of configuring my 3G USB modem (Huawei E220). Three minutes later and I was online. To my surprise and delight my second laptop running Fedora 9 (upgraded subsequently to Fedora 10) made it shamefully easy to configure. Did I say configure? One click on the network connection icon in the system tray, check the 3G radio button and four seconds later you're online. In Fedora? It's a bloody miracle. Now Ubuntu has joined the pack. Plug in the modem and it is recognised and a wizard launches. Four mouse clicks later and 3G connectivity is sitting as an option in the network icon. In spite of the space and appearance issues I was won over by this feature alone for it makes the EeePC truly mobile and frees me from reliance on expensive cafe wifi hotspots or having to install software to hack while I drink my expensive latte.
My 3G connnection contract has monthly limits, and while I am unlikely to exceed them I like to have a fallback option on my unlimited broadband connection at home; for that to work I need my wireless card functioning, so before I would commit to a hard drive install I needed to see if it could be made to work. The solution is to install backported kernel modules but first you need to amend the Ubuntu repositories by adding the following:
deb http://archive.ubuntu.com/ubuntu intrepid-backports main restricted universe multiverse
If you don't want to hand edit files in a text editor then Ibex gives you the option to do point and click job instead. Just do System → Admin → Software Sources, select updates (intrepid backports).
Finally, open a console and type apt-get update followed by apt-get install linux-backports-modules-intrepid and finally echo ?blacklist ath_pci? | sudo tee -a /etc/modprobe.d/blacklist. If this fails, try to disable the Atheros drivers for the wireless card. You can do this from the Hardware Drivers menu and then reboot. If this menu is empty open /etc/modprobe.d/blacklist and check if the following three entries are present:
If not add them and save the changes (you will have done this as root). At least the developers ensured that the battery-saving screen dimming worked but Fn hotkeys for volume and wireless weren't functional.
Dynamic Kernel Module Support (DKMS)
Normally when you have to do this much hacking to enable wifi and Fn hotkeys you may encounter reversals of these functions when the package manager installs a new kernel. Fortunately GNU/Linux, including Ubuntu, will expand the Grub boot menu to give you the choice of kernels in case some feature does not work with the latest version. In the case of the EeePC you might think it advisable to remove the stock Ubuntu kernels to avoid this problem altogether to retain wifi functionality and other stuff too. If you want to do this type the following in a terminal: sudo apt-get remove linux-generic linux-image-generic linux-restricted-modules-generic. However it looks like this may no longer be necessary. Enter DKMS, Dell's Dynamic Kernel Module Support. The short and sweet of it is that it obviates the need for recompiling modules for third-party drivers for things like Madwifi after a kernel upgrade. DKMS will rebuild any module automatically.
The good news is that DKMS comes installed with the latest version of Ubuntu and if you want to try it out with other distros there are pre-compiled Debian and RPM binaries and source tarballs available on the Dell site. If you want to know more about this feature Linux Journal has a good and long article on it by one of its developers.
Install the full monty
After several valiant attempts to resuscitate the Xandros install I finally admitted defeat and switched off the life support. R.I.P. Xandros
Like all Ubuntu live CDs the Desktop includes an install option run from a live environment, but the real estate issues plus the lack of persistence finally did for it and I subsequently discovered that a non-customised Intrepid Ibex would work too. It installed on the Corsair Voyager without demur--and with persistence too. For everything. Better still, despite not being specifically designed for the seven-inch EeePC screen, the appearance was crisp, clear and uncluttered. I fell in love with it and after several valiant attempts to resuscitate the Xandros install I finally admitted defeat and switched off the life support. R.I.P. Xandros. Various attempts to install from the live session USB stick ensued both from the boot screen and the Desktop before eventually managing a permanent install on the third attempt.
Unlike Mandriva, Ubuntu has never made a song and dance about the fact that Intrepid Ibex will play nicely with the EeePC (and it must look really great on the nine-inch version. Damn, I should have waited. I am feverishly fingering my flexible friend trying to rationalise purchasing any UPMC with a nine or ten inch screen). True, it will require some post-install tweaking for the Fn hotkeys and getting wireless working, but if you follow the hacks on Tombuntu you should get everything working. The hacks apply to the 901 but I found that they worked with the 701 too. The only thing to fail was the Fn+F2 wireless toggle which meant that when I switched from wireless access to mobile USB access I couldn't disable the Atheros card to conserve battery power. Until I find a solution, when I'm away from home I simply use Ubuntu on the Corsair stick which gives me internet access with the wireless card disabled. Ubuntu does have two other bugs--one amusing and the other just annoying.
The Evolution Wizard bug deserves an entry in the "comedy bugs" corner
Taking the latter first, when you close down the EeePC will not actually shut down properly as a glowing LED reveals. The reason is to do with the soundcard but the solution is simple. Fire up a console (as root) and open /etc/default/halt and add the following line at the bottom: rmmod snd-hda-intel and save it. Shutdown should now proceed normally without needing to press the power button for several seconds. The other bug deserves an entry in the "comedy bugs" corner.
If you are running on AC power/battery and connect/disconnect (in addition to a power-saving dimming of the screen), the Evolution E-mail wizard starts. What a corker! The culprit here appears to be acpid which catches this events and sends the wrong code which triggers other scripts leading to Evolution launching. You can try commenting out all the entries in /etc/acpi/events/asus-mail to stop this. The other way to remove this bug is to use Apt-get to remove Evolution altogether (apt-get remove evolution --purge will take it out including the configuration files) though it may generate an error message. Failing that try closing the lid before (un)plugging.
The only other bug I encountered was the behaviour of the bundled movie player (Totem). In limited screen space clicking on some buttons caused it jump all over the place and required some persistence to use it, but when I did get it to run Youtube/BBC content via the plugins and films and TV recordings it was fine. This looks like a bug specific to the stock Gnome install of Intrepid Ibex. When I downloaded the Xubuntu version (based on XFCE) and ran it from a USB stick Totem behaved flawlessly.
Because it's still worth it
Despite these post-install bugs and tweaks, installing Intrepid Ibex on the seven-inch Asus EeePC was a good call. Wireless, USB mobile and Apt-get and well-scaled good looks make it my distro of choice on this machine. At last it has come into its own and joined the big boys. This undermines the efforts of the Ubuntu Mobile project. It just can't compete and I suspect that it suffers by comparison with Ibex because it was aimed broadly at UMPCs and not the EeePC specifically.
It's appearance there look like it has perhaps been designed more with MIDs in mind as the inclusion of a highly minimalist Midori browser seems to confirm. Still, things have progressed so far since the debut of the Asus EeePC that GNU/Linux users are spoilt for choice now so perhaps I shouldn't whinge so much. Hell, Android (the OS of the G1 phone) is only just out of the maternity suite and already someone has ported it to the Asus Eee PC 1000H. Whether that is a good thing is a moot question given the reach of Google but it demonstrates the possibilities.
The possibilities are enormous. For all the initial criticisms of the first EeePC, Asus deserve huge credit for kicking off one of the best and most exciting trends in computing since Klaus Knopper gave us the Knoppix live CD. Both showcase the best of GNU/Linux and the whole culture of free and open software. For every problem, free software has a solution. For every solution Windows has a problem and it usually resolves itself by dipping into your bank account.
A retired but passionate user of free and open source for nearly ten years, novice Python programmer, Ubuntu user, musical wanabee when "playing" piano and guitar. When not torturing musical instruments, rumoured to be translating Vogon poetry into Swahili.