Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Why the hell does Gnome have a hard dependency on systemd? I shouldn't have to change my init system just because I want an updated DE.


Systemd is a critical part of the Linux userland, and is now the standard Linux init system.

If you opt to run Linux without systemd, expect various userland things to break.


I wish this perspective were more widespread.

Systemd takes the cool stuff that's been getting into Linux under the hood and makes actually usable to everyday users and administrators.

And it's far easier to write a systemd unit than a startup script for any other init system (except DJB's daemontools, perhaps).


The "Linux userland"? Really? I wasn't aware Android had a hard dependency on systemd.

I'm all for opinionated design, but I hope we don't end up with a "Linux userland" in the sense we have a GNU userland -- that would be going towards too tight coupling of things that really shouldn't be coupled at all.


Its not about tight coupling. It is about one system supporting a feature, and the other "alternatives" not supporting it. So the choice becomes one between better software and compatibility.

"Choice" just means you are stuck coding for the lowest common denominator.


Tight coupling is the whole point.

The Unix Philosophy is based on building well-factored parts that fit together with small, knowable interfaces (e.g., simple text protocols communicating over pipes or sockets). Yet, the success of Mac OS X as the only relevant Unix on the desktop goes to show that whole, well-integrated systems are much more valuable than well-factored parts.

GNU/Linux needs to become a whole, integrated system. A platform for applications, not a framework for parts. Systemd is an essential part of that vision.

In short, everybody needs to suck it up because this is how things are done in Linux now.


> the success of Mac OS X as the only relevant Unix on the desktop goes to show that whole, well-integrated systems are much more valuable than well-factored parts.

Certainly not as clearly as the success of Linux in the server world shows the opposite.

> Linux needs to become a whole, integrated system.

If the priority for Linux is to capture a bigger share of the dying desktop market at the expense of the server market, sure.

On the server side, the whole "framework for parts assembled ad hoc by a recipe for a task" model is becoming more, not less viable.


> If the priority for Linux is to capture a bigger share of the dying desktop market at the expense of the server market, sure.

RHEL's next release will come with systemd. The server market is not threatened by systemd, and the growth market in personal devices -- mobile -- will benefit from its power-management features.

> On the server side, the whole "framework for parts assembled ad hoc by a recipe for a task" model is becoming more, not less viable.

systemd units are much easier to write than init scripts.


I perhaps wasn't sufficiently clear; my issue was with the sweeping generalities about what MacOS X supposedly proved in terms of Linux needing to become that kind of integrated OS rather than a framework assembled from parts, not the specific idea that broad generality was offered to support about systemd (I don't really have a strong opinion on systemd either way.)


What about those who opt not to use Linux? Relying on a Linux only init service is pretty much a middle finger to the users of that software on those platforms.


Then your not going to be able to use Gnome 3. Personally, I'd rather they use advanced features even if they're Linux only. I'm sick of Linux being held back by some misguided notion that every application needs to be ran on a version of NetBSD from 10 years ago.


There's an effort to bring these features to OpenRC which works on Linux and FreeBSD, but the Gnome developers have shown absolutely no interest in assisting the project, even though they'll be limiting their own share of the desktop environment space.


I think it's important to have a standard API going forward rather than porting to ten different APIs. We'd be more than happy to support OpenRC if you implemented the logind APIs we require.


Licensing is an issue. Systemd's APIs are LGPL and OpenRC must remain under a BSD license.


An API doesn't have a license. It is just the code which has a license. Do you mean you want to copy the code to reuse it under OpenRC, or are you really talking about the API?

Regarding API license: Just ask systemd mailing list. They will tell you that API doesn't have a license, only the code.


The APIs are LGPL? As opposed to the implementation of the APIs?


Gentoo GNOME packagers decided they'd make GNOME in Gentoo depend on systemd. I don't see why you expect GNOME developers to help out with another init systemd. That should be up to init system developers. Just implement the same API and/or ensure the API is fixed so it can be implemented across init systems.


Amen!


It has a hard dependency on Logind. Logind was merged into systemd after the Gnome integration ( replacing ConsoleKit with logind ) happened. This means that Gnome became retroactively dependent on systemd-logind.


GNOME 3.8 does NOT depend on logind. That is optional. See https://blogs.gnome.org/ovitters/2013/09/25/gnome-and-logind... for a bit more detail. E.g. some features rely on systemd, so if you want those features you better run systemd.

Gentoo got this wrong and they prefer just depending on systemd to make life easier for them. However, I only expect GNOME to require logind (thus systemd) once we remove X support and only support Wayland. No idea how far off that is. For 3.12 the intention is to support both.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: