Discussion of systemd adoption by Debian, openrc, sysvinit

But it is trolling to open a bug report, when in fact there was no bug to report and just a rant. There is nothing wrong about complaining about something you don't like, but this method is just disrespectful. Bugzilla is not a discussion forum, it is a platform for troubleshooting and fixing bugs in software.
 
I agree that it isn't the appropriate arena for it, but I don't think the guy was 'trolling'.

I was more interested in the thought process than in the flames when I read it.
 
I think his bug was 'trolling' in the sense that he didn't actually report a bug. He has valid complaints, but a bug tracker isn't the place for them. The bug was clearly opened to elicit a response, not to identify a bug and track it.

Having said that, he might feel that the bug tracker was the only place he might stand a chance of getting visibility; I have no idea.

What might have been more constructive (and illuminating) would have been to open a bug tracker with a list of all the bugs that haven't been fixed, and request an update.
 
Agreed with Daerandin, as a developer myself, if a person opened a ticket just to _complain_, or _discuss_ the software being developed not only it's improper use of the bug tracker, it's downright a majestic waste of time. This happens a lot in mailing lists as well, most of the time I just skip them.

I'll bite at this, because it's one of the most delusional statements I keep reading

> Further, Linux is about choice.

Linux is _not_ about choice. Linux is a kernel, jesus christ! Even Torvalds has said it many times(subtle) that people can complain all they want, but at the end of the day most of them can't do anything but complain. Basically Linux is a choice because it's the only _most developed_ kernel at the moment, followed by *BSD kernel, then there's HURD which might take another 4 decades to actually be usable in normal desktop environments. If you take notice that choice is all about _open source_ and the GPL (there's actually a distinction here). Well, you guys don't believe me? Go open a ticket and rant about a module not providing different types of choices because you believe _it should be done in different ways so people can feel comfortable_.

The choice is there because open source is a thing. At the end of the day there are only two mature desktop environments (KDE, GNOME) and its light DE counterparts (XFCE, LXDE, etc). And then there's the 1,000,000 windows managers. Most of the people are still at the mercy of developers and forever will be; as the direction of the software is not really in the hand of the user. Why? because the user doesn't have the expertise, the judgement, the skills needed to make the calls.

> On top of all that, systemd is extremely complicated.

It really isn't. I already got the hang of it in less than 3 days. I actually love how it divides the user sessions/system sessions. To call it malware is what makes the ticket trollish, because it's really, really stretching the meaning of malware, because systemd doesn't even gather _sensitive information_ (credit card information, your bank accounts, etc). The author goes straight to ranting about choices, without ever really explaining why systemd is a malware, basically a bait.


"The whole renumbering was discussed at last years Kernel Summit, and there was a plan to take it up this year too," Torvalds added. "But let's face it - what's the point of being in charge if you can't pick the bike shed color without holding a referendum on it? So I'm just going all alpha-male, and just renumbering it. You'll like it." (citation from Torvalds) this was back with kernel 3.0, but I remember he used the same analogy with systemd. source: http://www.pcmag.com/article2/0,2817,2388926,00.asp
 
the user doesn't have the expertise, the judgement, the skills needed to make the calls.

This......just this.

I happen to think that systemd is a bloated piece of shitware. As I've said previously, it's a nice idea, badly implemented. The code looks like it was created by a 5th grader, puked on by the cat, and then used to wipe someone's arse.

But guess what? Unless I'm willing to dive in and fix it, I really don't have a vote.

That's where the "choice" truly lies. If you don't like what's being done, there's the code; have at it.

And, despite it's not being up to what I would call 'good coding style', nor being implemented in what I think is a proper architectural way, it's really not painful enough for me to be willing to spend my time fixing it.

So, there it is: either fix it, or find someone to fix it. Otherwise, quitcherbitchin'.
 
I do understand that for a lot of people that were used to the other init systems, and familiar with their working, it might be a rather discouraging thought that they might possibly need to adjust to a change they did not want themselves. However, I also find the whole complaint about choice rather childish. When you choose a distro, you are effectively deciding to go with whatever choices the distro developers make regarding their distro.

I'm not going to get into the whole "is systemd needed" or "is systemd doing too much" argument, because I personally do not think I have enough background and experience to make a proper judgment on the matter. I also have not even peeked at the source code, so I have no opinions about that. However, the I came across a topic by one Arch dev regarding Arch Linux's choice to move to systemd some years back, and the points made seem both reasonable and based on technical decisions.

Referenced post for anyone interested.

I also see valid points against systemd posted many places, but I do not see the "disaster" that some opponents claim.
 
The last time I looked at the systemd code was a little over a year ago; I just went and took a gander at some of it, and it seems to have gotten at least somewhat cleaned up. This is good, as it means both that the code is being worked on and that someone actually IS trying to make it maintainable. There's still room for improvement, but that's always the case in any evolving project, so I'm not going to hold that against them.

There were a number of issues when udev first came out, and switching my running systems to udev was a major PITA. Now that the switch is done, I find having udev quite nice. Probably I'll end up in the same boat with systemd; I'm just not ready to jump ship yet. I agree that systemd offers some rather interesting capabilities. In the case of udev, there really didn't seem to be any way to get to what udev offered without ditching the existing system; having worked on OpenRC, I'm not convinced that systemd didn't come about more because of NIH syndrome than a genuine need for something completely new to replace init.
 
I was a bit confused since I looked at the code a few hours early but didn't see anything that screamed "BE GONE FOUL DEMON" or something like that. Granted, I'm no C developer so practices and coding styles are unknown to me to some extent.

Was gonna say that the code is the least of the worries as it's something that improves over time... however the way the structured their project is... well, dunno, I feel it could have been done better. I still wonder why they chose C (besides not having the need to interface/bind C libraries, etc)

> but I do not see the "disaster" that some opponents claim.

Because people don't know any better. They just repeat what others say taking for granted that the second-hand information is indeed correct, plus since it aligns with their view, why not cast doomsday all month long? (imho)

Well, last 2 cents. You folks go have a nice weekend.
 
Ah, ok. I thought you were going to say something like Java. Rust is actually a sensible response. ;)

Problem is basically inertia. If you go to a company and say "I'm a Rust developer" they'll likely look at you cross-eyed. Very few people outside of academia (at least in my experience) even have a working concept of Rust.

You also have to bear in mind that the VAST majority of code for which Rust would be used is already written in C and has to be supported. In most cases, rewriting that code in Rust would be a non-starter. As a consequence, by the time someone gets a chance to do a new project, their Rust skills are, err, rusty, and so they end up saying "I'll just do it in C".
 
The following posts have been moved here, from the IRC thread.

Unfortunately, Mr Thunder has failed to properly move/merge and can't figure out how to correct his error any better than what you see here. He accidentally merged the posts together before moving them, and it can't be undone.

All of the posts are here in their entirety, so nothing has been lost; [except his self-respect, LOLZ.]:confused:
 
Last edited:
cloasters said:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=825394


Gizmo said:
What a glorious CF.

Once again, the SystemD folks are trying to impose their view of 'the way things ought to be' on the rest of us.

A core principle of software development, ESPECIALLY SYSTEM software development, is the idea of 'least change'; the notion that you should NOT impact the way people have come to expect the system to work, UNLESS there is a CLEAR benefit for the MAJORITY.

Even in the case that you do make the change, you should CLEARLY communicate that change.

So far as I have been able to determine, NEITHER of the above criteria have been met.

I highly recommend www.slashdot.org for up to date computerish news. www.the Register.co.uk is valuable too.

I'm a regular El Reg reader. Slashdot is not as good as it used to be, IMO


Not trying to start an argument, I just couldn't help but wanting to challenge some statements on a friendly level. I most definitely do not agree with everything systemd devs does, but I also want add my two cents when I see what I interpret as biased criticism. Here goes...

It's a default value that's been changed in a config file. It's a simple matter of editing a single variable in the config file to let user processes continue running after logging out. The change is also clearly documented in the changelog.

So in this case, I fail to see how this constitutes imposing their view on anyone. You can just switch this "off". Or if you want to stick with the new default, then there are two ways to keep user processes running. You may either enable lingering for a user to have all their processes continue running after logging out (see man loginctl), or you can run the process as a user level systemd service.

Personally, I believe it is much more sane to have user processes exit when you log out as the default behaviour, and instead run it as a service when you want a process to keep running. That may just be me, but I feel like categorizing things like that keeps things a lot more tidy. You also ensure that some background process you forgot about does not keep running unintentionally. But then again, that may just be me.

So in my opinion, I do not see the bad news here. They changed a default value, that's all.

Gizmo said:
It's a default value that's been changed in a config file. It's a simple matter of editing a single variable in the config file to let user processes continue running after logging out. The change is also clearly documented in the changelog.

So in this case, I fail to see how this constitutes imposing their view on anyone.


First, just to be clear, ALL criticism is 'biased'. Otherwise it wouldn't be criticism! I can't have a viewpoint without having a bias to it. My viewpoint that this change was undesired is admittedly biased. However, your viewpoint that it is perfectly fine is ALSO biased.

I think the phrase you are looking is probably 'unwarranted'.

Also, just to be clear, I think systemd is a solution in search of a problem. I believe there are several solutions out there that were already very close to solving the same problems, but existed prior to systemd. Lennart et. al. decided for some reason that those solutions were somehow 'inferior'. I say that not to distract the discussion, but only in fairness so you know up front where I'm coming from.

Now, to your specific critique:
"It's a default value that's been changed in a config file."

Quite correct. It's a DEFAULT value that's been changed in a config file. That means there is a certain level of expectation regarding the behavior of the system, and also regarding what has to be modified when one is changing the behavior of the system.

"It's a simple matter of editing a single variable in the config file"

Again, correct. But WHY? More importantly, what's the ACTUAL impact? There are a lot of sysadmins out there, myself among them, who have built their systems around certain expectations of behavior. We KNOW what to expect, and have built steps and processes to deal with the contingencies, such as the one this change is intended to correct.

"The change is also clearly documented in the changelog"

Factually correct, but also COMPLETELY missing the point.
1) It's one of no less than 32 separate changes mentioned in the change log.
2) It's not specifically called out as "this might unexpectedly break something important", even though it's clear from the changelog that some thought was actually given to the consequences, since they provided the 'lingering' option.

"So in this case, I fail to see how this constitutes imposing their view on anyone"

Really? Umm............WHO made the change? WHO was consulted regarding the change? WHO evaluated the impact of the change?

As far as I can tell, the answer to all of the above is "The systemd developers". Ergo, they imposed their view of How Things Ought To Be on the rest of us.

I've seen arguments to the effect of "well, it's their project, they can do what they want; they don't have to consult anyone else". Arguably true, except that they have worked, conjoled, pleaded and conspired to get systemd used as the default init system in most of the major distros, and the dependencies introduced into the rest of the linux ecosystem by systemd mean that it is rapidly on its way to becoming THE init system whether the rest of us like it or not. That being the case, the rest of the linux community most definitely SHOULD have a say-so in changes like this. This isn't Lennart's garage band any more.

The problem with this specific change it that it alters the behavior of the system in a way that has potentially SIGNIFICANT knock-on effects to how people make use of the system, and does so in a way that is not immediately obvious unless you've been specifically dealing with the issue it is intended to fix. This change is NOT BENIGN. It has the potential to result in the LOSS OF DATA due to processes unexpectedly being killed.

I don't disagree that the setting is useful. I don't even disagree that the setting probably ought to eventually BE the default.

I VEHEMENTLY disagree with the ham-handed Fist-Of-God way in WHICH this change has been implemented.

The fact is that, regardless of whether the things this change breaks are things that should be allowed to occur, they are things that HAVE been allowed to occur for DECADES. We can't just suddenly make a change that causes such significant impact on a whim, however 'architecturally correct' that change may be.

Finally, https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=825394#221 points out an alternative implementation that would achieve the desired goals of cleaning up processes that don't properly exit, WITHOUT killing those long-running processes that uses EXPECT to keep around, and also without requiring users to change how they do things. That's what I call a Good Thing. :)



cloasters said:
Is this wonderful change by fiat something that concerns Mint users? Many nearly automagic updates from Mint have "debian" written in them. Many more cite "Ubuntu." Sorry to be selfish and ask only about Mint.
 
Last edited:
Agreed, it is definitely better to keep this in here instead of the IRC topic.

@Gizmo Reading your response has definitely helped me understand your reasoning, as well as my own. And yes, you are of course right that all opinions are biased. I do understand a lot of your opposition to some of the systemd choices, and even the very existence of it, even if I don't agree. I think one reason why I often fail to fully understand some of the more passionate criticism is the fact that I firmly believe (this really comes to my core life beliefs) that we are not entitled to anything. The only thing in life we are entitled to is whatever we create ourselves. So in my opinion, the systemd devs (or any other devs who create software that is available for free) are entitled to make whatever changes or modifications they want. I believe that everyone who is simply using free software should be thankful to be allowed to stand on the shoulders of the developers, something we get to do for free.

So no, I do not believe that anyone, except the developers and contributors, have any right to decide the future development of this or any other project. They are not imposing their view on everyone, they are creating free software which people are free to use. This may just be a difference in philosophy, but I can't for the life of me see how anyone is forced to use it. Please note that I used the word "right", we do of course have the opportunity to get involved.

This does of course not invalidate your opinions or feelings about the choices made. I just believe that if you strongly disagree about something, then submit a patch. Offer the solution, which is better in your opinion, as a modification or additional option. Standing on the sidelines and being vocal does not help anyone, least of all the one doing it. As for those who are "forced" to use it, you may argue that you have servers/companies/etc. that depend on free software and expect it to work in one way. But using some software in the first place is a choice, and to my knowlege there are a lot of choices available. If someone were to be dependent on something working to their own specifications without deviation, then they should create their own implementation. This might be getting a bit too philosophical, but I just wanted to get across the reasoning for my opinion. Free software is free, users like me are just lucky that it is there.

It is also my belief that it is the users responsibility to familiarize themselves with any changes that come with updates. The changelog is and should be sufficient. Posts about how the new version "kills user processes" only appears as hysterical to me.

I personally do not have an opinion on the topic if systemd is needed or not. I just happen to like and use a distribution that made the choice to use systemd. Your opinion that it is looking for a problem to fix might very well be correct, I do not know. But here's the thing, if someone (anyone) decide that they believe, in their own opinion, that something can be done better, is it not within their right to try and create their "better" solution? It may not be better, that will always depend on who you ask. This is why I don't understand the strong opposition I see to systemd some places. There is nothing wrong with disagreeing, but does that invalidate the developers right to create it?

One thing I do strongly disagree about is that the systemd devs have "worked, conjoled, pleaded and conspired" to get it used by a large number of distributions. As far as I know, distribution developers make this choice independently. This is the only point that I get a bit riled up about, because now you are blaming systemd developers for other people's choice to implement it. If you have examples of it being the case, then I would be happy to change my mind. As it is, I am only familiar with Arch Linux's decision and reasoning to use systemd.

Phew, I don't think I have more to get off my chest on the topic, haha. Sorry if I come across unfriendly somewhere above, that is certainly not my intention. I don't try to invalidate your opinions or your reasoning, I just wanted to offer my view on the matter. And I can't deny that there are a few things things that can get me a little riled up, which gave me the irresistible urge to post my opinion. Hope you have a good Sunday. :)
 
I think you'll find Gizmo agrees, mostly, with what you've said...but he doesn't need my intercession, actually:

I happen to think that systemd is a bloated piece of shitware. As I've said previously, it's a nice idea, badly implemented. The code looks like it was created by a 5th grader, puked on by the cat, and then used to wipe someone's arse.

But guess what? Unless I'm willing to dive in and fix it, I really don't have a vote.

That's where the "choice" truly lies. If you don't like what's being done, there's the code; have at it.

And, despite it's not being up to what I would call 'good coding style', nor being implemented in what I think is a proper architectural way, it's really not painful enough for me to be willing to spend my time fixing it.

So, there it is: either fix it, or find someone to fix it. Otherwise, quitcherbitchin'.
 
Very good points Daerandin. I complete agree with the use of free software. I love the fact that Linux is free and we get to use it for any purpose. I feel lucky and blessed because I don't have to add an extra $100.00 to build a computer and have an operating system.
This is the way it should always have been.
Charge for hardware, provide the basic operating software for free.
Otherwise it would be like selling a digital calculator or watch that doesn't work until you program it.

There are always things to dislike about Linux, but I never criticize how it is made and who makes it. I could suggest something to change, but since I am no programmer, I'm not going to change it myself.

I will never take Linux for-granted and plan to use it indefinitely because of all the resources I can apply it to:
  • Productivity
  • Gaming
  • Design
  • Hardware Troubleshooting
  • Restoring/Refurbing older computers
  • Data Servers/Web Servers
  • Secure Web Browsing
Just to name a few...
 
Daerandin, Booman,

I appreciate your thoughts to the extent that you are correct in your observation regarding the general nature of open source software.

I would, however, point out that at least 3 of the developers (Poettering, Sievers, Hoyer) are RedHat employees. They are PAID to do this stuff. That doesn't make their contributions any less important or impactful, and it is certainly true that RedHat contributes a great deal to the open source community, but this notion of programmers quietly slaving away in the background out of the generosity of their hearts for the greater good of humanity is a bit at odds with reality.

Reality is that they are PAID for their work (in this case) and it is arguable then that there is a certain reasonable expectation on the part of the recipients of their labors. Reality is that Poettering especially spent significant time internally at RedHat lobbying for systemd. Reality is that RedHat is a SIGNIFICANT part of the Linux ecosystem. Reality is that what RedHat does ends up influencing what everyone else does.

But let's leave that aside for the moment (yes, I know I brought it up).

The bottom line here is that systemd, because of its very nature, has a significant impact to the ENTIRE system. It's not like PulseAudio, or even Avahi, where if it fails to come up, you can get into your system and fix it; if systemd croaks, your entire SYSTEM is fscked.

As such, the developers of said system have a responsibility to ensure that the changes they make have minimal impact.

The setting change didn't NEED to be made. The NEED had already been addressed by providing the setting. It's something that SHOULD have been left to the downstream maintainers, or even the system administrators to resolve. While it is absolutely true that a system admin should review the changelog for the patches that are being installed, it is ALSO true that a developer shouldn't be making arbitrary changes to a config file that impacts SO MANY systems. Poettering and Sievers KNOW this; they KNOW how many systems are impacted, just for RedHat alone! That they made this change ANYWAY suggests a level of arrogance and DISRESPECT FOR THE USER that is simply breathtaking, IMO.

The end result of this pattern of behavior could very well be a forking of systemd. Given the pain and angst that is already present around systemd, I do not see that forking it would be a desirable outcome at this point.

Here's what really frustrates me about software development, and developers like Poettering; they have good ideas, but they think that because they have good ideas they can just simply ignore the advice and thoughts of the people who came before. While it is certainly true that as we get older we tend to get less flexible in the way we think about things (it's ALWAYS been done that way, THAT'S why!), there's also the fact that we've already bled on the battlefield and we have the scars to prove it. What this means in a larger context is that, yes, open source software is written (largely) for free, and yes if you don't like it you can always take the source and modify it yourself. This happens frequently because the developer is unresponsive to the needs of the user community. The fact that systemd has gotten this far seems to suggest that despite the reservations of people like me, it addresses what is perceived as a need by the community. It would be a shame to see that thrown away because Lennart and Kay think they can do whatever they want without regard to the consequences for the users.
 
Do you think there is a chance these paid programmers/developers are just obeying their management? Specially with risk of loosing their jobs?

We all know CEO's can make bad decisions and us peons have to just do as we are told or leave and risk being unemployed.
Honestly I never thought about Linux this way... paid programmers and developers creating software/operating systems that are open source. I think its awesome, but wonder how politics can get in the way...

Like I said... I'm just a "nobody" who love Mint. Until they mess up all the functionality Mint provides for me, I'm sticking with it indefinitely.

I've never felt like I have any impact on politics or powerful rich people. So I do what other peons do... help the peons.
 
Do you think there is a chance these paid programmers/developers are just obeying their management? Specially with risk of loosing their jobs?

It's always a possibility, but in this case I don't think so.

Honestly I never thought about Linux this way... paid programmers and developers creating software/operating systems that are open source. I think its awesome, but wonder how politics can get in the way...

Like any other human endeavor, and politics frequently DOES get in the way, though it's not USUALLY the corporate kind.

I've never felt like I have any impact on politics or powerful rich people. So I do what other peons do... help the peons.

Here's the thing so many people just don't seem to get when they say "I don't have any effect/I don't count/My vote doesn't count": when you are acting alone, your actions generally don't DIRECTLY have an impact, but INDIRECTLY, they can; they can cause OTHER people to act as well, and when PEOPLE act, the results can be wondrous.

Short story to illustrate my point (and in your case, I know I'm preaching to the choir):

I came up to an intersection; the car in front of me was stalled, the person inside obviously having a problem. Because it was a busy intersection I had to wait a full cycle of the light (about a minute) to get through the light. I found a place to park my car and walked back to the lady in the stalled vehicle. By this time the light had cycled about 2 more times, and other traffic had come through as well. In addition, the lady had obviously been stalled for some time, so safe to say by the time I arrived she had been sitting there for something like 10 minutes.

I talked with her briefly, learned that she had simply run out of gas, so figured the first order of business was to get her out of the middle of the road. I got around behind her car and started pushing.

Within 60 SECONDS of me getting behind the car to push, I had 3 other people who had stopped and were helping to push.

We got a gas can, put some gas in the car, and got her on her way. Only took a few minutes, but the point is, SOMEONE had to take action, even alone.

It's not that people don't care; it's not that people don't want to help. In most cases, they either don't know HOW, or they are AFRAID. All they need in most cases is someone to show them the way and allay the fear.

BE that someone. We all have it in us. We just have to DO it.
 
Back
Top