5 ms·
> Code which, for most people, does work. That doesn't mean other stuff couldn't have been better. Here's the problem the systemd argument: it's motte-and-bai
by big_chungus 7y ago
> Code which, for most people, does work.
That doesn't mean other stuff couldn't have been better. Here's the problem the systemd argument: it's motte-and-bailey. Systemd is a huge collection of tools, not just an init system: it's got resolved, journald, logind, tmpfiles, bootctl, networkd, and more. However, whenever it's criticized, proponents fall back on "but it's a great init system!" I agree that the unit files are better than rc scripts in many ways. However, there's so much other baggage that comes with systemd. Many people who use systemd in serious production systems have to replace many of these parts: journald -> rsyslogd, tmpfiles -> scripts, bootctl -> grub, networkd -> networkmangaer (or other), systemd-timesyncd -> chrony. Systemd does the "PID 1" stuff fine, but isn't so good at the other stuff. The project has gotten to big for its britches, so to speak: there are ~70 total systemd binaries.
They also didn't do a great job of modularity, and don't use dbus like they should (dbus isn't built to be used with an init system; use a socket already). Rather, they have every thing depending on another. Suddenly, everything must re-tool to work with systemd or stop working. It basically unilaterally declared itself the standard.
Other stuff:
* I hate binary logs
* Lennart, Lennart, give me back my cgroups
* Stop stealing my cgroups to track processes
* Security is not great, nor is code quality. This comes less from being inherently flawed and more from *sheer volume of code*, which is why you don't put that much code in PID 1. More attack surface, more potential bugs.
Overall, init ought not to be it's own problem of this scope. Just make a stinkin' init.
Oh, and Lennart Poettering is also a jerk. Not an "I'm brash" kind of jerk (like Linus can be), but an "I'm an insecure person; don't critique my code" kind of way. Also, he thinks he's smarter than every one.
- Avamander 7y ago> Oh, and Lennart Poettering is also a jerk. Not an "I'm brash" kind of jerk (like Linus can be), but an "I'm an insecure person; don't critique my code" kind of way. Also, he thinks he's smarter than every one. I think it's largely due to how the community has treated him. It's frankly disgusting.
- liability 7y agoHe should take a lead from Drew DeVault. Drew frequently says things people (including myself) disagree with and is working on software a lot of people (including myself) are very skeptical of. Yet if you try to interact with him (as I have), he's a totally reasonable and pleasant dude.
- Avamander 7y agoNot everyone has a thick enough skin to deal with situations the best way. The community should take lead as well.
- liability 7y agoThe "community" in this case is in fact not a community at all, merely a loose set of people who's only common characteristic is having an opinion on systemd. A reasonable user of SystemD, like myself, has no power to coerce a complete stranger who sees fit to email Lennart a death threat. The "community" cannot stop this. Either Lennart should work on how he handles such criticism/abuse, or Red Hat/IBM should hire a communications professional to insulate him from the outside world. Or he can keep the course and suffer the inevitable... It's not right that he receives death threats, but the response to that unfortunate state of affairs needs to be realistic.
- Avamander 7y agoI'm not talking strictly about death threats, calling him random slurs already is too much and has happened on HN, this "loose set of people" should not, and it'd already probably change his opinion about different communities. Lennart should absolutely sometimes choose his words, like Linus, but I don't think we should be excusing insults with saying "it's unenforceable" when most places haven't really tried to remain civil due to personal beliefs.
- liability 7y agoWhat do you expect "the community" to do, downvote anybody who speaks harshly about him? That won't stop it, and even if it did it still wouldn't stop 4channers with anime avatars on github from trolling him constantly. There is no community solution to Lennart getting his feelings hurt. That's not an excuse, it's a cold truth.
- Accacin 7y ago> Also, he thinks he's smarter than every one. Wow, are we insulting people like we're twelve now? Again, I have to ask. Why are you not writing a replacement for systemd? Again, another person in this thread seems to think they know everything yet don't seem to have any code to show for it.
- netsharc 7y agoPlease be advised, I've downvoted your comments asking "if you know better, where's your code?", because I think that line of argument is absurd and has no legitimacy. To use some analogy, imagine I, a non-cook, have been invited to a restaurant by friends. After the meal I say to the waiter "this food is way too salty!", and he replies, "Oh yeah, then go in the kitchen and replace our cook!". What, you think we all don't have dayjobs and can just devote our time to... 1) learn to code C/C++ 2) learn about the OS 3) architect, code and debug a replacement ? Please don't be an absolutist and think "everyone can contribute to open source!", in the real world, time is finite.
- Accacin 7y agoNo, your analogy isn't correct though. You're broadcasting your opinion on an online message board, not just a waiter. Plus, you're paying for the food. It's nothing alike. The parent comment is basically implying that the cook has cooked the dish completely wrong and that he (a non-cook) could do a better job of cooking that dish. Plus, isn't this the great thing about open source? If someone doesn't like systemd, they can write they're own. Of course, not one does.. > What, you think we all don't have dayjobs and can just devote our time to... I'm only suggesting this to the people who comment online complaining how the most used implementation isn't up to their personal standards and that they know how it could be done better. It's easy to complain and bitch online, that's the problem. Everyone seems to know the solution but no one seems to do it. > Please be advised, I've downvoted your comments asking "if you know better, where's your code?" Please don't comment about the voting on comments. It never does any good, and it makes boring reading. I upvoted you because you downvoted me.
- 7y ago
- bonzini 7y agoWait, people are replacing so many components but systemd didn't do a great job at modularity?
- cestith 7y agoI think at this level the complaint (which I share) of all the things systemd tries to do falls more on the distros for handing so many things to systemd by default than on the systemd team giving us options for ways to do so many things. I like unit files. I like having an optional watchdog for any given daemon integrated with my init. I don't particularly mind hostnamectl. I dislike resolverd but I see how some people could like it. I like having both signed binary logs and plaintext logs. I wish the distros just made it simpler to pick and choose which systemd components we use at installation time. It would be better IMO than having to manually undo lots of integrations of parts of systemd I don't want and replacing them. So far the distro solution has seemed to be whole hog systemd or baby and bathwater, depending on the distro. Yes, we can set up our own base image and then maintain that, but should it be necessary?
- bonzini 7y ago> I wish the distros just made it simpler to pick and choose which systemd components we use at installation time I think they do a fine job. The only mandatory parts in most distros are pid1, udev, journald, logins and machined. I have two Raspberry Pis running Debian, one of them uses connman, the other uses systemd-networkd. My desktops use NetworkManager + firewalld, and so on.