|
|
Subscribe / Log in / New account

Debian's election season: old firmware and new contributors

LWN.net needs you!

Without subscribers, LWN would simply not exist. Please consider signing up for a subscription and helping to keep LWN publishing

By Jonathan Corbet
October 29, 2008
Longtime LWN readers will be aware of your editor's tendency toward the publishing of wild predictions at the beginning of each year. The 2007 predictions irritated some Debian developers and users by suggesting that, after getting the Etch release out the door, the project would go back to arguing about firmware issues. At the end of the year, it became necessary to acknowledge that this prediction, like so many others, had failed to come to pass. In retrospect, the error in this prediction was obvious: the Debian Project traditionally saves the firmware argument for the end of the release process. After all, they need to find some way to delay a release once it's looking close to ready.

The problem with firmware, of course, is that it is a binary blob lacking the corresponding source, and, sometimes, even a license allowing its distribution. Many developers and users see that blob as being part of the hardware; as long as the blob is distributable, it does not bother them. Others, though, regard firmware blobs as proprietary software and their incorporation into the kernel as a GPL violation. The Debian Project, which promises to deliver a 100% free distribution to its users, houses many developers from the latter camp. These developers, who see firmware distribution as a violation of the project's social contract, can be counted upon to raise the issue each release cycle.

In 2004, the project responded by passing a general resolution suspending some social contract provisions through September 1 of that year on the reasoning that it would be long enough to get the Sarge release done. Putting a date on a Debian release tends to be a mistake, though; Sarge was not finished until June, 2005. By unspoken consensus, that date was somehow deemed to have fallen before September 1, 2004. In 2006, the project voted again on firmware. Having learned from experience, the exception they allowed this time lacked a date, simply saying that the presence of binary-only firmware in the Etch release was something the project was willing to tolerate.

The 2008 discussion started when Ben Finney pointed out that a number of firmware-related entries in the Debian bug tracking system had been quietly marked "lenny-ignore" - not relevant to the upcoming Lenny release. This action, many have subsequently argued, runs counter to the social contract and constitution, which do not allow the shipping of non-free software to be swept under the carpet in this way. They would, instead, like to see the kernel team remove the (relatively few) firmware blobs remaining in the kernel. Such a change, it is said, should be relatively easy; recent changes within the kernel are helpful in this regard - though said changes became available in 2.6.27, which is not the kernel expected to be shipped with the Lenny release. For the 2.6.26 kernel used by Lenny, Ben Hutchings reports that he has done the necessary work to excise the remaining firmware.

On the other side, there are developers who are more concerned about (1) getting the Lenny release out as quickly as possible, and (2) making sure that hardware Just Works for Lenny users. They would rather that the process of removing firmware continue independently of (and without delaying) the Lenny release.

This is Debian that we're talking about, so the issue will probably be decided by way of a general resolution. There are currently two sets of resolutions being circulated, though neither has reached a final state for voting. The first set addresses the Lenny question, providing two options: either delay Lenny until the firmware removal work is complete, or accept that - just once more, really this time, honest - a major Debian release will include some firmware in its kernel. (The "ship Lenny" option is actually two options, one allowing firmware and one allowing Debian Free Software Guidelines violations in general). What the project will decide once this resolution comes to a vote is unclear - but Debian's developers have always voted to get the release out in the past.

The second proposal addresses what happens after the Lenny release; it says that any package which violates the Debian Free Software Guidelines for more than 180 days will be forced into the non-free repository. The clear hope here is to ensure that this tiresome discussion doesn't happen yet again in the next release cycle. By the time the next release is getting close to ready, any non-compliant packages will have long since been banished to the non-free wasteland. If it ever comes down to moving the kernel to non-free, though, one can assume that the discussion will resume with a vengeance.

Developers, Members, Maintainers, and Contributors

Meanwhile, a different disagreement is headed toward - you guessed it - a general resolution. Long-time Debian watchers have noted that another recurring topic of debate is the acceptance of new developers. The new maintainer process involves long delays, tests of ideological purity, and more. Even when it works smoothly (which seems to generally be the case in recent years) it requires a certain amount of patience and determination on the part of an aspiring Debian Developer.

The difficulty of the process is a design feature; Debian developers occupy a position of some trust, and the project wants to make sure that applicants are serious. Over time, though, it has become clear that this process is costing the project the time and energy of talented contributors who do not wish to jump through all the hoops. In response, the project created a "Debian maintainer" designation which allows the uploading of packages, but withholds many of the other privileges enjoyed by full developers. This change appears to have been successful in enabling a larger group of developers to contribute to Debian.

More recently, Joerg Jaspert has proposed lowering the bar to certain types of contribution even further. The proposal reads:

Debian is about developing a free operating system, but there's more in an operating system than just software and packages. If we want translators, documentation writers, artists, free software advocates, et al. to get endorsed by the project and feel proud for it, we need some way to acknowledge that.

To that end, Joerg would create a new "Debian Contributor" classification. Contributors would be those doing translations or documentation; the proposal doesn't say that contributors don't touch code, but one gets that sense. Contributors would still have to jump through some hoops, but they would be fewer. They would not be able to upload packages on their own. The proposal also changes the Debian Maintainer standards, making that designation a little bit harder to get. Finally, the proposal states that all new applicants to the project would become Contributors or Maintainers. Only after a six-month period would they be able to apply for full Debian Developer or Debian Member status -- "Debian Member" being another new category that, while being equivalent to Debian Developer in almost all respects, would not have package upload privileges.

Interestingly, there has not been much discussion of the substance of this proposal. But there has been a fair amount of debate over how it is being done. It would appear that some developers see this change as being imposed by a single project official without the debate that Debian changes normally require. Martin Krafft has further asserted that this kind of change goes beyond Joerg's authority as Debian account manager, a claim that Joerg denies.

So now there are proposed general resolutions being circulated. An early version simply decreed that the proposed changes were "suspended" in favor of changes to be made through a more consensus-oriented process. Later versions soften the language somewhat, and thank Joerg for his effort in this area - but still require a "consensus or general resolution" before changes are adopted. In any form, the clear point of the resolution is to slow down the process and open it up for a wider discussion.

Again, voting has not begun on any specific resolution, so we don't yet know what will even be voted on, much less how it will come out. But we can expect that, as a certain presidential election process finally (thankfully) comes to a close, activity will be picking up on a different set of votes.


(Log in to post comments)

Debian's election season: old firmware and new contributors

Posted Oct 29, 2008 16:55 UTC (Wed) by joey (guest, #328) [Link]

> the Debian Project traditionally saves the firmware argument for the end
> of the release process. After all, they need to find some way to delay a
> release once it's looking close to ready.

Haha. What about all the work that has been done already during this release process to remove much firmware from the kernel, and to keep hardware using that firmware usable in the installer etc? Perhaps a vote is easier for LWN to report on than actual work being done.

Debian's election season: old firmware and new contributors

Posted Oct 29, 2008 17:23 UTC (Wed) by JoeBuck (subscriber, #2330) [Link]

Binary blobs appear to violate the DFSG, but they don't violate the GPL (assuming that the binary blob code itself does not contain GPL code), because they are completely separate programs that run on completely separate processors, and fall under the GPL's "mere aggregation" exception.

Debian's election season: old firmware and new contributors

Posted Oct 29, 2008 17:24 UTC (Wed) by JoeBuck (subscriber, #2330) [Link]

So you haven't seen the flamewar currently going on on debian-devel? Some folks are objecting to the lenny-ignore tag added to bugs that refer to firmware that has not been removed.

Debian's election season: old firmware and new contributors

Posted Oct 29, 2008 18:37 UTC (Wed) by dwmw2 (subscriber, #2063) [Link]

Haha. What about all the work that has been done already during this release process to remove much firmware from the kernel, and to keep hardware using that firmware usable in the installer etc? Perhaps a vote is easier for LWN to report on than actual work being done.
The work on removing firmware from the kernel was mostly done by other people, and was reported by LWN when it happened. It seems like Debian was more interested in having votes about it, while others just got on with it.

Debian's election season: old firmware and new contributors

Posted Oct 30, 2008 8:02 UTC (Thu) by rhertzog (subscriber, #4671) [Link]

> The work on removing firmware from the kernel was mostly done by other people, and was reported by LWN when it happened. It seems like Debian was more interested in having votes about it, while others just got on with it.

While this is true for a part of the kernel work, it's not true when it comes to the debian-installer work (and Joey worked on this). d-i is now able detect that some of your hardware needs a non-free firmware and prompts you to provide them on some media (USB key for example) to get your hardware to work.

And this is important to not let users in the cold without a way to use their hardware.

Debian's election season: old firmware and new contributors

Posted Oct 30, 2008 8:50 UTC (Thu) by jschrod (subscriber, #1646) [Link]

Well, I find the remark hilarious and quite to the point of the way the Debian Developer Community handles these kinds of discussion. And I didn't read it the way as if John would have denigrated your work on the firmware issues -- which he reported on in the past here, when it happened. I think it was more about the regular tendency for flamewars about that topic on debian-devel.

Debian's election season: old firmware and new contributors

Posted Oct 30, 2008 1:09 UTC (Thu) by fjpop (guest, #30115) [Link]

> Interestingly, there has not been much discussion of the substance
> of this proposal.

/me thinks you must not be subscribed to the debian-project list?

debian-project

Posted Oct 30, 2008 18:25 UTC (Thu) by corbet (editor, #1) [Link]

Sigh. How many mailing lists does Debian have anyway? And can anybody possibly believe I don't follow enough lists?

But, yes, you're right, I wasn't on debian-project. I guess I'll start watching it. There's a lot of interesting stuff there that I wish I'd seen.

debian-project

Posted Oct 30, 2008 19:28 UTC (Thu) by riddochc (guest, #43) [Link]

Out of wild curiosity, how many lists *are* you subscribed to? How much of your day do you spend reading[1] email?

[1] For appropriate definitions of 'reading' - perhaps I should say 'processing' instead, depending on the volume?

debian-project

Posted Nov 3, 2008 8:48 UTC (Mon) by liw (subscriber, #6379) [Link]

I don't know what a rhetorical question means.

http://lists.debian.org/ has the full list of mailing lists run by the Debian project itself. It has 218 lists.

There are some mailing lists not run by the project, and there are some package-specific lists on alioth.debian.org, but I doubt those are relevant except for very narrow focus groups.

Debian's election season: old firmware and new contributors

Posted Oct 30, 2008 9:00 UTC (Thu) by NAR (subscriber, #1313) [Link]

If it ever comes down to moving the kernel to non-free, though, one can assume that the discussion will resume with a vengeance.

Now that would be interesting to see :-)


Copyright © 2008, Eklektix, Inc.
This article may be redistributed under the terms of the Creative Commons CC BY-SA 4.0 license
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds