this post was submitted on 27 Jul 2026
757 points (97.5% liked)
linuxmemes
32239 readers
653 users here now
Hint: :q!
Sister communities:
Community rules (click to expand)
1. Follow the site-wide rules
- Instance-wide TOS: https://legal.lemmy.world/tos/
- Lemmy code of conduct: https://join-lemmy.org/docs/code_of_conduct.html
2. Be civil
- Understand the difference between a joke and an insult.
- Do not harrass or attack users for any reason. This includes using blanket terms, like "every user of thing".
- Don't get baited into back-and-forth insults. We are not animals.
- Leave remarks of "peasantry" to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
- Bigotry of any kind will not be tolerated. This is an LGBTQ+-friendly community -- if that is a problem for you, you should leave.
3. Post Linux-related content
- Including Unix and BSD.
- Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of
sudoin Windows. - No porn, no politics, no trolling or ragebaiting.
- Don't come looking for advice, this is not the right community.
4. No recent reposts
- Everybody uses Arch btw, can't quit Vim, <loves / tolerates / hates> systemd, and wants to interject for a moment. You can stop now.
5. π¬π§ Language/ΡΠ·ΡΠΊ/Sprache
- This is primarily an English-speaking community. π¬π§π¦πΊπΊπΈ
- Comments written in other languages are allowed.
- The substance of a post should be comprehensible for people who only speak English.
- Titles and post bodies written in other languages will be allowed, but only as long as the above rule is observed.
6. (NEW!) Regarding public figures
We all have our opinions, and certain public figures can be divisive. Keep in mind that this is a community for memes and light-hearted fun, not for airing grievances or leveling accusations. - Keep discussions polite and free of disparagement.
- We are never in possession of all of the facts. Defamatory comments will not be tolerated.
- Discussions that get too heated will be locked and offending comments removed. Β
Please report posts and comments that break these rules!
Important: never execute code or follow advice that you don't understand or can't verify, especially here. The word of the day is credibility. This is a meme community -- even the most helpful comments might just be shitposts that can damage your system. Be aware, be smart, don't remove France.
founded 3 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
There are many legitimate complaints. Bundling a bunch of services into a single binary goes completely against Unix philosophy. Systemd changing from text to binary logs is my pet peeve.
Copying how Windows does things isn't necessarily the best.
You know it's not a single binary, right ? Systemd is a bunch of different, mostly single usage, mostly optional, binaries. As far as Unix philosophy goes, Systemd is definitely following the principles, which is not the case for the Kernel for instance.
As for the binary logs, I used to hate it, but then, not having to manually parse logs for filtering is really nice.
I do have my issues with Systemd, but it not following the Unix philosophy is not one of them.
It's not people disliking it that makes no sense to me; everyone has their opinions.
I just can't imagine having the level of anger displayed by some of the most vocal of the anti-systemd crowd.
If your favorite thing is being ruined and you can't stop it, I can understand frustration being displayed as anger.
It's the same when Windows users get angry at things like OneDrive. It's forced on them and they don't want to have to work around removing it like people having to work around how Gnome is integrated into systemd.
That's the joy of open source though: you can stop it. You are free to use another init system, fork projects, etc. With Windows, you can't do any of that. Since it's closed source, workarounds that may be temporary are all you can do.
Not really. Unless you are prepared to devote your life to changing the source code to what you want, you have to accept it. And because you forked you are no longer downstream and will have to spend the rest of your life keeping up with patches.
It's not much different than Windows. You could write a OneDrive uninstaller but you will have to spend the rest of your life with patches every time MS updates and breaks your uninstaller.
I mean we are literally on a couple of open source solutions communicating using an open protocol probably using some sort of open OS.
https://nosystemd.org/ is a thing. I dont have particularly strong opinions on the matter.
You don't need to do it alone. In fact, people can come by, fix some things, then go about life. Or donate money instead of resources. If you have used lemmy/piefed/mastodon/peertube in the past, theres a tiny bit of my code in there that makes things just a tiny bit better. Thats not a brag or anything, its just that multiple people can contribute.
But I hear the frustrations. There is a certain mindset you have to have, hopeful you and others can build something....or with enough hatred to build out of spite. Sometimes thats hard to do with everything else in life. Sometimes the best thing to do is to accept and move on. Or go looking for new solutions without maintenance.
If you like a distro and they switch to systemd, there's not a lot you can do if you aren't up to forking the whole distro. I feel like too many people in open source forget that most people have lives outside of Linux.
I was annoyed with binary logs until I found cases where compressing logs was literally 10x or more improvement, like if you ran into a bug that just repeatedly spit the same log.
And I know logrotate compresses text logs too but if you're going to compress logs into tar.gz, might as well just make it binary by default and have a nice interface (journald) on top
From The Unix Hater's Handbook
(I like Linux, but it's not all sunshine and rainbows)
That head/tail thing is kind of a goofy argument. For one thing they aren't duals;
tailis naturally more complex because the end of a file often changes and the application can optionally keep showing you the new output. Also, the fact that they're separate applications in the first place is arguably better than the a one-application approach, which would always require a command line switch to select between outputting the start or end of a file. And finally, while I guess this could vary between implementations ofheadandtail, mine has identical switches for all the common options.I initially agreed with your take there but I actually think they're a great argument for their point.
headandtailare the exact same abstraction. Their implementations will be quite different, but they both serve "provided this data, give me these lines". Consider instead that these are simply operations on arrays and actually they map perfectly to Python slices:data[:10]anddata[-10:]. This abstraction mapping also shows that, imo, the tool should providedata[n:m]and it would still be entirely consistent with the Unix philosophy. In fact, this tool exists in the Unix toolkit:sed -n n,mp. Three tools then are currently required for the simple concept of "slice lines". I also think it's a bit of a mess. You could replaceheadwithsedfairly easily:sed -n '1,10p'but nottail(it is possible, but quite slow and very opaque)As an aside I actually found this quite frustrating myself because I don't like reaching for
sedin then:mcase (I always forget and end up pipingheadtotail) and ended up writing my own tool for essentially this style of slicing input, also replacing probably my least favorite use of my least favorite Unix tool,dd, to slice arbitrary byte sequences. The tool doesn't feel overloaded and I use it quite often.(I'm sure many people have written this same tool. There is probably a widely known open source option that I've just never come across)
They could have been two commands that call a single parent command with different options. For example, imagine if
cathad an option-Nto restrict the number of lines that was printed, and also an option-tto start from the end.headwould just proxy tocat -Nand tail would proxy tocat -N -t. Combining the three into a single implementation reduces total LoC and opportunity for bugs. Also reduces total maintenance burden.I believe
busyboxis like this actually - a ton of Unix commands in a single package. It's used by Alpine Linux, a tiny and performance linux distro commonly used by docker containers.The head and tail programs also do completely different things. What differences in options do they have?
Really completely different? Do they not print first / last lines of text from a file into the terminal?
"This program sucks because it doesn't come with the world's most confusing GUI and doesn't do a trillion things"
If you ask this person what "technically inferior" actually means you'd probably get a different answer every day.
But that's not what either of the guys complained about
Yea what a hot take that was, critiquing words that were never there and then calling the person an idiot.
GUI certainly has its place.
Yes and so do simple CLI tools that work. Head and Tail are about the worst examples because they work very well and also do very different things.
There's also a few cases of feature and scope creep, including the infamous
systemd-resolved.Systemd, your job is to launch services, manage logs, and do timers and relaunches on a service crash. DNS is out of scope, leave that to existing services.
resolved is entirely optional and disabled by default, I use it on case of non-mobile devices but leave it on laptops etc.
DNS resolution isn't something exotic, it makes sense for systemd to implement it in a simple optional daemon
You've misunderstood something.
systemd-resolved is one of the services that uses systemd's service management system
You're saying "don't use this service management system to manage your services"
I may have written that in a confusing way. I'm saying systemd's job is service management. Systemd-resolved is an unnecessary bit of scope creep.
systemd-resolved is a service. It's not scope-creep. It's its own thing built in the systemd framework.
I agree, though my biggest headache has been with systemd handling mounts. You have to modify a ton of units to add
AfterandRequiredto make sure the NFS shares you have in fstab get mounted before starting services that depend on them. And then if the package maintainer updates their unit files, all your changes disappear!Such a huge headache compared to the classic init.d that mounted everything very early -- with just the occasional "boot delayed a couple seconds because your share was offline" or such.
You're not supposed to modify shipped unit files, that's why systemd supports drop in snippets
A single binary? What?
Fast searchable compressed files is a fantastic idea.
The other day on a thread here about "people who use other init systems, why?" and i wrote about my experience with systemd and git downvoted for mysterious reasons. Other people that did the same as me also got their downvote sixpacks. And now they want to make it seem like it's just the people that hate systemd the annoying ones...
Lemmy is just highly opinionated, poor social skills, and often closed minded.
There are too many people who use downvote to disagree with cogent and well written points.
I try to only downvote if something is obviously trolling, in bad taste, or wildly stupid.
Downvoting is a legitimate tool of expressing your disagreement.
Hey, just wanted to let you know that I downvoted your comment. Mainly because I think it's funny when people can't come up with compelling arguments and complain about being downvoted instead, but also because I'm part of the conspiracy making sure that people vocally complaining about systemd seem really annoying and wrong.
be nice to him, he's baffled
What systemd binary is the worst offender, in your opinion?
Logind. Right after udev.
Not sure whatβs annoying about logind, but udev was introduced eight years before systemd was a thing.