At this point, it is very clear that systemd will be the default choice for Debian. This, despite the fact that it does not cater to non-Linux systems and one of Debian's recent showpieces has been its kFreeBSD port, "an official Debian GNU distribution using the kernel of FreeBSD instead of the Linux kernel. About ninety percent of the Debian software archive is available for Debian GNU/kFreeBSD".
For those who have not followed this story, in November last year the leader of the Debian GNU/Linux project, Lucas Nussbaum, asked his technical committee to make a decision on which init system should be the default for the next release, Jessie. That release is scheduled for November, though with Debian there are no hard and fast release dates.
The debate on which init system to adopt has been going on for what seems like ages; of the eight technical committee members, six have made their positions known openly; while four are behind systemd, the other two back upstart. But the two members who have yet to speak openly are both employees of Canonical, which created the upstart system. Hence it is unlikely that they would vote against it. The chairman of the technical committee, Bdale Garbee, has a casting vote.
Briefly, Canonical, which developed the upstart init system, has a licence for code contributors which reserves to itself the right to make the code proprietary. Canonical ships its products under a GPLv3 licence. And, one must add, Canonical owner Mark Shuttleworth (pictured) is not the most popular person within the ranks of free and software developers.
One of the two people who started the systemd project, Kay Sievers, formerly of SUSE Linux and now with Red Hat, referred to a post from developer Don Armstrong who is a member of the technical committee that said: "I should note that I think if upstart did not have the CLA that it does, the rest of the FOSS world might have just improved it, and systemd might never have shown up. I suspect that the fate of bzr might be similar. These should serve as a cautionary tale for for-profit companies requiring CLAs. [Or everyone, even.]" Armstrong is one of the four technical committee members who have supported systemd as the default.
In response, Sievers noted: "True statement. And yeah, without the CLA, we would very likely have worked on upstart, instead of starting the systemd project. Four years ago we talked to lawyers and tried pretty hard to convince them to give it up, but there was no way to negotiate.
"Today, I very much enjoy the fact that this is a good example what you do to your project or company if you try to skew the free software playing field too much with tricky contracts. You just get what you build, an/your island."
Responding to Sievers, the creator of upstart, Scott James Remnant, no longer a Canonical employee, wrote: "If the CLA wasn't there, we'd've just tugged and pulled and fought about patches like normal projects, and Upstart would have turned out much like systemd - I'd've been okay with that."
Later in the same discussion, Sievers responded to a question by writing: "I want to stay my work free (sic) for everybody, but want people building stuff on top of it to be required to publish the changes. That way, and only that way, things just get better by itself over time.
"If you build all stuff on your own, it's yours, absolutely no problem, keep it private; but if you build it on top other peoples work, you should be forced to give it back. It's a very simple deal, where everybody benefits in the long run."
Licensing has always been a topic of controversy in free and open source software circles, even the licences created by the GNU Project. The original General Public Licence drafted by this project, the brainchild of Richard Stallman, is the one under which the Linux kernel is distributed - the short version of this licence is that one can take, use and modify, but any changes have to be contributed back if these are being distributed. It has served many projects well.
The BSD camps are happy with their own licences which allow companies or individuals to take code they have written and lock it away. That way, the whole community does not benefit from any changes that are made. Proprietary software companies, it must be mentioned, love the BSD-style licences which enable them to profit from others' work without paying a cent.
Back to the Canonical CLA: one of the points mentioned by Debian technical committee member Keith Packard was that while systemd was being developed by a cross section of the community, upstart had a developer community limited to Canonical employees. "I believe as a result, upstart development has flagged and now lags far behind systemd in several key areas," Packard concluded. Given his technical nous, one doubts that many would question his judgement.
Image: Courtesy linux.com