Ubuntu Mobile Edition (UME) and the Asus EeePC
Ubuntu Mobile Edition is a version of Ubuntu made for MIDs (Mobile Internet Devices). The EeePC is not really a MID, but rather a sub-laptop or netbook. Notably the EeePC does not have a touchscreen and the intended input method is through a traditional keyboard and touchpad.
My plan had been to add a touchscreen, but I failed I soldered one of the screen's input to the wrong pin.
This project isn't dead, only resting. I'm working on fixing my touchscreen and trying a new install of UME soon
Overview
See the disclaimer at the bottom of this page before starting!
Normal instructions will be in normal text. All commands are run as root until I say otherwise.
Commands which should be run as-is, or other code will be in pre-formatted text.
Advanced and alternative routes will be in a grey box with a red border. Don't follow these unless you know what you're doing.
Install Ubuntu JeOS
Download the JeOS ISO and install it to your SDHC card. I used Qemu so I didn't have to burn the ISO. Under Ubuntu, your qemu comand will be something like
qemu -hda /dev/sdg -cdrom jeos-8.04-jeos-i386.iso -boot d -m 1024When the install is done, insert the SDHC card into your EeePC and reboot. At the BIOS screen, press escape to reach the boot chooser screen, and select the SDHC card. When it boots, you should reach a login prompt.
Many of the following steps could be done within Qemu, or by mounting and chrooting into the SDHC install.
Get an updated sources.list
Update your sources.list file to include the Ubuntu Mobile PPA sources. You can also comment out all the deb-src lines if you're not going to compile stuff.
# My sources.list # Normal deb http://us.archive.ubuntu.com/ubuntu/ hardy main restricted universe multiverse #deb-src http://us.archive.ubuntu.com/ubuntu/ hardy main restricted universe multiverse # Backports deb http://us.archive.ubuntu.com/ubuntu/ hardy-backports main restricted universe multiverse #deb-src http://us.archive.ubuntu.com/ubuntu/ hardy-backports main restricted universe multiverse # Updates deb http://us.archive.ubuntu.com/ubuntu/ hardy-updates main restricted universe multiverse #deb-src http://us.archive.ubuntu.com/ubuntu/ hardy-updates main restricted universe multiverse # Security deb http://security.ubuntu.com/ubuntu hardy-security main restricted universe multiverse #deb-src http://security.ubuntu.com/ubuntu hardy-security main restricted universe multiverse # Ports #deb http://ports.ubuntu.com/ubuntu-ports hardy main restricted universe multiverse #deb http://ports.ubuntu.com/ubuntu-ports hardy-security main restricted universe multiverse #deb http://ports.ubuntu.com/ubuntu-ports hardy-updates main restricted universe multiverse # Partner #deb http://archive.canonical.com/ubuntu hardy partner #deb-src http://archive.canonical.com/ubuntu hardy partner # UME PPA deb http://ppa.launchpad.net/ubuntu-mobile/ubuntu hardy main #deb-src http://ppa.launchpad.net/ubuntu-mobile/ubuntu hardy main
Now update apt-get.
apt-get update
Now we'll install the packages we'll need.
apt-get install ubuntu-mobile libterm-readkey-perl acpi-support librpc-xml-perl libgl1-mesa-dri gnome-volume-manager ume-config-common usplash-theme-ubuntu
Download and installneeded packages
Download the kernel, the modules, the madwifi modules, the eee modules, and the apparmor packages. Get theme here.
linux-ubuntu-modules-2.6.24-2-generic_2.6.24-2.5_i386.deb linux-image-2.6.24-2-generic_2.6.24-2.4_i386.deb madwifi-modules-2.6.24-2-generic.tar.gz eeepc-eee.ko_v.2-kernel-2.6.24.tar.gz apparmor-utils_2.1+1075-0ubuntu2_i386.deb apparmor_2.1+1075-0ubuntu2_i386.deb
Install the kernel, modules and apparmor with a:
dpkg -i *.debCreate a directory for the extra modules (madwifi and eee). Un-tar the two archives, and copy the kernel modules to that directory.
mkdir /lib/modules/2.6.24-2-generic/kernel/custom for i in *tar.gz;do tar xzf $i;done cp `find . -name "*.ko"` /lib/modules/2.6.24-2-generic/kernel/custom
Run depmod to generate all the dependencies for the modules you just installed:
depmod 2.6.24-2-generic
Edit /etc/modules and append the following to the bottom of the file:
uvcvideo atl2 i2c_i801 eee
Lastly, comment out the line containing 'i2c_i801' in /etc/modprobe.d/blacklist.
Autostart the GUI
Copy event.d/session to /etc/event.d/session
Edit /boot/grub/menu.lst
Find the line that says: defoptions=
Append the following
capability.disable=1 clocksource=hpetAnd if you want to suspend to disk, also add
resume=UUID=Now run update-grub
update-grub
Edit your /etc/fstab file
Comment out or remove the cdrom line.
Download the Hildon Startup Script
This is the script from https://wiki.ubuntu.com/MobileAndEmbedded. You can get it from http://stuporglue.org/downloads/eee/start-hildon.sh. Download it as your non-root user, and save it in your home directory as .xinitrc. Make its permissions 755.
chmod 755 ~/.xinitrc
Install apparmor
Download the apparmor and apparmor-utils packages and install them (apparmor-utils_2.1+1075-0ubuntu2_i386.deb, apparmor_2.1+1075-0ubuntu2_i386.deb).dpkg -i apparmor*deb
Configure Xorg
Do a dpkg-reconfigure, it will produce a usable xorg.conf.
dpkg-reconfigure -phigh xserver-xorg
Copy event.d files
Download event.d.tar.gz.
tar xzf event.d.tar.gz cp event.d/* /etc/event.d/ chmod 755 /etc/event.d/*
Start Ubuntu Mobile
As your non-root user, run startx from a console.
startxEnjoy!
Reboot and finish up
Now reboot. At the grub prompt, press ESC and find the 2.6.24-2-generic kernel. Press 'e' to edit, and add the word 'profile' to the end of the kernel line.
A bit more apt-get fun
apt-get remove --purge linux-image-2.6.24-16-virtual linux-ubuntu-modules-2.6.24-16-virtual linux-image-virtual
Make the Network Manager Applet work
Edit /etc/dbus-1/system.d/NetworkManager.conf and /etc/dbus-1/system.d/nm-applet.conf. Change the default permissions from deny to allow. "A default of allow?", you ask. Yes. When did we ever let security stand in the way of fun.
# NetworkManager.conf <policy context="default"> <allow own="org.freedesktop.NetworkManager"/> <allow send_destination="org.freedesktop.NetworkManager"/> <allow send_interface="org.freedesktop.NetworkManager"/> </policy> # nm-applet.conf <policy context="default"> <allow own="org.freedesktop.NetworkManagerInfo"/> <allow send_destination="org.freedesktop.NetworkManagerInfo"/> <allow send_interface="org.freedesktop.NetworkManagerInfo"/> </policy>On next reboot, the network manager applet (nm-applet) should start correctly.
To-do / In progress
This leaves a lot not quite working correctly, but should be sufficient to get you playing around. There are several things which can be done to speed up boot time, improve battery life, decrease disk writes etc. For now search the forums, I'll post them here soon.
I don't have the following working correctly yet, but am working on them.
Suspend to RAM, Suspend to SDHC Network manager applet Screen brightness applet Auto starting the Ubuntu Mobile GUI
License / Disclaimer
These instructions are a work in progress. Ubuntu Mobile Edition is a work in progress. This tutorial is provided as-is. Follow it at your own risk. I claim no responsibility for what happens to your computer, free time, or anything else if you follow these directions.
This tutorial is in the public domain, originally posted at http://stuporglue.org/ume-on-eeepc.php. Feel free to improve it, mirror it, etc. If you mirror the tutorial, please consider mirroring the files which need to be downloaded as well. Last updated May 4, 2008 by Michael Moore <stuporglue@gmail.com>.
Sources and Credits
- mbm for the kernel and madwifi drivers http://downloads.openwrt.org/people/mbm/eee/kernel/
- The helpful and friendly and up-all-night folks on the #eeepc and #ubuntu-mobile channels on irc.freenode.net
- The many users and comments in this thread about mbm's kernel http://forum.eeeuser.com/viewtopic.php?id=6585&p=1
- Chromakode for the apparmor packages http://chromakode.nfshost.com/misc/eee/
- silverstorm for the precompiled eee.ko v. 0.2 module
And of course Asus for this fun little machine.

