Asus Eee PC (Part Two): Setting up the full KDE GNU/Linux Experience

Asus Eee PC (Part Two): Setting up the full KDE GNU/Linux Experience


In Part One of my Eee PC series I looked at the hardware specifications of this miniature marvel. In such a small space Asus have managed to cram in a lot and at a price that is so low that it ought be illegal. However, it is a cliche to recall that hardware without software is junk--unless you have a fetish for silicon. In this post I will look at the software on the Eee PC. It will not be an explicit HOWTO, but it will include lots of links to enable you to get the best out of this two-pound wonder.

By default, the Eee PC ships out with a heavily customised version of Xandros. Leaving aside warranty, GPL violations and patent issues (which I covered in part one) this allows the user to experience wireless web browsing, e-mailing and office tasks from the off. Boot time (and shut down) in default mode is sinfully fast and there is a reason for this: Easy Mode, a tabbed interface where activities are grouped by categories/types. It may make the Eee PC look a bit Fisher Price but by God it doesn't hang about. However, no self-respecting hacker is going to stand for that. Underneath all that deceptive eye candy lies a full GNU/Linux distro.

Hacking Easy Mode

As soon as you have unpacked the little beast, charged it up and switched it on you will want to get the full-on GNU/Linux experience. The first thing to know is that the initial tabbed interface which acts as the gateway to all the usual functions you would expect is in fact based on a "dormant" ICEWM. If you want to retain Easy Mode because you like it and the fast boot times it gives you but you also want to access the traditional start menu and associated programmes there is a simple hack to do it.

You can find some super hacks for Easy Mode. The one we are interested in involves adding a start menu for Easy Mode. I will not reproduce it here as I do not wish to steal the thunder of those wonderful guys at eeeuser who were knee-deep in hacking the Eee PC before I had ever got my sweaty hands on one. It is easy and involves creating a directory, copying some files and using a text editor to add a line to the X11 configuration files and you can get it here. Just open up a terminal (Ctrl+Alt+T in Easy Mode) and follow the instructions.

Easy Mode + ICEWM + advanced mode =happiness!

Easy Mode plus the ICEWM start menu lifts the Eee PC factory default up but you will need one more step to reach the Elysian Fields of Unix land. Enter stage left (KDE-based) Advanced Mode. Once you have implemented this hack you will be in the familiar territory of a full-blown GNU/Linux distro.

The difference will be immediately obvious. It is the difference,as has been observed elsewhere, between the Eee PC as an appliance and as a computer. At 4GBs, the solid state drive is hardly capacious but even so the extra memory, RAM and marginally slower boot times caused by enabling an advanced desktop is more than worth the trade off. The real added bonus of this hack is that it is not irreversible. You can switch between the two modes as easily as you log in an out to change windows manager on any other distro.

However, one word of warning for the security conscious: When you first switch on the Eee PC it will take you through a familiar set up routine, including choosing a username and password. When you boot into Easy Mode you will be prompted for them both but once you have enabled Advanced Mode you will be logged in automatically. This is a known problem, and as at time of writing there is no solution. (If you went to Kcontrol Centre to try and fix it, you'd discover that you're out of luck.) In the meantime, the best thing you can do is to add a Bios passsword. Of course, these passwords could be hacked, but, as an interim measure, it is better than nothing (and presumably it adds an extra layer of protection to an already password-protected Easy Mode).

Since I purchased my Eee PC a number of methods to install an advanced desktop have emerged. Which one you choose will depend on your nerve, Unix skills and personal preferences. Whatever method you choose (Manual, Wizard or Easy) you can get full details on how to enable the advanced desktop in the Eee PC. As all methods require an internet connection, make sure you are online. Primarily, this all depends on two files in order to work: ksmserver and kicker. All methods use them and install advanced-desktop-eeepc (on the command line or via Synaptic).

Tip

There is a known problem with occasional error messages when using Synaptic which look like this: E: Unable to parse package file /var/lib/dpkg/status (2) and E: Unable to lock the download directory.

If this happens, either close Synaptic and install from the command line (see below) instead or, as root, execute dpkg --configure -a. That usually does the trick. Additionally, due to the small screen size it is difficult to resize the internal Synaptic screen to see a larger list of available packages. Using Apt-cache search with the name of the packages(s) you want to download and install on the command line may help here if you know exactly what you looking for rather than idle window shopping in Synaptic. Once you have located the package(s) you want apt-get install <your package> will. If you prefer to do it all from the comfort of the GUI, just close Synaptic and try again.

Eee PC wizard: another way to get KDE and other stuff

An alternative way to get to a full KDE desktop with added goodies is to download the Eee PC Wizard. It will add a lot of other stuff including codec support, extra repositories (overwriting the custom ones), webcam scripts and themes, to mention a few. It is a Bash script installed to your user directory. If you want to know more about it and the details of what it does the eeeuser wiki has a good explanation (You can of course add these separately later by other means. The wizard is the work of one Eee PC hacker, derred. It is in its second version so there seems to be an element of maintenance. There is also an (incomplete) uninstall script. Use the wizards at your own risk.)

Adding repositories to the EeePC

The default repositories that come with this customised Xandros (a Debian fork) will not give you access to the twenty-thousand plus packages in the Debian archive; however, it is easy to add repositories--but you do need to be careful about what you add because Xandros is not deemed to be strictly compatible with Debian. The danger of bricking the Eee PC is always lurking. (If you want to know exactly what comes bundled with this minature laptop check out the list of packages installed in the Eee PC. It's not half bad.

In the true spirit of the GNU/Linux community however, the paucity of compatible repositories has been addressed with the creation of bespoke ones especially for the EeePc. The eeeuser wiki has a list of extra Eee PC repositories that you can copy and paste into your /etc/apt/sources.list configuration or open Synaptic, select Settings > Repositories and click on the New button (bottom left) and copy and past the extra repositories into the relevant fields. If you're not sure what goes where, just click on any of the existing ones to view the layout. Even then you may find applications will either not install, or offer to install but will also inform you that certain packages, like glibc and kde desktop. In this case you can always try to install a free-standing pre-compiled binary. For me, this was the case with the Opera browser. A static Debian package did the trick and installed without complaint.

To get the latest version, download Opera from the official site and select "Other/Static DEB", your preferred mirror and download the browser. Click on the Home icon on the Desktop to open the xandros file manager and locate the Opera package. Right click it, select install Deb and follow the prompts. Note: if you try this in Konqueror that option will not exist (unless you install a package manager like Kpackage -and I could not locate in in Synaptic). If you prefer the command line the following in a terminal (as root) will suffice: dpkg -i <packagename+version>.

So far I have added, by stand alone and repository methods, Opera, Flock, Dillo, Miro, Netscape Navigator, VLC, amongst others. If you want to play it uber safe, head over to the Debian packages site and download the separate packages with the dpkg -i command, dependencies notwithstanding (as root of course). Getdeb is always a useful punt for favourite and popular software too if you are nervous of cooking with the repositories.

Pinning for the fjords

Ok, it's an execrable pun but pinning is always useful if, like your drinks, you insist on mixing your repositories. In the case of the Eee PC it is vital, if you are determined to use pure Debian repositories (rather than Xandros) and you don't want to brick your pride and joy. Whilst adding repositories is done through /etc/apt/sources.list (or by Synaptic's interface, Settings → Repositories), pinning is done through editing /etc/apt/preferences in your chosen text editor (Nano, Vi or Kate, etc). A quick visit to man apt_preferences will give you some idea of what is is and does. (It's quite verbose, so type man:apt_preferences in the Konqueror location bar for a better HTML-formatted experience.) What you set in this overrides what is contained in /etc/apt/sources.list.

Pinning is a big and complex subject but there is a very good [guide on pinning for beginners] (http://jaqque.sbih.org/kplug/apt-pinning.html). If you are wary of doing this for yourself, the good people at the eeeuser wiki have provided a copy and paste pinning list for the Eee PC for you. Even so, it is at times like these that you will be glad you invested time in learning the (apt-get) command line and, despite all precautions, use the -s flag in an apt-get install command to simulate what exactly installing a particular package will do. (Apart from anything else, installing and removing software on the command line gets round the problem of limited screen space in the Eee PC when using Synaptic--for which at some point you will need to to invoke Alt+D and your mouse to move Synaptic around the screen to click on options.)

Once you have done all this you will have a full KDE desktop and the Debian repositories at your fingertips. You won't know the difference between running this and doing a full Debian or Ubuntu install on a conventional laptop. For the most part this is true but there are differences.

How the Eee PC file system deprives you of the full GNU/Linux experience

The only thing now standing between you and the full-on Linux experience is that when you type, say, apt-get remove gwenview you will think, as you would be reasonably entitled to think, that you have deleted it. A fair assumption, but you'd be wrong. Dead wrong. Why? Because the Eee PC uses Unionfs. The primary reason is to do with Asus's hand-holding attitude to system recovery. There are four partitions on the Solid State Drive (SSD). The first one holds the operating system and the second sits on top of it. Any changes you make are to this second partition (userspace) and you cannot recover space from the first partition by simply uninstalling software. Upgrading packages only means that there are two versions installed - the original default install on the first partition and the "update" on the second partition. This might not matter much on a large drive, but on a 4GB drive it does.

What would therefore really be useful for Eee PC users given this restriction would be GNU/Linux development of portable applications of popular software that can be run directly from removable media like USB memory sticks or even SD and SDHC. There is a site which does this, but only for Windows. The nearest I have seen to this is a small, currently inactive site for Linux but there are few applications and most of them require Gnome. I haven't tried enabling Klik on Konqueror yet to get similar functionality for GNU/Linux apps but I understand that Klik does not play well with Xandros on the Eee PC because there is apparently no support on the Kernel for cramfs yet. Xandros can create a cramfs, but it has been reported that it won't mount it. Klik has an excellent Klik troubleshooter for common problems. However, there are interesting developments afoot.

There are a number of options to remove this problem: retain the factory install but remove unionfs, install a customised version of GNU/Linux over the default, run a customised version from an external USB drive or run a customised version from a memory stick or a SD or SDHC card. These will be the subject of Part Three.

Conclusion and acknowledgments

Out of the box the Asus Eee PC works well and it is not very difficult to hack it in order to get it up to speed as a near fully-fledged GNU/Linus distro, as we will see in Part Three. In the meantime, I must acknowledge the marvelous work done by the founders, members and contributors of the eeeusers community without whom I would not be using my Eee PC as I do.

Postscript

In Part One I remarked that every piece of peripheral hardware I threw at the Eee PC worked seamlessly. Yesterday I added a 3G USM modem for mobile internet browsing. This facility has been factored into the Kernel since 2.6.20 and the internet connection wizard on the Eee PC was simplicity itself. In two minutes I was on the web. The modem is a Huawei E220 and it is easy to set up. Have fun!

Category: 

Comments

dkulchenko's picture
Submitted by dkulchenko on

Hey Gary!

I'm Daniil Kulchenko, the creator of http://pafl.portools.com/. First of all, thanks for the link! I really appreciate it. Second, I am currently working on a new project that will provide Portable Applications for Linux, software that can run off of USB drives. Once the project is available (first programs available around late May 2008), I can notify you via a comment. It will be located at http://www.portools.com/. Thanks again for the link. It won't be inactive for long!

Author information

Gary Richmond's picture

Biography

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.

Most forwarded

Interview with Dave Mohyla, of DTIDATA

Dave Mohyla is the president and founder of dtidata.com, a hard drive recovery facility based in Tampa, Florida.

TM: Where are you based? What does your company do?
DTI Data recovery is based in South Pasadena, Florida which is a suburb of Tampa. We have been here for over 10 years. We operate a bio-metrically secured class 100 clean room where we perform hard drive recovery on all types of hard disks, from laptop hard drives to multi drive RAID systems.

Anybody up to writing good directory software?

Since the very beginning, directories (of any kind) have had a very central role in the internet. (I have recently grown fond of Free Web Directory. Even Slashdot can be considered a directory: a collection of great news and invaluable user-generated comments. As far as software is concerned, doing a quick search on Google about software directories will return the free (as in freedom) software directories like Savannah, SourceForge, Freshmeat and so on, followed by shareware and freeware sites such as FileBuzz, PCWin Download Center and All Freeware (great if you're looking for shareware and freeware, but definitely less comprehensive than their free-as-in-freedom counterparts).

Interview with Mark Shuttleworth

Mark Shuttleworth is the founder of Thawte, the first Certification Authority to sell public SSL certificates. After selling Thawte to Verisign, Mark moved on to training as an astronaut in Russia and visiting space. Once he got back he founded Ubuntu, the leading GNU/Linux distribution. He agreed on releasing a quick interview to Free Software Magazine.

Is better education the key to finding better software?

I read David Jonathon's article Anybody Up To Writing Good Directory Software? the other day, which got me thinking about software directories in general. As David mentioned, many of the software directories one finds when doing a quick google search are free as in beer, not as in freedom. But what interests me is the software directories that already exist, providing a combination of both free as in beer software, and open source software. Sites such as Freeware Downloads and Shareware Download don't advertise themselves as providing free as in liberty software, but each of them have a good selection of open source software available... if you know where to look.

Most emailed

Free Open Document label templates

If you’ve ever spent hours at work doing mailings, cursed your printer for printing outside the lines on your labels, or moaned “There has got to be a better way to do this,” here’s the solution you’ve been looking for. Working smarter, not harder! Worldlabel.com, a manufacture of labels offers Open Office / Libre Office labels templates for downloading in ODF format which will save you time, effort, and (if you want) make really cool-looking labels

Creating a user-centric site in Drupal

A little while ago, while talking in the #drupal mailing list, I showed my latest creation to one of the core developers there. His reaction was "Wow, I am always surprised what people use Drupal for". His surprise is somehow justified: I did create a site for a bunch of entertainers in Perth, a company set to use Drupal to take over the world with Entertainers.Biz.

Update: since writing this article, I have updated the system so that the whole booking process happens online. I will update the article accordingly!

So, why, why do people and companies develop free software?

More and more people are discovering free software. Many people only do so after weeks, or even months, of using it. I wonder, for example, how many Firefox users actually know how free Firefox really is—many of them realise that you can get it for free, but find it hard to believe that anybody can modify it and even redistribute it legally.

When the discovery is made, the first instinct is to ask: why do they do it? Programming is hard work. Even though most (if not all) programmers are driven by their higher-than-normal IQs and their amazing passion for solving problems, it’s still hard to understand why so many of them would donate so much of their time to creating something that they can’t really show off to anybody but their colleagues or geek friends.

Sure, anybody can buy laptops, and just program. No need to get a full-on lab or spend thousands of dollars in equipment. But... is that the full story?

Fun articles

Santa Claus - the most successful open source project

It dawned on me the other day, as I was shopping for the dozens of gifts it seems I have to buy every December, that Santa Claus is the most successful open source project in history. (Bridget @ Illiterarty would agree with that). Santa Claus is essentially a marketing development that is embodied by everyone who stuffs a sock, gives a gift, hosts a dinner or wishes Merry Christmas over the holiday season.

Most emailed

Editorial

When I first started thinking about Free Software Magazine, I was feeling enthusiastic about the dream. I had Dave, Gianluca, and Alan willing to help me, I had established members of the free software community willing to help me out, I had writers volunteering their time and energy for free, and I had a generous offer from OpenHosting for servers, all before I'd proved myself. There was a sense of excitement in the air, and I thought maybe, just maybe, I could make this work.

Free Software Magazine uses Apollo project management software and CRM for its everyday activities!