As announced before, I spent a week last month in Vaumarcus, Switzerland,
attending the 14th Debian conference (DebConf13).
It was great to be at DebConf again, with lots of people I hadn't seen since
New York City three years ago, and lots of new faces. Kudos to the organizers
for pulling this off. These events are always a great boost for motivation, even if
the amount of free time after coming back home is not quite as copious as I might like.
One thing that struck me this year was the number of upstream people, not
directly involved in Debian, who showed up. From systemd's Lennart and Kay,
to MariaDB's Monty, and people from upstart,
dracut, phpmyadmin or munin.
That was a rather pleasant surprise for me.
Here's a report on the talks and BoF sessions I attended. It's a bit long, but hey, the conference lasted a week. In addition to
those I had quite a few chats with various people, including fellow members of
the Debian release team.
Linux kernel : Ben Hutchings made a summary of the features added
between 3.2 in wheezy and the current 3.10, and their status in Debian
(some still need userspace work).
SPI status : Bdale Garbee and Jimmy Kaplowitz explained what steps SPI
is making to deal with its growth, including getting help from a
bookkeeper recently to relieve the pressure on the (volunteer)
treasurer.
Hardware support in Debian stable : If you buy new hardware today, it's almost certainly not supported by the
Debian stable release. Ideas to improve this :
- backport whole subsystems: probably not feasible, risk of
regressions would be too high
- ship compat-drivers, and have the installer automatically install
newer drivers based on PCI ids, seems possible.
- mesa: have the GL loader pick a different driver based on the hardware,
and ship newer DRI drivers for the new hardware, without touching the old
ones. Issue: need to update libGL and libglapi too when adding new
drivers.
- X drivers, drm: ? (it's complicated)
Meeting between release team and DPL to figure out next steps for jessie. Decided to schedule a BoF later in the week.
Munin project lead on new features in 2.0 (shipped in wheezy) and
roadmap for 2.2. Improvements on the scalability front (both in terms
of number of nodes and number of plugins on a node). Future work
includes improving the UI to make it less 1990 and moving some
metadata to sql.
jeb on AWS and Debian : Amazon Web Services (AWS) includes compute (ec2), storage (s3), network (virtual private
cloud, load balancing, ..) and other services. Used by Debian for
package rebuilds. http://cloudfront.debian.net is a CDN frontend for archive
mirrors. Official Debian images are on ec2, including on the AWS
marketplace front page. build-debian-cloud tool from Anders Ingeman et al. was presented.
openstack in Debian : Packaging work is focused on making things easy for newcomers, basic
config with debconf. Advanced users are going to use puppet or
similar anyway. Essex is in wheezy, but end-of-life upstream. Grizzly
available in sid and in a separate archive for wheezy. This work is sponsored by
enovance.
Patents : http://patents.stackexchange.com, looks like the USPTO has used comments made there when rejecting patent
applications based on prior art. Patent applications are public, and
it's a lot easier to get a patent application rejected than invalidate
a patent later on. Should we use that site? Help build momentum
around it? Would other patent offices use that kind of research?
Issues: looking at patent applications (and publicly commenting) might
mean you're liable for treble damages if the patent is eventually
granted? Can you comment anonymously?
Why systemd? : Lennart and Kay. Pop corn, upstart trolling, nothing really new.
dracut : dracut presented by Harald Hoyer, its main developer. Seems worth investigating replacing initramfs-tools and sharing the maintenance load. Different hooks though, so we'll need to coordinate this with various packages.
upstart : More Debian-focused than the systemd talk. Not helped by Canonical's CLA...
dh_busfactor : debhelper is essentially a one-man show from the beginning. Though various
packages/people maintain different dh_* tools either in the debhelper
package itself or elsewhere. Joey is thinking about creating a debhelper
team including those people. Concerns over increased breakage while people
get up to speed (joeyh has 10 years of experience and still occasionally
breaks stuff).
dri3000 : Keith is trying to fix dri2 issues. While dri2 fixed a number of things that were wrong
with dri1, it still has some problems. One of the goals is to improve presentation:
we need a way to sync between app and compositor (to avoid displaying incompletely
drawn frames), avoid tearing, and let the app choose immediate page flip
instead of waiting for next vblank if it missed its target (stutter in games is painful).
He described
this
work on his
blog.
security team BoF : explain the workflow, try to improve documentation of the process and
what people can do to help. http://security.debian.org/
day trip, and conference dinner on a boat from Neuchatel to Vaumarcus
git-dpm : Spent half an hour explaining git, then was rushed to show git-dpm
itself. Still, needs looking at. Lets you work with git and export
changes as quilt series to build a source package.
Ubuntu daily QA : The goal was to make it possible for canonical devs (not necessarily people
working on the distro) to use ubuntu+1 (dev release). They tried syncing
from testing for a while, but noticed bug fixes being delayed: not good.
In the previous workflow the dev release was unusable/uninstallable for the
first few months. Multiarch made things even more problematic because it
requires amd64/i386 being in sync.
- 12.04: a bunch of manpower thrown at ubuntu+1 to keep backlog of
technical debt under control.
- 12.10: prepare infrastructure (mostly launchpad), add APIs, to make
non-canonical people able to do stuff that previously required shell
access on central machines.
- 13.04: proposed migration. britney is used to migrate packages from
devel-proposed to devel. A few teething problems at first, but good
reaction.
- 13.10 and beyond: autopkgtest runs triggered after upload/build, also
for rdeps. Phased updates for stable releases (rolled out to a subset
of users and then gradually generalized). Hook into errors.ubuntu.com
to match new crashes with package uploads. Generally more continuous
integration. Better dashboard. (Some of that is still to be done.)
Lessons learned from debian:
- unstable's backlog can get bad → proposed is only used for builds and
automated tests, no delay
- transitions can take weeks at best
- to avoid dividing human attention, devs are focused on devel, not
devel-proposed
Lessons debian could learn:
- keeping testing current is a collective duty/win
- splitting users between testing and unstable has important costs
- hooking automated testing into britney really powerful; there's a
small but growing number of automated tests
Ideas:
- cut migration delay in half
- encourage writing autopkgtests
- end goal: make sid to testing migration entirely based on automated tests
Debian tests using Jenkins http://jenkins.debian.net
- https://github.com/h01ger/jenkins-job-builder
- Only running amd64 right now.
- Uses jenkins plugins: git, svn, log parser, html publisher, ...
- Has existing jobs for installer, chroot installs, others
- Tries to make it easy to reproduce jobs, to allow debugging
- {c,sh}ould add autopkgtests
X Strike Force BoF : Too many bugs we can't do anything about: {mass,auto}-close them,
asking people to report upstream.
Reduce distraction by moving the non-X stuff to separate teams (compiz
removed instead, wayland to discuss...).
We should keep drivers as close to upstream as possible. A couple of people
in the room volunteered to handle the intel, ati and input drivers.
reclass BoF
I had missed the talk about reclass, and Martin kindly offered to give a
followup BoF to show what reclass can do.
Reclass provides adaptors for puppet(?), salt, ansible.
A yaml file describes each host:
- can declare applications and parameters
- host is leaf in a dag/tree of classes
Lets you put the data in reclass instead of the config management tool,
keeping generic templates in ansible/salt.
I'm definitely going to try this and see if it makes it easier to organize
data we're currently putting directly in salt states.
release BoF : Notes are on http://gobby.debian.org. Basic summary: "Releasing in general is hard.
Releasing something as big/diverse/distributed as Debian is even harder." Who knew?
freedombox : status update from Bdale
Keith Packard showed off the free software he uses in his and Bdale's rockets adventures.
This was followed by a birthday party in the evening, as Debian turned 20 years old.
x2go : Notes are on http://gobby.debian.org. To be solved: issues with nx libs (gpl fork of old x).
Seems like a good thing to try as alternative to LTSP which we use at Logilab.
lightning talks
- coquelicot (lunar) - one-click secure(ish) file upload web app
- notmuch (bremner) - need to try that again now that I have slightly more
disk space
- fedmsg (laarmen) - GSoC, message passing inside the debian infrastructure
Debconf15 bids :
- Mechelen/Belgium - Wouter
- Germany (no city yet) - Marga
Debconf14 presentation : Will be in Portland (Portland State University) next August. Presentation by vorlon, harmoney, keithp. Looking forward to it!
The videos of most of the talks can be downloaded, thanks to the awesome work of the video team. And if you want to check what I didn't see or talk about, check the complete schedule.