April 30, 2008
This article was contributed by Donnie Berkholz
For the fourth year, Google's
Summer of Code will pay undergraduate students to work with some of the
world's top developers on open-source projects. Students and mentors also
get a T-shirt, which for many of us is motivation enough. Many of the accepted projects are not
surprising, such as GNOME, KDE, Drupal, and Python. One interesting category
of projects, however, is distributions. Aren't they just writing packages?
What would they do with a Summer of Code project? That's what this article
aims to discover.
This year, four distributions were accepted for a combined total of 40
slots: Debian, Fedora, Gentoo, and openSUSE. Conspicuous in their absence
are other major distributions such as Mandriva and Ubuntu. One wonders what
happened—did they apply (if not, how come?); were they rejected?
Ubuntu participated in 2006 and 2007, so it is curious that the
distribution is not in SoC this year. In addition to these four
distributions, three of the BSDs participated as well, receiving a combined
total of 35 slots: DragonFly BSD, FreeBSD, and NetBSD. Since these are
operating systems in addition to their own package distributions, many of
their slots are devoted to core OS code, while the Linux distributions'
slots are not.
Let's take a closer look at the types of distribution projects in this year's
Summer of Code. Many of Debian's 12 projects relate to installation (two
slots), configuration management (two slots), or package
management/development (seven slots). The exception is a project to make an
embedded, Debian-based NAS device.
Another 12 slots went to Fedora, which shared two of its slots with
JBoss. Fedora has a more eclectic mix: it devoted two slots to package
management and two to configuration management, investing the remaining slots
in features for a translation framework (three), creation of a new Web interface
for the hardware profiler Smolt, enhancement of the
booting profiler Bootchart to use SystemTap, and creation of a
simple, non-linear video editor for ogg video to integrate with the
screencasting tool recordmydesktop.
Gentoo received six slots, of which two relate to package management. The other
four are dedicated to diverse projects: implementing OpenPAM-compatible modules
for Linux, improving a Web-based, WYSIWYG XML editor, making it easy to set
up a Beowulf cluster, and improving Gentoo's embedded network-appliance
framework.
OpenSUSE got ten slots; five of these are going toward package
management/development, and one is going toward installation. The remaining four
are the most generally interesting: implementing a face-based authentication
module, enabling ext4 as GRUB's boot partition, interactive crash analysis
(presumably an improvement upon what recent GNOME versions do rather than a
duplication), and creation of a GUI manager for LTSP thin clients.
Now let's take a quick look at BSD land. Of DragonFly's projects, six out
of seven are
OS-related, and the other is installation-related. FreeBSD received 21
slots, of which many are devoted to the core OS—of the rest, four are
related to package management/development, and one aims to improve Wine
support. NetBSD received 14 slots, of which many again went to the core OS.
Other than that, one slot went to installation and another to package
management.
Distributions and "mixed" distributions/OSs unsurprisingly devote a large
quantity of their efforts to their core competencies of package management,
configuration management, and installation. At least in the Summer of Code,
however, they do devote a significant amount of effort to solving larger
problems that affect people outside the distribution.
(
Log in to post comments)