|
|
Log in / Subscribe / Register

Distributions

A Debian init system GR flurry

By Jonathan Corbet
October 29, 2014
One might have hoped that that Debian systemd debate would have wound down several months ago, after the technical committee decided the default init system question and especially after Matthew Vernon's general resolution on init system choice was withdrawn due to a lack of seconds. The Debian community, it seemed, was tired of this discussion and ready to move on. Given a few months to rest, though, even old, tiresome subjects can once again seem worthy of discussion. So now we have a return of the init system choice resolution — along with three alternatives of varying scope.

The GR returns

On October 16, Ian Jackson reposted Matthew's general resolution text as a new proposal. The core of this text is simple enough: "In general, software may not require a specific init system to be pid 1." There are some obvious exceptions — init systems themselves, for example — but the point of the resolution is that nearly the entire Debian distribution must be able to run, with nearly full functionality, under multiple init systems.

In March, this proposal failed to gain the required six seconds to go forward to a full-project vote. This time around, instead, the seconds came quickly, so the proposal will be voted on in the relatively near future. But the increased availability of seconds does not mean that there is a clear consensus behind this proposal.

One of the biggest concerns is about the effect this resolution will have on the upcoming "jessie" release, which is due to head into a feature freeze on November 5. Adding a new set of requirements to the distribution at this time, some think, is a sure recipe for delaying the jessie release. It has been pointed out that, seemingly, there are no packages in Debian now that require a specific init system, so no changes should be required for jessie. To some, that means that the resolution is not needed at all; others say that this is just the right time to address the issue before it does become a problem. In any case, Ian has added an amendment (which, like all of the options, can be seen on the Debian vote page) making it clear that this resolution is not expected to delay the jessie release.

Another objection is that this resolution imposes work on developers by forcing them to support multiple init systems whether they want to or not. Not forcing developers to do work is one of the core principles enshrined in the Debian constitution:

Nothing in this constitution imposes an obligation on anyone to do work for the Project. A person who does not want to do a task which has been delegated or assigned to them does not need to do it. However, they must not actively work against these rules and decisions properly made under them.

The question, is thus, whether rules on init system support constitute assigned work or whether they are simply rules that a developer may not act against. The case for the latter is perhaps best expressed by Steve Langasek, whose message deserves reading in full for those wanting to know where the motivation for this general resolution is coming from. As Steve put it:

It is a form of compulsion that is legitimate under our constitution. There are some times when letting every DD do their own thing is not the right way to build a shared operating system.

Russ Allbery, instead, sees the init system issue as being similar to Debian's adoption of udev or the fact that Debian only works with one C library. He has a lot of faith that, as with previous issues, this one will work out over time if Debian developers are allowed to do what they see as the right thing. The general resolution, he thinks, is not the path toward that goal:

I strongly believe that this proposal is well-meaning and put forward with the best of intentions. However, I also strongly believe that a vote in favor of it is basically a vote for constant flamewars and hostility in our community, and is likely to make it *less* likely that people will port things to non-systemd init systems due to the natural backlash against people who are not doing the work telling them how to do their work.

Anthony Towns takes a bit of a different approach, seeing init system support as a policy issue. Policy is not normally set by general resolution in Debian; instead, there is a policy committee charged with handling such issues. In his view, no developer could be compelled to add support for multiple init systems to a package, but, equally, the release managers could not be compelled to include that package in the distribution if policy argues otherwise. Anthony has a github repository containing his suggested policy changes.

Alternatives

While some developers have taken positions of opposition to Ian's proposal, others have taken the approach of offering amendments — alternatives that will be voted on with the initial proposal. As of this writing, there are three of these amendments, varying considerably in their approach to the problem.

The first of these, put forward by Debian project leader Lucas Nussbaum, aims for init system diversity but applies a lighter hand. Where Ian's proposal uses, in IETF terms, "MUST" phrasing, Lucas's uses "SHOULD" instead. The proposal says that packages should support the default init system on the architecture for which they are built, and that packagers should accept patches that increase init system portability in general. This proposal points in generally the same direction as Ian's, but it takes the form of advice rather than commandments.

The second amendment came from Luca Falavigna. It states that:

Debian packages may require a specific init system to be executed as PID 1 if their maintainers consider this a requisite for its proper operation by clearly mark this in package descriptions and/or by adding dependencies in order to enforce this; and no patches or other derived works exist in order to support other init systems in such a way to render software usable to the same extent.

It goes on to say that a developer's technical decisions will not be overruled in the absence of documented defects, and that "fear, uncertainty, and doubt are not considered as evidence of defects." This amendment clearly runs counter to the first two, in that it explicitly allows developers to create packages that are dependent on a specific init system.

The final amendment comes from Charles Plessy. It states, simply, that things are working well as they are now and that no general resolution is needed. It could be thought of as an alternative to the required "further discussion" option that, with luck, would allow the project to do without having to actually endure further discussion on the subject.

Further discussion

If there is one thing the past few years of systemd debates have shown clearly, though, it's that further discussion is almost inevitable. Those who see systemd as the answer to a long list of system administration problems are unlikely to give up on exploiting its features to the extent that they are useful. Those who do not like the systemd approach or its development community, or who have, as Steve put it, "grave misgivings about Debian being tied to an upgrade treadmill by an upstream that may pay little heed to things that matter to Debian's community in the absence of a forcing function" are unlikely to be comforted without several years of experience to the contrary. With positions this far apart, one can be assured that there will be more to talk about.

The immediate question should be answered within a few weeks; this resolution is likely to go to a vote in early November. Whether that answer puts the issue to rest will depend on a number of things, starting with the Debian community's willingness to accept the answer and return to work putting together the jessie release. A stronger show of a desire to cooperate and respect Debian's concerns from the systemd community would certainly not hurt. Both communities will also have to make a point of ignoring the large mob of trolls that seems to revel in stirring up flame wars on this topic wherever it can.

That's a tall order, but, as Russ put it, Debian has been through many large, controversial decisions in the past and has always come out strong. There is no reason to believe that the project will fail to live up to that history this time around. But the process of getting there may be a bit messy for a while, yet.

Comments (140 posted)

Brief items

Distribution quotes of the week

At best I can say it comes down to operating systems are too damn complicated and I need to go back to potato farming :)
-- Stephen John Smoogen

There are also a lot of Debian users who are afraid of what the future holds for an OS that they love very much; and they deserve to have that cloud of fear removed from over their heads, to be given closure, even if that closure brings the certainty that they will part ways with Debian rather than being reconciled to it.
-- Steve Langasek

This flexibility has, for a long time, been one of our key strengths. It is one of the reasons we are an attractive choice for downstreams and it is also something that I have always thought the Debian community values highly.

We have even encoded that flexibility in the slogan `the Universal Operating System'. That surely does not mean that Debian /is/, itself and directly, the best OS for every purpose; but rather than Debian is at least trying to support every possibility, all imperfectly. We try to avoid trading off that flexibility in favour of supporting some (or even many) use cases more perfectly.

-- Ian Jackson

If we cannot embrace innovation we should get out of the way of the youngsters, whose brains are yet to fossilise, and see what wonders they can surprise us with.

It may not be as awful as you imagine.

-- Philip Hands (Thanks to Jóhann B. Guðmundsson)

Comments (6 posted)

Release for CentOS-6.6 i386 and x86_64

CentOS 6.6 has been released. "There are many fundamental changes in this release, compared with the past CentOS-6 releases, and we highly recommend everyone study the upstream Release Notes as well as the upstream Technical Notes about the changes and how they might impact your installation. (See the 'Further Reading' section of the [CentOS release notes])."

Full Story (comments: none)

First Jessie based Debian Edu alpha released

The first alpha release of Debian Edu (also known as Skolelinux) is available for testing. "Would you like to give your school's computer a longer life? Are you tired of sneaker administration, running from computer to computer reinstalling the operating system? Would you like to administrate all the computers in your school using only a couple of hours every week? Check out Debian Edu Jessie!"

Full Story (comments: none)

openSUSE Factory and Tumbleweed to merge

The openSUSE project has announced that the "Factory" and "Tumbleweed" distributions will merge into a single rolling distribution (called "Tumbleweed"). There is also an FAQ posting about the merger. "With the vast improvements to the Factory development process over the last 2 years, we effectively found ourselves as a project with not one, but two rolling release distributions in addition to our main regular release distribution. GregKH signalled his intention to stop maintaining Tumbleweed as a 'rolling-released based on the current release'. It seemed a natural decision then to bring both the Factory rolling release and Tumbleweed rolling release together, so we can consolidate our efforts and make openSUSE's single rolling release as stable and effective as possible."

Comments (none posted)

Qubes OS release 2 available

Release 2 of the Qubes OS secure desktop system is available. The biggest change, perhaps, is support for "fully virtualized AppVMs"; these allow running any operating system in a fully virtualized mode under Qubes. Other additions include secure audio input to AppVMs (allowing Skype to be run in a sandbox, evidently), policy control over the clipboard, an improved secure backup infrastructure, improved hardware support, and more.

Comments (2 posted)

SUSE Linux Enterprise 12 Now Available

SUSE has announced the release of SUSE Linux Enterprise 12. "New products based on SUSE Linux Enterprise 12 feature enhancements that more readily enable system uptime, improve operational efficiency and accelerate innovation. The foundation for all SUSE data center operating systems and extensions, SUSE Linux Enterprise meets the performance requirements of data centers with mixed IT environments, while reducing the risk of technological obsolescence and vendor lock-in." SUSE Linux Enterprise Server is available for x86_64, IBM Power Systems, and IBM System z.

Comments (24 posted)

Ubuntu 14.10 (Utopic Unicorn) released

Ubuntu has announced its latest release: 14.10 "Utopic Unicorn". As usual, it comes with versions for server, desktop, and cloud, along with multiple official "flavors": Kubuntu, Lubuntu, Mythbuntu, Ubuntu GNOME, Ubuntu Kylin, Ubuntu Studio, and Xubuntu. All of the varieties come with a 3.16 kernel and many more new features: "Ubuntu Desktop has seen incremental improvements, with newer versions of GTK and Qt, updates to major packages like Firefox and LibreOffice, and improvements to Unity, including improved High-DPI display support. Ubuntu Server 14.10 includes the Juno release of OpenStack, alongside deployment and management tools that save devops teams time when deploying distributed applications - whether on private clouds, public clouds, x86 or ARM servers, or on developer laptops. Several key server technologies, from MAAS to Ceph, have been updated to new upstream versions with a variety of new features." More information can be found in the release notes.

Full Story (comments: none)

The Canonical Distribution of Ubuntu OpenStack

Canonical has announced a new OpenStack-oriented distribution. "Based on Canonical’s industry-leading OpenStack reference architecture and building on Ubuntu’s leading position as the most widely used OpenStack platform, the Canonical Distribution gives users the widest range of commercially-supported vendor options for storage, software-defined networking and hypervisor from Canonical and its OpenStack partners. It then automates the creation and management of a reference OpenStack based on those choices."

Note that some conditions apply: "The Canonical Distribution of Ubuntu OpenStack is now available as a public beta, free for up to 10 physical and 10 virtual machines". See this page for more information.

Comments (14 posted)

Distribution News

Fedora

Announcing the Fedora 21 Alpha for the Aarch64 architecture

Peter Robinson has announced the release of Fedora 21 Alpha for ARM aarch64. "The initial release of Fedora for aarch64 focuses on the Fedora Base and Server product with support for hardware plarforms such as the APM Storm platform including devices like the Mustang board, AMD Seattle and ARM Versatile Express64 including the Foundation emulator and the Juno hardware platform."

Full Story (comments: none)

Ubuntu family

Ubuntu Online Summit

The next Ubuntu Online Summit will be held November 12-14. "Ubuntu Online Summit is your opportunity to find out what's new in Ubuntu, what's happening next in your favourite area, to contribute your ideas and bring up topics for discussion."

Full Story (comments: none)

Newsletters and articles of interest

Distribution newsletters

Comments (none posted)

Ten years of Ubuntu (ars technica)

Here's a lengthy ars technica retrospective on Ubuntu's first ten years. "As you'll soon see in this look at the desktop distro through the years, Linux observers sensed there was something special about Ubuntu nearly from the start. However, while a Linux OS that genuinely had users in mind was quickly embraced, Ubuntu's ten-year journey since is a microcosm of the major Linux events of the last decade—encompassing everything from privacy concerns and Windows resentment to server expansion and hopes of convergence."

Comments (35 posted)

SUSE Linux Enterprise 12 Debuts With 'Rock-Solid' Cloud Support (Linux.com)

Linux.com takes a look at the newly released SUSE Linux Enterprise 12.

SUSE Linux Enterprise 12 serves as the foundation for all SUSE data center operating systems and extensions. New operating systems and software extensions based on it include SUSE Linux Enterprise Server for x86_64, IBM Power Systems and IBM System z; SUSE Linux Enterprise High Availability Extension and Geo Clustering for SUSE Linux Enterprise High Availability Extension; SUSE Linux Enterprise Virtual Machine Driver Pack; and SUSE Linux Enterprise Desktop and SUSE Linux Enterprise Workstation Extension.

Included in these new products are feature enhancements aimed at better enabling system uptime, improving operational efficiency and accelerating innovation, SUSE says. Also new in this version is an updated customer portal designed to make it easier for customers to manage their subscriptions, access patches and updates and communicate with SUSE customer support.

Comments (none posted)

Calculate Linux Provides Consistency by Design (LinuxInsider)

LinuxInsider has a review of Calculate Linux. "Calculate Linux 14, developed by Alexander Tratsevskiy in Russia, is not your typical cookie-cutter type of Linux OS. This latest version, released Sept. 5, is a rolling-release distribution that provides a number of preconfigured features. It uses a source-based approach to package management to optimize the software. This in part comes from its roots as a Gentoo Linux-based distribution. Calculate Linux comes in three more versions to expand its reach. Calculate Directory Server is for servers, and Calculate Linux Scratch for building customized systems. The Calculate Media Center is a distro to run a home multimedia center."

Comments (none posted)

Page editor: Rebecca Sobol
Next page: Development>>


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