Today, I ran an Xfce desktop on top of Debian Sid on the OLPC XO. I did this thanks to the help from an article on installing Ubuntu on the XO.
I quickly gave up trying to run Ubuntu, as it had a much larger installation footprint than Debian. Ubuntu takes up about 350MB with a base install; Debian only about 150MB. Debian Sid also had the right packages for the XO’s video (xserver-xorg-video-amd) and was quite easy to debootstrap straight onto the USB flash drive (I formatted it as ext2, although jffs2 would probably be better for the health of the drive; I also didn’t bother with the QEMU method of installation).
After debootstrap‘ing the Debian system onto the flash drive, getting it to boot was as easy as copying the /boot, /lib/modules, /lib/firmware, and /etc/modprobe.d directories from the existing Sugar OS, grabbing the xorg.conf and olpc.fth files mentioned on the wiki page, and booting.
My first attempt didn’t go so well — I kept getting some error about not being about to mount /dev/root, but I found that was because the initrd for the kernel I was using (the kernel that ships with OS build 406) didn’t seem to have SCSI block device support. I fixed that by instead using the kernel and modules from build 690.
Well, I have to say that Debian on the XO is much better than Fedora. Okay, at the moment, I don’t have many of the power saving features that you get in the official XO OS like automatically suspending the CPU between keystrokes, but in general the OS is faster, and more lightweight.
I’m currently running Xfce 4, which is much faster than the Sugar interface, which was quite an unexpected find for me. I suspect this is partly because the GTK+ and icon theme in Xfce is pixmap-based, but in Sugar, everything is vector-based, and rendered on-the-fly by Cairo.
But after doing all that, I’m still going to use the official Sugar+Fedora OS, mostly so I can actually code up useful stuff that will be useful to other users of Sugar, rather than just my own personal needs/tastes. (I’ve already contributed one patch to Pippy, a Python editor for Sugar.)