The summer has finished, and it's about time I summarised how we got on. We had 9 Summer of Code students working for us, and we had a 100% success rate this year. Woo! Last year we only managed 6 successful projects out of 10, so that's a major improvement. So, how did the various projects pan out? The proof of the pudding is in the code, of course, and these projects are all available to use today, either packaged in Debian or installed on central servers providing services. Here's a quick overview.
The summer has finished, and it's about time I summarised how we got
on. We had 9 Summer of Code students working for us, and we had a 100%
success rate this year. Woo! Last year we only managed 6 successful
projects out of 10, so that's a major improvement.
A couple of things helped a great deal this time: several of our
students were already contributors to the Debian community at various
levels, and for the first time this year the SoC programme also
included an extra chunk of time to allow the students to get involved
("bonding time") before they had to start coding work. These meant
that our students were much more involved in Debian than last year,
and that was a very good outcome.
In an unusual case, one of our students this year is a returnee - he
could not complete his project last year due to problems, but was so
enthusiastic about the idea that he came back again this year to
So, how did the various projects pan out? The proof of the pudding is
in the code, of course, and these projects are all available to use
today, either packaged in Debian or installed on central servers
providing services. Here's a quick overview, cribbing shamelessly from
reports from our mentors and students:
* Margarita Manterola worked on Amancay, a new interactive web
interface for the Debian bug tracking system. The server-side is
coded in Python, using the Django framework. The client-side is
done through the new SOAP interface. Amancay has reached a beta
stage, with most of the required features ready and a few more
still to do. Importantly, it's the foundation of something that she
thinks will be useful for the whole project.
* Chris Lamb came up with "live-magic", a graphical user interface to
Live Helper (a collection of programs that can be used to build
Debian Live images). It can create Debian Live images using an easy
wizard interface, with the option of an expert mode for further
tweaking. It's designed to be adaptable as the APIs change in
future versions of the core live-helper code, and could also form
the basis of a web service to generate customised live CDs. [x]
* Ian Haken managed to complete his project "vlosuts" (Virtual Live
OS Upgrade Testing Suite) and produced a utility that should be
greatly useful to Debian QA. vlosuts allows testing of upgrades of
a live running system (as opposed to running in a chroot). Combined
with the ability to reproduce the configuration of an existing
already-running system, this means that upgrades can be validated
in advance for production systems. QEMU should also allow for
cross-architecture hosting of these tests.
* Martín Ferrari created Pancutan, an application that can be used to
verify Debian CD and DVD images. He spent quite some time analysing
the possible ways in which those images can contain bugs (e.g.
corrupted files or mistakes in the build process), then created a
flexible framework which allows tailored tests to be run to find
those bugs. He then started filling in as many tests as possible
during the rest of the SoC period. His work will greatly aid the
Debian CD production team in producing good quality releases.
* Gustavo Rezende Montesino worked successfully on a bug triage
tool. The initial plan was for an advanced GUI application
permitting complex tasks and using complex heuristics for advanced
features, but during the summer the project evolved to encapsulate
more low-level work including python bindings to access and
manipulate Debbugs and Bugzilla bugs. This will be more useful as a
basis for further work, enabling easy development of higher-level
* Jeroen van Wolffelaar created Mole, a central location where
information about packages and other Debian-related information
(such as bugs or mirrors) can be stored. During the GSoC, Jeroen
worked hard to get the basic infrastructure in place. It's now
possible for other efforts, in particular QA projects such as
lintian and archive rebuilds, to add information to the Mole
database. There is a web interface to present the information, and
Jeroen is working with more people to help them use Mole too.
* Cameron Dale had an interesting project to develop DebTorrent, a
new download method for Debian packages. Where possible, it will
download any needed packages from other DebTorrent peers in a
bittorrent-like manner, and so reduce the strain on the Debian
mirrors. If a package cannot be found on any peers, DebTorrent will
fall back to downloading from a mirror to ensure all packages are
downloaded. DebTorrent is already being installed, with over 150
* Pavel Vinogradov achieved most of the goals in his project "OVAL
agent for Debian", a software agent-server infrastructure to help
monitor security issues across many Debian systems. He adapted the
reference OVAL interpreter to work on Debian systems, wrote a tool
to convert Debian security advisories into OVAL definitions and
started work on an OVAL client and server pair which will allow
central control of security on clusters of Debian machines.
* Ana Guerrero spent the summer improving piuparts, an existing
Debian QA tool that tests package interactions during installation,
upgrades and removals. She fixed multiple bugs and implemented
several extra features, most interestingly the custom scripts
option that allows custom scripts to be run inside the piuparts
chroot.This makes it possible to run a custom script at multiple
points in the process: before installing or upgrading, and after
installing, removing or purging a package.
I'd like to thank all of the students and mentors for their hard work
this summer, and of course also the nice folks at Google for making
this all possible. We've had a very good year and we'll be reaping the
benefits for some time to come.
-- Steve McIntyre, Cambridge, UK.
"When C++ is your hammer, everything looks like a thumb." -- Steven M. Haflich