you are viewing a single comment's thread
view the rest of the comments
[–] 80 points 8 hours ago (6 children)

Of all the people who have incredibly strong opinions about not-so-incredibly important things, the virulently anti-systemd crowd are among the ones that baffle me the most.

  • source
  • hideshow 12 child comments
  • [–] 41 points 8 hours ago* (9 children)

    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.

  • source
  • parent
  • hideshow 18 child comments
  • 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

  • source
  • parent
  • [–] 14 points 6 hours ago

    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.

  • source
  • parent
  • [–] 30 points 7 hours ago (1 child)

    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.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 14 points 7 hours ago (2 children)

    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.

  • source
  • parent
  • hideshow 4 child comments
  • [–] 1 point 6 hours ago

    your favorite thing is being ruined and you can't stop it,

    Hardly a 'favourite thing'; it's like making a water slide out of a river : Wantonly wrecking something simple, effective and usable for this mishmash isn't ruining something sacred as much as it is destroying something for no reason to dramatically create something lesser the world didn't need. Except with more hype, payola, ageism, strong-arm adoption and cult worship.

  • source
  • parent
  • [–] 1 point 7 hours ago (3 children)

    If your favorite thing is being ruined and you can't stop it, I can understand frustration being displayed as anger.

    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.

  • source
  • parent
  • hideshow 6 child comments
  • [–] 14 points 7 hours ago (1 child)

    That's the joy of open source though: you can stop it.

    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.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 3 points 6 hours ago

    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.

  • source
  • parent
  • [–] 3 points 6 hours ago

    That's the joy of open source though: you can stop it. You are free to use another init system, fork projects

    That and a big company looking to manufacture a perceived advantage by aggreasively pushing their shit into the mainstream - good fit to be taken over by IBM - who can bankroll the slapdash dev and bully ISVs, and you're set.

  • source
  • parent
  • [–] 15 points 7 hours ago (3 children)

    Richard P. Gabriel, in his essay β€œThe Rise of Worse-is-Better,” expounds on this theme (see Appendix A). His thesis is that the Unix design philosophy requires that all design decisions err on the side of implementation simplicity, and not on the side of correctness, consistency, or completeness. He calls this the β€œWorse Is Better” philosophy and shows how it yields programs that are technically inferior to programs designed where correctness and consistency are paramount, but that are evolutionarily superior because they port more easily. Just like a virus.

    The highest achievement of the Unix-aesthetic is to have a command that does precisely one function, and does it well (...) This philosophy, in the hands of amateurs, leads to inexplicably mind-numbing botches like the existence of two programs, β€œhead” and β€œtail,” which print the first part or the last part of a file, depending. Even though their operations are duals of one another, β€œhead” and β€œtail” are different programs, written by different authors, and take different options!

    From The Unix Hater's Handbook

    (I like Linux, but it's not all sunshine and rainbows)

  • source
  • parent
  • hideshow 6 child comments
  • [–] 6 points 5 hours ago (1 child)

    That head/tail thing is kind of a goofy argument. For one thing they aren't duals; tail is 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 of head and tail, mine has identical switches for all the common options.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 2 points 1 hour ago

    They could have been two commands that call a single parent command with different options. For example, imagine if cat had an option -N to restrict the number of lines that was printed, and also an option -t to start from the end. head would just proxy to cat -N and tail would proxy to cat -N -t. Combining the three into a single implementation reduces total LoC and opportunity for bugs. Also reduces total maintenance burden.

    I believe busybox is 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.

  • source
  • parent
  • [–] 16 points 7 hours ago

    There's also a few cases of feature and scope creep, including the infamous systemd-resolved.
    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.

  • source
  • parent
  • [–] 10 points 7 hours ago (3 children)

    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...

  • source
  • parent
  • hideshow 6 child comments
  • [–] 0 points 2 hours ago

    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.

  • source
  • parent
  • [–] 4 points 7 hours ago (2 children)

    What systemd binary is the worst offender, in your opinion?

  • source
  • parent
  • hideshow 4 child comments
  • [–] 1 point 7 hours ago (2 children)

    It's not the binary. It's that the logs it writes are in binary so can't be read without a program.

  • source
  • parent
  • hideshow 4 child comments
  • [–] 1 point 58 minutes ago

    Even systems that use text logs, compress logs using logrotate and you have to uncompress before you can read them. Also since the compressed tar.gz logs are a bunch of separate files, if you don't have an exact date of what you're looking for, you have to uncompress and search through all of them. I much prefer just using journalctl

  • source
  • parent
  • [–] 0 points 5 hours ago (1 child)

    I don't particularly hate systemd, but when they said they are considering incorporating age verification stuff I switched to void.

  • source
  • parent
  • hideshow 2 child comments
  • [–] -4 points 8 hours ago* (1 child)

    It's popular to hate systemd. Just as it's popular to hate PHP. It makes people feel like they're part of an "elite group" that are above these things. Most of the time, people can't even explain why they hate it. Just ask someone why he hates systemd and in 95% of all cases, you won't get a straight answer, except, of course: "It ViOlAtEs LiNuX pHiLoSoPhY" yes timmy and how does that affect you while browsing and playing games, because that's all you do on your PC.

    I'm not saying that there are no reasons to dislike systemd for some people. There might be a handful of them who genuinely dislike it and have justified reasons for it. However, an overwhelming majority of the people that hate it don't even have a fucking clue what it is, let alone why it's dislikeable, they just read on twitter or reddit that it sucks. And that's it. It's a bit like a big streamer saying: "Game XYZ is shit" and a majority of that streamers following will think its shit.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 6 points 6 hours ago

    As someone who designs systems as part of his job, "it violates Linux philosophy" is a perfectly valid reason to hate something as critical and low level as an init system.

    I think "hate" is a strong word, mind, but following consistent design patterns and constraining scope matters. The problem is that it's one of those things that doesn't tend to matter until shit hits the fan.

    The scope creep exponentially raises the efforts needed to properly test, troubleshoot, secure, and just generally work with the project code. The unique design creates rough edges for integrations with other pre-existing systems and tools, while also raising the effort needed for troubleshooting when something goes wrong.

    There's also the whole "Chesterton's Fence" aspect to a lot of it, where the project runner's overall attitude has been dismissive of existing conventions and separation of functionality.

    There's a lot of perfectly valid reasons to dislike it. That said, I think full on hate is extreme for an aspect of the overall Linux "system" and "user experience" that most users never interact with. Like having an opinion on the order your BIOS handles things in.

  • source
  • parent