[ close ]
Help Upgrade the Web: Download Firefox 3.5

OLPC

You are currently browsing the archive for the OLPC category.

awesome, dennis!

Great news that Dennis Gilmore will be joining the OLPC team to help them out with builds. He will be a real asset to the team. His experience with the infrastructure inside of Fedora will really help with the OLPC team and various countries take advantage of everything that Fedora and that community has to offer.

snapshots

Demitris Glezos has been doing some awesome work on the new Fedora Translation site. Unlike a lot of translation projects, where the focus has been on improving that one project (KDE, GNOME, Ubuntu, whatever) his approach has been different. In addition to supporting the packages which have lived with Red Hat + Fedora in the past (anaconda, rhgb, etc) he’s also added support so that you can pull translation information from external repositories as well. For example the OLPC Sugar Interface is hosted on laptop.org and RPM is hosted on rpm.org. Each of those projects are hosted with different revision control systems, but he hides that information to make things easier for translators. With an easy to download translation file for each project, it brings translators and upstream projects closer together and it’s a good first step as a service to upstream projects.

But now he’s taken it to the next level with Transifex. Here’s how it works. You’re a small project and you’re hosted somewhere. You want translators. Very often you have to build your own community by attracting people, setting up accounts, etc. This isn’t a problem for the larger projects like GNOME and KDE which have their own communities, but it’s harder for smaller projects. With Transifex what Dimitris has done is set it up so that a Fedora translator can, via the Fedora site, have new translations checked into the upstream project. This is done through a single “fedora” account that the project has set up and checkins through that account will contain account information about who checked it in and how to contact that person. He’s setting it up so that it will support the most common revision control systems (git, cvs, svn, hg) and it should be seamless from the standpoint of the upstream projects and the translators.

While I’m sure that a lot of projects won’t want to use this service, it’s likely to be very useful to a lot of people. And what I love about it is that it fits so well into the Fedora Way: it vastly improves the lives of both translators and upstream projects in a way that grows the entire pie for everyone. Connecting the hundreds of translators who are active in Fedora with the thousands of projects out there with a very low barrier to entry solution.

Great job, Dimitris!

I’m so glad that Richard Hughes took the lead on getting the system activation code in place and is trying to get it upstream into D-Bus. I think that David Zeuthen was starting to avoid me in the office. Every time I would see him I would just look at him and say “dbus activation patch?” No “hello.” No “how are you doing?” I was pretty focused. I’m sorry, David. So very sorry. But it sounds like you were busy. In any case I’m happy we’re going down the right path.

This is really going to help our story around OLPC. Right now the OLPC XO, like many machines, takes a long time to start up. Far too long. Part of this is the machine’s performance and the fact that we’re still loading a lot of legacy stuff. (RAID? Do we need to check for RAID partitions in the OLPC startup scripts? I’m guessing no!) But when both David and I started looking at it a year ago I think that we both came to the conclusion that the way that we start the desktop it was fundamentally broken, especially on that little machine. That’s why we (and when I mean we I really mean David with me looking over his shoulder) pursued things like mayflower and looking at what architectural improvements we could make to startup. That service activation patch is part of the eventual solution.

The last piece of the puzzle from where I sit is udev. The current set of Fedora startup scripts along with the way that udev is set up takes a whopping 20 seconds or so to start up on the OLPC XO. Why? Well it’s not udev, exactly. Mayflower embeds udev and it starts up in under a second. The problem appears to be the rules, the programs that are run as a result of the rules, and the way that kernel events are handled.

Right now kernel events are handled by udev. Those events are matched against rules in udev’s config files. Those config files specify certain actions. Some of those actions have terrible performance-destroying side effects. Sometimes the rules specify creating device nodes. The device nodes that we create we have to set the console permissions on those nodes. That’s done by running a program after the device is created. In addition there is a global rule that runs modprobe for every event that comes in no matter if it creates a device node. That also requires running a program. On startup, the kernel sends out anywhere from several dozen to several hundred events that result in device creation. Imagine running a program for each of those items. No do that on a machine that runs at about 466mhz. 20 seconds, indeed.

I honestly believe that we can achieve a 20 second startup time for a desktop machine in Fedora if we take an agressive notion to what startup means and continues down this path to a sane architecture. I also believe that we can get the OLPC XO machine started up in that same amount of time, if for no other reason than the number of things we need to load on startup is so much lower. I think that David has a good sense of the architectural things that need to change in udev to make it scale better. He and Kay had a roadmap at one point but I don’t know what happened to it. But it’s a key to getting to that 20 second number. I think we can do it.

Dan Williams, John Palmieri and Miguel Alvarez talk about the mesh networking in the laptop. They talk about the low level connectivity bits as well as the higher level set of activities and architecture that we’re building. Great job guys!

Download this video: [Ogg Theora]

Video by Simple Coat.
Produced by Julie Bryce and Kristin Hondros.

startup times

There’s a lot of work in Fedora now to try and fix init scripts. Adding dependencies, hooking up event systems, lots of shell scripting, etc. In the desktop case, why isn’t the actual solution to start up times just starting up less stuff?

Here’s what we’re going to do for OLPC:

  1. Boot the kernel.
  2. Start udev.
  3. Start d-bus.
  4. Start X.
  5. Start the UI.

Based on that how fast do you think startup will appear to be? When you need something started up you ask d-bus to start it. This includes things like avahi, network manager, printing, etc. For desktop, isn’t this the right direction to go? Hughsie is working on the d-bus startup patch and once that’s in we can start ripping things out.

I have a macbook. It starts in 25 seconds. Linux on the same computer takes 2 minutes. I don’t think that dependencies will help that.

Not a bad article, all in all. Bit of a personality piece on Nicholas and they used “geek” in the pejorative. But it sounds like they got most of the message. Except they missed the connection of why Intel’s tactics are dangerous to the project. By hiding the true costs of their laptops they are undermining the ability for a huge number of children to receive low cost laptops. Are they really going to dispense laptops at a $100-200 loss each to a billion kids? I think that’s the important question. Actually, ask an Intel shareholder if they would be willing to back that kind of action.

Holy crap, the comments on the CBS website are deeply ignorant. People are pissed that they can’t buy the laptops for the US. Compared to most of the world, the US does not have poor people. Not like that. The what about me attitude of most of the posts makes me very sad indeed.

We announced a pile of things at the Red Hat Summit. Lots of confusing articles have been written. Lots of press releases have been sent out filled with warnings about forward looking statements. Maybe you just want the run down on all the things that happened. This is your simple cheat sheet. Here’s the list:

Red Hat announced a long term client strategy. Widely quoted out of context as “The Desktop Paradigm is Dead”, what we really mean is that we’re moving to a model where Red Hat and open source client technologies move to an online world. To a place where consumers are moving en masse, but operating systems have been slow to follow. We believe that most companies who sell operating systems today will be more interested in protecting their cash cows than moving to a model that enables new types of collaboration and communication. The time to move online is now, and the open source model gives us the flexibility we need to get out in front.

Red Hat will lead this effort. We’ve already been leading with our investments in Mugshot, One Laptop per Child and years of investments and leadership in GNOME and Linux. The base OS is ready. It’s time to start competing for real and bringing open source to a place where it can win.

Red Hat announced a new product: Red Hat Global Desktop. The Global Desktop product is a fully featured desktop based on the same code as the Red Hat Enterprise Linux 5 Desktop product. However, there are some significant differences in terms of the support and distribution model.

First, our main partner in building this product is Intel. Intel gives us the support we need in terms of open source drivers and the channel to make the product successful. We will be able to certify this product across a wide variety of products that Intel is building. This is thanks to the wonderful work that they have done upstream and made available to the entire open source community.

Second, the distribution model is different. This product will be available only as a pre-load to those vendors through the channel. It’s not something you’ll be able to download on a CD or DVD. This is largely due to the fact that we’ll be working with those vendors to make sure that they can support people on this product instead of us attempting to do that support ourselves. In this way Red Hat will be the back end support provider for all those folks in the channel, letting them add a lot of value along the way, and we can offer them a properly priced product that they can sell to customers who really want something like this.

Third, this product is targeted in its first round at so-called BRIC and/or Developing World countries. And it’s priced for those markets as well. We are keeping the door open to the developed world as well, but the demand seems to be coming from the rest of the world first where the opportunity is for new systems, not attempting to convert existing enterprise customers.

And Fourth, this product has a shorter life cycle to enable fast-paced innovation. Instead of being support for 7 years, like the rest of our RHEL products, this has a 2 year support life cycle. We got a lot of questions from the press along the lines of “if the desktop is dead, then why are you announcing a new desktop product?” The answer is that the Global Desktop product is a first step along the path to an online world. This is the direction that we’re going and we have to start somewhere. As most of the rest of the world comes online, we will be ready to meet them with something engaging and interesting, designed for a connected world.

In summary, this is about growing the Linux client market. This isn’t about trying to replace some small set of Windows desktops in the developed world or trying to line up a relatively small number of units through a US OEM. This is about getting out there where people will grow up on free and open source software and understand that it’s not just free-as-in-cheap, but is also better and empowering to how they lead their lives and run their businesses. It’s just the first step, but it’s an important one.

Red Hat announced a set of Microsoft-compatible fonts that are free to distribute. Called the Liberation Fonts these fonts solve one of the biggest problems we’ve had with building office-compatible software: the fonts never quite matched up. They are available under a very friendly license and should be in Fedora and RHEL shortly.

Red Hat announced Red Hat Exchange. This is a web site and a set of agreements with open source software vendors designed to give customers a great experience with deployment and support. You can download a single software build that includes Red Hat Enterprise Linux and everything else you need to deliver a solution based on that partner’s software for your business. If you have a problem, you contact Red Hat support and they will work with the vendor to help you solve your problem. One price, one download, one point of contact and growing the open source business ecosystem at the same time.

Red Hat announced support for Intel’s vPro initiative. Designed to make Windows machines more manageable by placing an operating system underneath Windows to deal with security, deployment and administration, VPro is likely to make a huge difference in the lives of IT people inside of large organizations who have to deal with the day to day headaches of managing workstations and protecting Windows from itself.

Red Hat will build a set of high performance drivers for Windows to take advantage of paravirtualization found in our products. Quietly mentioned in Brian’s keynote, we’ll be building a set of drivers so that Windows won’t suck when it’s running on a supported hypervisor. This will be something new for Red Hat to do, but something that people will really value.

Whew. That’s a long list. Any questions?

I’ve been quietly waiting for someone from OLPC to say something officially and it sounds like a quote has finally made it into an ars technica article:

According to Walter Bender, president of Software and Content at OLPC, there is no agreement in place between OLPC and Microsoft to offer XO laptops with any version of Windows. Bender also indicated that Microsoft has not contacted OLPC regarding its $3 software bundling program, nor have any governments requested that the XO be outfitted with Windows. In short, there is no existing collaboration between Microsoft and OLPC aimed at outfitting the XO laptop with Windows.

The relationship can be explained thusly: Microsoft has some XO machines. They are trying to get Windows working on it. Sometimes they show up and ask random hardware questions. The OLPC guys say “look at the code.” They go away again. Sometimes they brick machines (because they have to replace the awesome firmware we have with a poopy PC BIOS) and send them back to the office to get them unbricked. Sometimes they complain that the machine has hardware problems and we reply that it works fine here.

For once Microsoft is getting the reverse Linux laptop experience: little support and little documentation for the hardware. The result will be a platform that doesn’t include any of the really novel features that we’re building in, bad power management, no systems management via the firmware and apps that will randomly crash because they can’t fix the virtual memory problem in the same way we’re approaching it. A second class citizen, to be sure.

The commitment to open source and free software is still one of the main principals of the project. Learning requires the transparency that free and open source software provides.

Bryan pointed me at this very excited review about the upcoming Fedora 7. The neat thing is that he really gets why Fedora 7 is such an important release for us and also for the rest of the free and open source software community. The main feature of Fedora 7, aside from lots of new stuff that the community has been working on (wireless drivers, new GNOME, etc) this release is mostly about enabling the community to do cool stuff with Fedora and let the community get in the driver’s seat for the distribution. From building Fedora-based security USB keys to OLPC, we’re already living the flexibility that open tools and open community can provide.

Today in particular is a very important day to make this happen: it’s merge day. Today is the day when the former Fedora Core and Fedora Extras become a single community-driven and community-owned distribution: Fedora. Red Hat still plays a special role here as a contributor but anyone who cares about a piece of the technology stack and has the ability to participate can finally do so. Want to hack on the kernel? Join the list and do some hacking. Want to own a piece of the stack that you think that is under-managed by a member of the Red Hat team? Man up and join the team. Want to hack on the actual infrastructure that makes the fedora project go? (Sysadmin boxes, hack on cool tools for the whole community, etc?) Sign up.

We’re still focused on making sure that we do really good releases every six months with support for roughly a year and a half afterwards (the idea that we’re unsupported is a total lie, for the record) to make sure that the best and newest technology gets into people’s hands as soon as possible. And within the limits of our values and tools, the law and spirit of free software, making things that Just Work.

We’ve already done a good job of attracting awesome people to the project. Red Hat folks inside of the project are already outnumbered 3:1. Compared to old Red Hat-driven Fedora releases, the sheer number of packages that are lovingly maintained has grown from about a thousand source packages to over four thousand in a very short period of time. The project is undergoing tremendous growth.

On a personal note I have to say that I’m very excited about our future in the Fedora project. This is just the first step on the long path to build a free software distribution that’s community-driven and let everyone who is interested in showing up and making a difference the tools and place to do so.

« Older entries