OLPC Help: How to Install Ubuntu on the XO Laptop!

olpc ubuntu
Ubuntu running Xfce4 on XO-1

Back on New Year's Eve, I was talking with Bryan Berry of OLE Nepal about different operating systems on the XO for governments who wanted options in addition to Sugar.

In the middle of a rant against XP on the XO, I wondered if we could have a FOSS alternative instead of XP. So I issued a challenge to the OLPC News Forum:

Get Ubuntu on the XO!

Over sixty replies later, and thanks to the extensive work of Moocapiean and Free Like GNU, we now have step-by-step tutorials for two different ways to get Ubuntu on the XO:

Both methods have their merits, but with either one you'll need three things before you start:
  1. A USB or SD drive that's at least 600 MB
  2. The developer key for your XO
  3. A computer running Linux
Your XO can function as #3, as long as you have 194 MB of space free on its drive, otherwise you'll need another drive. When you're done, your XO laptop will function as it is meant to be with Sugar - by the letter and the spirit of the fifth Core Principal of OLPC:
Give me a free and open environment and I will learn and teach with joy.
And joy is what I feel with this amazing example of how the OLPC News Forum advances the XO laptop, One Laptop Per Child, and Open Source software one loving hack at a time.

Update - And now we have a video of the Ubuntu boot, thanks to digitaleswerken:


Related Entries


Great hack.

Next step: Install Sugar on Xubuntu :-)

A question, I take it that this zips Bitfrost from the XO (after boot)?

Another question, can Ubuntu work with the journal that exists under Sugar?


I think the next step is just installing this on the OLPC and getting rid of Sugar (at least till it is ready for prime time).

You're implying here that running Sugar is not "...function(-ing) as it was meant to be. By the letter and the spirit of the fifth Core Principal of OLPC..." Is that what you mean to say or is it just vaguely pejorative but insubstantial rhetoric?


Whoa! Let me find a way to be more clear in the post - Sugar is amazing, great, I want it on the XO more than any OS. But with the talk of XP, I felt that any user thinking Sugar not right for them should have a FOSS OS to use. Hence Ubuntu on the XO.

I'll edit the post to try and say that with precision.

My point again XP is not really only about not being able to edit the code, but also about lack of collaboration features. Unfortunately Ubuntu, as with many other Linux GUI try the better they can to mimic the windows experience so ex-Microsoft clients will feel at home.

Until the day collaboration on Ubuntu is as easy as in Sugar, until they have a contextual IM friends list built in the system and not as in a separate app, until you can see what your friends are using, download, install and run it seamlessly, until you can set the collaboration features even before launching an app, until you have a shared space for files in every application by default, then I will see this as no more than a mmmm-okay hack..

Next step:
Can someone post a review of how well Ubuntu runs on the XO? Pros and cons?

The big pro, I reckon, would be that there are more applications compiled and ready-to-go right now for ubuntu... but if the demands of ubuntu make the XO slow to a crawl, then it wouldn't be worth it.

Thoughts? Anyone have hands-on experience?


Ubuntu would be really nice on the XO but without the special power management provided by the next release (Update-1) of the Sugar OS it does not stand a chance in usability. It would give you only 3-4 hours of use (as currently with Sugar) which is nothing compared to the runtimes OLPC promised (and I hope will come with Update-1).

I would rather install Xfce with Abiword / Opera / Gnumeric / FBReader / Java on the base Update-1 Sugar install, this way I hope power management would still apply.

Of course, if somebody hacks all of the power management features of Sugar into a customized Ubuntu image, I will be the first to get rid of Sugar completely. (Not meant to be an offense to Sugar developers but it is simply not ready yet and I believe is suitable for really young children)


Ubuntu on the XO is not a comment on the viability of Sugar. It is meant as a better alternative to XP. All things equal - Sugar is the UI of choice.

Sadly, for some governments, Sugar will be too radical, too much a change from what they expect, or want their children to use.

In this case, Ubuntu should be their fall back, not XP.


I gave XOUbuntu a try this morning (Snowday, woot!). I used moocapiean excellent instructions and got it running using only the XO, and I just got basic Linux knowledge. It runs quiet smoothly, in my opinion a bit faster then sugar, thats always showing me a lagging frame and so on when only Browse is open. Network connection wasn't an issue, neither with an usb-ethernet adapter nor wireless in an unprotected network. I installed some smaller programs like Abiword and it is usable. When i tried to install OpenOffice.org my 1Gb USB drive was full and so i couldn't try that.
Major concern for me is that the screen orientation key doesn't work so using it as an ebook isn't possilbe. And as a personal note, I hate that tapping the mousepad is recognized as left-click, but didn't find a way to turn it off.
Verdict: it is relatively easy to install, works reasonable fast and for some it might be a good alternative to Sugar.

I hope at some point in the near future there will be an 'XO For Dummies' handbook available. Some of us need to be led step by step through the process of installing improvements that the more 'savvy' have developed.

With all the negative comments about Sugar, I will defend it. I for one will continue to use Sugar no matter the alternative. I do agree that Sugar has a few bugs to workout but we are using Gen-1 and I am willing to wait a few more gens. I am hoping that OLPC will come out with a Sugar bundle that only has Journal and then let the XO users install whatever activites they want. I am also hoping for a full adiword deployment and/or openoffice.

Sugar is ready for prime time and works quite well, my 3 year old uses Sugar how many other OS could be used by so young a child?

Sugar is impressive and clever. I applaud OLPC for actually implementing a functional collaborative UI for children (and adults?) worthy of the OLPC hardware.

Sugar is also very much a 1.0 release. It's missing features, polish and optimization. I know this because the developers freely admit it. It WILL get better, but it isn't FOR everyone.

I say the more working alternatives to Sugar, the better for everyone. I look forward to ports of *BSDs to the XO. I wouldn't even mind attempting to run full speed- and power-optimised versions of Gnome and KDE. All these efforts will encourage sharing of ideas (and possibly code) to make these programs more useful.

Which means the XO will be more useful.

Which means the kids get a better computer with a longer usable lifespan.

This sounds really cool. Is this at all related to the Debian build Ivan Krstic did?


I found that link in his recent blog post:


Fedora and Ubuntu are very similar, so there's not much to gain from using Ubuntu. I'm still waiting for my XO to arrive, but I saw in some videos that booting can be quite long. The XO is a small computer with little resources, so the idea of building a minimalistic XO OS using OpenWRT is more interesting.

I also want to echo Wayan's comment that Sugar is the UI of choice. But if I weren't using Sugar I would go with Debian+XFCE to make the XO the ideal Emacs+Skype+VT100 machine.

I think Moocapiean did a great job refining the process of installing Ubuntu on the XO. You, however, neglect and disrespect the sources for your information. It is indeed sad when journalism becomes so irresposible to the community.


Marc commented on the long boot time of the XO, which is on the order of 2 minutes. I wonder how the low end Asus eee can have a boot time of less then 10 seconds. I would like to see the XO boot time improved to match that of the EEE or have a duel boot system where an ebook could boot in a few seconds or the full OS using the current time.


"Back on New Year's Eve,
I wondered if we could have a FOSS alternative instead of XP. So I issued a challenge to the OLPC News Forum: Get Ubuntu on the XO!"


OLPC - XFCE, 26 December 2007 by Freelikegnu
( http://wiki.laptop.org/index.php?title=Xfce&oldid=89125 )

Free Like GNU -XFCE on OLPC (yeah, you know me!)
( http://www.freelikegnu.org/?p=13 )

Perhaps if posters here were more aware of what development (and other) info is available on OLPC site ( wiki.laptop.org ) it'd save a lot of unnecessary trouble and duplication - I think a permanent link to OLPC here would help to resolve this...

"Perhaps if posters here were more aware of what development (and other) info is available on OLPC site ( wiki.laptop.org ) it'd save a lot of unnecessary trouble and duplication - I think a permanent link to OLPC here would help to resolve this..."

For changing the User Interface, it is enough to install XFCE. But to change to a different distribution is something else.

When installing Ubuntu, you change a lot more than just the screen image (file system, security policy etc). Wayan's article points to a step beyond the UI.

But you are right when you say that if removing Sugar is the only objective, then just installing XFCE would be enough (and a lot safer).

Personally, I consider Desktops a waste of space on a computer screen, but you mileage may vary.



"Wayan's article points to a step beyond the UI."

From user point of view they'd see Xfce desktop environment (doesn't really matter whether Fedora or Ubuntu based) rather than Sugar - and this, frankly, would be a preferred method as it could allow, with futher development to switch desktop environments without rebooting (hot key, or, preferably password protected menu item). Of course, you could have both Sugar and Xfce (or eg. Enlightment as in gOS) sit on top of Debian/Ubuntu instead.

As for Xubuntu installation (or rather Debian, which for the purpose of the above is the same as all Ubuntu variants are based on Debian) this has been done already last year as well by Francisco Alecrim ( http://wiki.debian.org/howto_debian_olpc ) with instructions for Xubuntu posted on his blog ( http://www.freelikegnu.org/?p=21 )...


Ubuntu on the XO included the efforts of Free Like GNU. Many apologies to Francisco for not giving him credit - I didn't know of his contribution when I posted

I've edited to the post to reflect his contribution.


Winter wrote:
"Personally, I consider Desktops a waste of space on a computer screen, but you mileage may vary."

Appart from the task bar, there's not not much space waisted. Sugar gets more in the way than most lightweight desktop environments, ans some don't even have a UI (like ratpoison).

Apologies accepted. Thank you. Also, just to clarify: I am not Francisco Alecrim. Though I respect his work, he should not be confused with Francisco Athens of Free Like GNU, I've modified my blog for more clarity. furthermore, I will consider delphi's suggestion of posting how-to's to the OLPC Wiki where they may be more accessible (not just to read, but edit as well). I manage a number of wikis myself and thought to try something different with the blog.


Francisco Athens
Free Like GNU


Communication and avoiding duplication of effort (and misplaced credits :) is the key issue here - I do believe that having all the development effort for XO documented in OLPC wiki is the way to go (eg http://wiki.laptop.org/go/Xfce , http://wiki.laptop.org/go/Mplayer ) brining together not just those interested in XO from various open source development communities (like Debian and Fedora) but also valuable but fragmented contributions from various blogs like yours or this one.

Anyhow, thanks for your 'Xubuntu on XO' instructions and looking forward to your further XO development contributions - there's plenty of good and useful apps (FBReader ! - http://www.teleread.org/blog/2007/12/28/eureka-fbreader-already-running-on-olpc-laptop-epub-books-in-time-for-one-laptop-per-child-kids/ )just waiting to be 'Sugerised' ;)

Thanks for information on running Ubuntu from a USB/SD device. I have not tried Ubuntu on my XO yet but plan to do so. Since I have not tried it yet, some of my observations and questions might be obvious.

Observations and food for thought for this documented implementation.

After boot, does Ubuntu run entirely or partially from physical RAM? Or is it accessing executables from USB/SD flash? Are the files on the flash compressed? For example with 256MB of RAM, Puppy Linux can load and run entirely from a squash file system resident in physical RAM. Puppy also sets up SWAP in RAM. One of my main concerns using low end compute devices such as the XO is minimizing application launch time. Running entirely from a squash file system resident in RAM is fast but slows down on low end compute devices due to the horsepower required to decompress the executables. My guess is launching executables resident on a fairly fast flash device, whether compress or not, would not be any faster than launching the same executable from a squash file system resident in physical RAM. Looks like some XO application launch time testing might be in order.

Here are some but not all of the variables to consider:

The speed of the USB/SD flash being used.
The speed of the USB/SD interface.
The speed of the physical RAM.
The processor speed.
Whether compression is being use and what type of compression.
What other processes might be using processor resources.

I am very excited at the prospect of running Ubuntu from a USB device but, at least from what I know, Puppy should perform better due to it being designed from the ground up to run on low end compute hardware and having the capability to run totally out of 256MB of RAM. I am also aware the the baseline install of Puppy doesn't offer everything Ubuntu offers; however, I am quite happy with what Puppy offers for lower end compute platforms such as the XO.

Here to running as many OSes as possible on the XO!

Thanks for your read time!

I was surprise to see an offer to download a proprietary plugin in order to view this page completely. Ironically, it appears near the phrase, "Give me a free and open environment and I will learn and teach with joy." Please consider using open standard formats in your web pages for open systems.

This sounds good. The OLPC OS on my G1G1 sucks big time. My problem is that, even with Walter Bender's help, we cannot get the devkey file to move to my thumb drive and trying to do anything with it on the XO is hopeless. Therefor no developer key available.

I need a little program, loadable at boot up, to wipe the current OS. Then maybe I can get Ubuntu to install?

Here is an interesting critique of Sugar: