News for hackers. Stuff that matters.
Re:Systemd 250 Released by starklevnertz on Friday December 24, 2021 @01:36AM (#29670950)
I just want to pre-empt the inevitable bitching about systemd to say I think it’s awesome and incredibly useful and consistent and powerful and I’d take it any day over the mess of stuff that filled systemd’s duties before.

Sure it isn’t perfect, but what software is?

And let me ask a question, if systemd is crap, why does every major distro use it? If it was truly crap then surely the distro builders would use the alternative?

Re:Systemd 250 Released by lmm on Friday December 24, 2021 @01:54AM (#29671060)
> And let me ask a question, if systemd is crap, why does every major distro use it? If it was truly crap then surely the distro builders would use the alternative?

Because it's tightly coupled to everything (particularly to the few profitable parts of linux - most open-source is maintained on a shoestring, so it's pretty cheap to take control over development of even vital low-level infrastructure). This is how systemd bypassed the bikeshedding problem of there being half a dozen replacement inits but no clear consensus, with the result that everything relied on a lowest common denominator. But it's toxic for the long term, because it undermines the whole point of using linux if you can't swap out pieces or maintain your own forks of individual components.

Re:Systemd 250 Released by 3np on Friday December 24, 2021 @02:36AM (#29671283)
> But it's toxic for the long term, because it undermines the whole point of using linux if you can't swap out pieces or maintain your own forks of individual components.

You can, though? And many distros do by default.

Don’t like systemd-boot? You can replace it with grub.

Don’t like systemd-networkd? You can replace it with networkctl. Want to use it but prefer to handle Wireguard tunnels with wg-quick? Fine!

Don’t like systemd-resolved? You can replace it with dnsmasq.

Don’t like systemd-cryptsetup? systemd won’t care if some other system takes care of your LUKS partitions.

Etc, etc.

Re:Systemd 250 Released by fsflover on Friday December 24, 2021 @04:29AM (#29672001)
Re:Systemd 250 Released by 3np on Friday December 24, 2021 @04:43AM (#29672092)
That’s a short list of other packages (none of which I think are part of a base Linux install, correct me if I’m wrong) that have decided to depend on systemd?
Re:Systemd 250 Released by IshKebab on Friday December 24, 2021 @08:52AM (#29673558)
Where's the "hard dependency on libc" list? Or "hard dependency on Bash"?

It's ridiculous to imagine that no program is allowed to depend on SystemD.

Re:Systemd 250 Released by lmm on Friday December 24, 2021 @09:46AM (#29673985)
> Where's the "hard dependency on libc" list?

There are multiple libc implementations. libc independence is important and valuable. You'll probably find a "hard dependency on glibc" list in the documentation of e.g. Alpine.

> Or "hard dependency on Bash"?

Ubuntu will have a list from when they switched to ash as /bin/sh. Again, multiple implementations and independence are important, and something the linux community generally cares about.

Re:Systemd 250 Released by IshKebab on Saturday December 25, 2021 @05:49PM (#29687765)
> There are multiple libc implementations

You could make another SystemD implementation if you really wanted. The point is that there are plenty of APIs - even ones with a single implementation - that nobody bats an eye about programs having a "hard dependency" on, but suddenly for SystemD it's apparently a big issue?

It's bullshit technical excuses to hide the real reasons people object to SystemD, which are more embarrassing.

Re:Systemd 250 Released by lmm on Sunday December 26, 2021 @07:15AM (#29691795)
> You could make another SystemD implementation if you really wanted.

No you can't, because they don't offer stable interfaces as a matter of deliberate policy.

Re:Systemd 250 Released by IshKebab on Sunday December 26, 2021 @01:02PM (#29694698)
That seems to be completely untrue: https://systemd.io/PORTABILITY_AND_STABILITY/
Re:Systemd 250 Released by lmm on Sunday December 26, 2021 @08:35PM (#29698120)
That's changed then, now that the competition has been killed off; at the time certainly logind and the cgroup integration had no stable interface.
Re:Systemd 250 Released by starklevnertz on Friday December 24, 2021 @05:35AM (#29672425)
But no systemd distro is saying “we want to dump systemd but we can’t because it’s too tightly Coupled” are they?

Or maybe the maintainers are I don’t know do you have links to show this is the case?

Systemd is used by all major linux flavors because it’s the best solution for the problems it solves.

The distro maintainers are too smart to be stuck with systemd against their will.

And it’s linux …. make a better solution, if it’s truly better it’ll be used.

Re:Systemd 250 Released by p_l on Friday December 24, 2021 @06:05AM (#29672590)
That's a bit of revisionist history.

Systemd was minority pretty much till GNOME 3.8 introduced super-hard dependencies on it through an interface that was supposedly documented (Ubuntu sunk a bunch of money trying to keep alternative implementation running).

For many a distro, it became a question - "do we include GNOME, or do we drop it?" and that was impetus to move to systemd

Re:Systemd 250 Released by esarbe on Friday December 24, 2021 @03:39PM (#29677515)
This is simply not true[0]. To quote:

> This is really unfortunate, but GNOME 3.8 does not require logind. I discussed the non-dependency of logind+systemd on #gentoo-desktop and why they thought different. Apparently GDM 3.8 assumes that an init system will also clean up any processes it started. This is what systemd does, but OpenRC didn’t support that.

Systemd was adopted because it was (and still is) simply superior in many aspects to previously available process managers, because application developers had it up to here to maintain n different init scripts for n different distributions and distribution packagers didn't want to have to write custom init scripts for each application anymore.

As an example, check out the discussion around the adoption of systemd in Debian[1].

[0] https://blogs.gnome.org/ovitters/2013/09/25/gnome-and-logind...

[1] https://www.debian.org/vote/2019/vote_002

Re:Systemd 250 Released by p_l on Saturday December 25, 2021 @08:42PM (#29688901)
It might be because people did report on in trying to run GNOME 3.8 without logind, and reported massive faults?

And no, not in "GDM doesn't clean up after itself", which was given as explanation for the infamous "systemd now defaults to destroying everything in a session on logout" change few years later. (Which GDM could require anyway earlier, but apparently somehow it wasn't enough)

There is a lot of good ideas that went into systemd though, and I'd agree that a lot of anger is in how badly they are implemented (the only reason I do not complain more about systemctl is because upstart managed to be even worse). In my copious free time, I've been tinkering at alternative, but even if I disagree at the format of systemd service files, it includes a parser for them.

Re:Systemd 250 Released by esarbe on Sunday December 26, 2021 @05:26PM (#29696965)
> It might be because people did report on in trying to run GNOME 3.8 without logind, and reported massive faults?

If you by 'it' mean the fact that the distributions switched to systemd, I would be declined to discount the speculation that 'it was because people did report in trying to run GNOME 3.8 without logind [...]'. Do you honestly think that Fedora, Arch or any of the other distributions would not try to evaluate other strategies of getting GNOME 3.8 to run? Replacing the process manager and PID0 is not an endeavor chosen lightly - it is a massive undertaking that every distribution would have weight very carefully. "Oh, there are people having trouble running GNOME 3.8 without systemd present" seems not to be enough reason to go through all the pain of switching to systemd.

It's rather that systemd offered something that systemd offered something that the preceding mess of shell scripts and conventions didn't offer; consistency and reliability, as much as you might doubt that. Have a look at the Debian general resolution with regards to systemd and the provided arguments by the proponents[0].

> I've been tinkering at alternative

I would be very glad if your alternative implementation were even modestly successful. And I'd be thoroughly thankful if it managed to replace systemd.

Not because I think systemd is badly implemented (I've yet to see any actual evidence in that regard from any detractor) but because systemd needs competition and I would prefer to see some well established and stable protocols between the individual parts of systemd. That will only happen if said protocols get also provided by alternative implementations.

With regards to you re-using the systemd configuration format; that's probably a smart move. Systemd is at this point a well established fact and anyone trying to best it at its game will have to make is as easy to migrate as possible. Hurdles like a new file format might well be too much for an indifferent user.

[0] https://www.debian.org/vote/2019/vote_002

Re:Systemd 250 Released by p_l on Monday December 27, 2021 @08:47AM (#29702469)
Fedora and Arch are literally the early adopters of systemd, long before GNOME 3.8. GNOME 3.8 made hard dependencies on logind because it was default in Fedora - Arch similarly was working full tilt on implementing all proposed things from systemd long before GNOME 3.8 release (I know, I had lost my only on-hand system due to one of those changes applying badly and making it unbootable)

As for supporting configuration format - it's an obvious move, though more as "import" rather than only source of truth (different internal data models), and the format... is not exactly good (mostly due to lack of sane defaults that start to hit you once you wander beyond functionality that can be summarised as "SysV initd plus dependencies")

Re:Systemd 250 Released by esarbe on Tuesday December 28, 2021 @07:14AM (#29713008)
> GNOME 3.8 made hard dependencies on logind because it was default in Fedora

Looks like we're still in disagreement about this. As far as I can tell, there was never a 'hard' dependency of GNOME 3.8 on logind; logind was an optional dependency[0].

> beyond functionality that can be summarised as "SysV initd plus dependencies"

I would attribute that to the lack of similar "service manager" functionality in other "boot managers". That comes down to the hesitancy of these "boot managers" to embrace the role of "service managers". There's tons of functionality that the systemd project (not necessarily the pid0 binary) introduced to make services run consistently and reliably. They paved the way in that regard and we're still waiting for contenders to catch up.

[0] https://mail.gnome.org/archives/desktop-devel-list/2013-Marc...

Re:Systemd 250 Released by kaba0 on Friday December 24, 2021 @08:40AM (#29673460)
Why was it chosen by debian multiple times with the most democratic process out there?
Re:Systemd 250 Released by lmm on Friday December 24, 2021 @09:40AM (#29673932)
It was forced through by breaking the rules of the process and overruling the committee that should have made that decision. Many old-school Debian maintainers quit in disgust at that point, so if subsequent votes have been in systemd's favour then that's probably why.
Re:Systemd 250 Released by kaba0 on Friday December 24, 2021 @11:18AM (#29674792)
Some source would be interesting, because it is just blind words otherwise. Also, Arch and several other distros made the choice independently. I am fairly sure Red Hat is not some evil entity kidnapping the families of maintainers making them switch to systemd..
Re:Systemd 250 Released by esarbe on Friday December 24, 2021 @03:41PM (#29677527)
No rules were broken.[0]

[0] https://www.debian.org/vote/2019/vote_002

Re:Systemd 250 Released by Mikhail_K on Friday December 24, 2021 @02:06AM (#29671111)
> And let me ask a question, if systemd is crap, why does every major distro use it?

If Big Mac is a crappy food, why billions are served with it?

Re:Systemd 250 Released by pverghese on Friday December 24, 2021 @03:00AM (#29671422)
Or maybe you should questions yourself as to why you are so angry about what others like
Re:Systemd 250 Released by Mikhail_K on Friday December 24, 2021 @03:35AM (#29671610)
If others enjoy eating garbage, does that obligate me to like it, too?
Re:Systemd 250 Released by diffeomorphism on Friday December 24, 2021 @05:44AM (#29672470)
Yes, pretty much so. If there is a dish everybody likes but you say it is "garbage" then you are just wrong and an arrogant snob.
Re:Systemd 250 Released by OJFord on Friday December 24, 2021 @05:56AM (#29672539)
A 'Big Mac' is objectively not nutritious, and cheap meat though.

I like systemd.

Re:Systemd 250 Released by diffeomorphism on Friday December 24, 2021 @06:16AM (#29672650)
Then say that instead of "garbage".
Re:Systemd 250 Released by toast0 on Friday December 24, 2021 @02:28AM (#29671245)
> And let me ask a question, if systemd is crap, why does every major distro use it? If it was truly crap then surely the distro builders would use the alternative?

If Windows is crap, why does every system builder ship the majority of their machines with it? Why bother with a different desktop than Windows? Just because it's popular doesn't mean it's good.

Building a distro is a lot of work already, and avoiding systemd takes a lot of effort these days. Plus, there seems to be a lot of people who like systemd, so if you want curmudgeons like me (well, probably not me, I'm going to FreeBSD instead; I understand there may be some sort of fancy rc replacement in the works there, but I presume it won't break the things I expect to work, and it won't subsume half of base) and people who like systemd, then you've got to do twice the work, and everybody will ask you why you're pushing against the tide.

Re:Systemd 250 Released by esarbe on Friday December 24, 2021 @03:42PM (#29677542)
> If Windows is crap, why does every system builder ship the majority of their machines with it?

Because they get incentivized by Microsoft to do so. This is a well document part of their often illegal business practices.

Re:Systemd 250 Released by IshKebab on Friday December 24, 2021 @08:52AM (#29673566)
Windows isn't crap though.
Re:Systemd 250 Released by Maursault on Friday December 24, 2021 @10:56AM (#29674593)
> And let me ask a question, if systemd is crap, why does every major distro use it?

Won't find systemd in Gentoo, Slackware or Alpine. Also it is a little interesting, just a little, that whatever imperative systemd has to exist is entirely absent in every SysV and BSD, and yet variants of SysV and BSD and thier hybrids still exist, somehow, no worse for the wear.