LWN.net Logo

Distributions in the Summer of Code

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)

Distributions in the Summer of Code

Posted May 1, 2008 6:02 UTC (Thu) by dirtyepic (subscriber, #30178) [Link]

i was surprised at first to see the sheer number of package management projects people are
working on.  i guess it makes sense though;  package management is one of if not /the/ most
important elements of a distribution, and each distro has their own method of handling
packages which in turn have their own unique problems, needs, and goals.

it seems we still have a long way to go in this department.  luckily, it also seems we have
plenty of ideas on how we're going to get there.

Distributions in the Summer of Code

Posted May 2, 2008 8:01 UTC (Fri) by afalko (subscriber, #37028) [Link]

I think that package management systems are 
1) Not perfect (at least I haven't run across one that is perfect).
2) The most important part of a distribution.

Right now, GSoC package management system proposal seem to fit into one of the following
categories:
1) Infrastructure to improve how developers maintain packages.
2) Usability improvements.
3) Clean up or introduction of a feature.

There are exceptions, such as a proposal to convert packaging formats.

Distributions in the Summer of Code

Posted May 2, 2008 10:00 UTC (Fri) by caglar (subscriber, #42211) [Link]

Seems like our editor have not done his homework right :(, how can you miss "Pardus Project"
[1] with five [1] slots...

[1] http://www.pardus.org.tr/eng/index.html
[2] http://code.google.com/soc/2008/pardus/about.html

Distributions in the Summer of Code

Posted May 2, 2008 16:09 UTC (Fri) by dberkholz (subscriber, #23346) [Link]

I relied on using names I recognized by eye when scanning through the list on the Summer of
Code site. Unfortunately, both my eyes and my knowledge of distros are fallible -- sorry about
that. I probably also missed any other distros besides Pardus that don't show up in the top 50
at DistroWatch.

Of Pardus' five slots, the split looks like this:

-Package management: 2
-Configuration management: 1
-Installation: 1
-And the project to add 802.1x to NetworkManager

Another "distribution" worth mentioning is MacPorts, which has four projects all related to
package management. I didn't mention Haiku because all its projects were OS-related, so it
wasn't interesting for the purposes of this article.

Distributions in the Summer of Code

Posted May 26, 2008 18:37 UTC (Mon) by muwlgr (guest, #35359) [Link]

Better teach GRUB or LILO to boot the kernel from LVM partitions.

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds