Bienvenido! - Willkommen! - Welcome!

Bitácora Técnica de Tux&Cía., Santa Cruz de la Sierra, BO
Bitácora Central: Tux&Cía.
Bitácora de Información Avanzada: Tux&Cía.-Información
May the source be with you!

Friday, December 9, 2011

Building the XO

Introducing Sugar
by Greg DeKoenigsberg
One Laptop Per Child comes closer to being a reality every day — and every day, more people are looking for ways to get involved with the OLPC project. It will still be quite a while before the XO systems are available for broad distribution, but people can see for themselves what the XO is all about by downloading Sugar, the core of the OLPC Human Interface.
Sugar, for those who aren’t familiar with it, is very different from the desktop environment to which Linux users have become accustomed. The XO was conceived as a tool to allow kids to learn interactively, and Sugar has been designed for that purpose. The first thing that a child sees, therefore, is not a hard disk or a trash can — it’s the other kids in the “neighborhood”. Sugar developers are encouraged to write activities with collaborative elements that are enabled by default. The Human Interface Guidelines discuss the Sugar philosophy in some detail, but really, there’s no substitute for experiencing Sugar directly.
There are a few ways to take Sugar for a test drive. There are Live CD versions of Sugar, and there are also binary images that can be run in emulation mode with an emulation environment like qemu.
The best way to experience Sugar, though, is to build it from scratch — especially if you want to take the next step and develop activities for use with Sugar. Fortunately, building Sugar is getting easier with each milestone. Here are some pointers to get you started.
Sugar Basics
The first thing to understand about Sugar is that it’s based on the future Fedora 7 — which means that unless you’re one of the hardy souls who runs Fedora rawhide, you’re not going to be able to build Sugar on top of whatever Linux distribution you’re running currently without making a few tweaks. That’s part of being a developer: dealing with ever-changing environments.
Good tools help, though. The problem of managing lots of differently built components is a problem that GNOME developers face every day — which is why the Sugar developers have borrowed James Henstridge’s excellent jhbuild from the GNOME project and customized it for use with Sugar. Whether you’re running Fedora, Ubuntu, Debian or Mandriva, you can easily run sugar-jhbuild.
Really, sugar-jhbuild isn’t that complicated; it’s essentially a set of glue scripts that download source code from various repository types, build all that code, and put the resulting binaries into a local directory. The downside of the jhbuild approach is that you’re essentially building a miniature distribution from scratch — kind of like a mini-Gentoo — and that requires both disk space and time. The upside, though, is that the maintainers of the project do all the work of configuring sugar-jhbuild up front. All you have to do is run the scripts, maybe do a little troubleshooting, and be patient. Oh, and make sure that you have git, CVS and subversion installed.
Downloading the Sugar Builder

No comments: