• BaroqueInMind@lemmy.one
    link
    fedilink
    arrow-up
    3
    ·
    2 months ago

    Someone please convince me why I should hate systemd because I still don’t understand why all the hate exists.

    • intensely_human@lemm.ee
      cake
      link
      fedilink
      arrow-up
      1
      ·
      2 months ago

      People don’t like it because it’s declarative. It felt cool to be able to just put bash files into certain directories to have them executed on startup. That was elegant, in the sense of “everything’s a file”.

      systemd is more of an api than a framework, so it’s a different design paradigm.

      I hated systemd until I printed out the docs, for some coffee, and sat in a comfy chair to read them front to back. Then I loved it.

      Mostly I hated it because I didn’t know how to do things with it.

      Also, “journalctl” is kind of an ugly command. But really, who gives a fuck. It’s a well-designed system.

      And if a person absolutely must execute their own arbitrary code they can just declare a command to execute their script file as the startup operation on a unit.

    • Lmaydev@programming.dev
      link
      fedilink
      arrow-up
      1
      ·
      2 months ago

      The idea as far as I can tell is that it’s responsible for too many things and gives a massive point of failure.

      • rmuk@feddit.uk
        link
        fedilink
        English
        arrow-up
        3
        ·
        2 months ago

        Man, wait until these people hear about the filesystem and kernel.

          • psud@lemmy.world
            link
            fedilink
            arrow-up
            1
            ·
            2 months ago

            The Linux kernel (the part that gives Linux the name) is antithetical to Linux philosophy? I could understand it being contrary to GNU philosophy

          • radiant_bloom@lemm.ee
            link
            fedilink
            arrow-up
            0
            ·
            2 months ago

            Does it ? I thought it was never completed !

            On the other hand, if you want a microkernel that does exist, there’s Mach. But I don’t think you can replace Linux with it 😆

        • qjkxbmwvz@startrek.website
          link
          fedilink
          arrow-up
          0
          ·
          2 months ago

          In some ways I think the filesystem is philosophically the exact opposite of systemd — I can boot my system with an ext4 root, with a btrfs /home…or vice versa. Or add some ZFS, or whatever. The filesystem is (with the exception of some special backup schemes) largely independent of the rest of the system, despite being of core importance.

          On the other hand, I can’t change my init system (i.e., systemd) without serious, serious work.

      • ricecake@sh.itjust.works
        link
        fedilink
        arrow-up
        1
        ·
        2 months ago

        It’s also “infectious” software. The way systemd positions itself on the system, it can make it more difficult for software to be written in an agnostic way. This isn’t all software, and is often more of a complaint by lower level software, like desktop environments.
        https://catfox.life/2024/01/05/systemd-through-the-eyes-of-a-musl-distribution-maintainer/ This isn’t a terrible summary of some of the aspects of it.

        Another aspect is that when it was first developed, the lead on the project was exceptionally hostile to anyone who didn’t immediately agree that systemd definitely should take over most of the system, often criticizing people who pointed out bugs or questionable design decisions as being afraid of change or relics of the past.
        It’s more of a social reason, but if people feel like the developer of a tool they’re forced to use doesn’t even respect their concerns, they’re going to start rejecting the tool.

          • ricecake@sh.itjust.works
            link
            fedilink
            arrow-up
            1
            ·
            2 months ago

            It’s that it also decided to take over log management, event management, networking, DNS resolution, etc, etc.

            If it were just an init system that would be perfectly portable. People were able to write software that way with sysv for years.

            It’s that in order to do certain low level tasks on a systemd system, you need to integrate with systemd, not just “be started by it”. Now if a distro wants that piece of software, it needs to use systemd, and other pieces of software that want to be on that distro need to implement integration with systemd.

            A dependency isn’t infectious, but a dependency you can’t easily swap out is, particularly if it’s positioned near the base of a dependency tree.

            Almost all of my software can run on x86 or arm without any issues beyond changing compiler targets. It’s closer to how it’s tricky to port software between Mac and Linux, or Linux and BSD. Targeting one platform entails significant, potentially prohibitive, effort to support another, despite them all being ostensibly compatible unix like systems.

    • ImplyingImplications@lemmy.ca
      link
      fedilink
      arrow-up
      0
      ·
      2 months ago

      My understanding is that some people are die hards to the software philosophy of “do one thing really well”. systemd at the very least does many different things. These people would prefer to chain a bunch of smaller programs together to replicate the same functionality of systemd since every program in the chain fits the philosophy of “does one thing really well”.

      • ramble81@lemm.ee
        link
        fedilink
        arrow-up
        0
        ·
        2 months ago

        For me it’s 3 things

        • Do one thing and do it well
        • Everything is a file in Linux
        • human readable logs

        Systemd breaks all three of though by being monolithic and binary. It actually makes you have to jump through more hoops to do things in certain cases. I understand it’s a mindset shift but it really starts making it feel more like Windows with how it works and the registry and event log.

        • Suzune@ani.social
          link
          fedilink
          arrow-up
          1
          ·
          2 months ago

          You forgot: use as many dependencies as you need. For example, my init system does not use xz-utils.

        • EinfachUnersetzlich@lemm.ee
          link
          fedilink
          arrow-up
          0
          ·
          2 months ago

          I don’t see how systemd has anything like the Windows registry. At least its journals are leagues ahead of Windows event logs, I hate those things and the awful viewer they have.

  • BaumGeist@lemmy.ml
    link
    fedilink
    arrow-up
    1
    ·
    2 months ago

    “I am a new linux user. After 15 minutes of research on google, I found a few forum posts and some niche websites that said SystemD was bad, so I took it as gospel. Now my system doesn’t work as simply as it did with installer defaults? How do I make everything Just Work™ after removing any OS components I don’t understand the need for?”

    • douglasg14b@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      2 months ago

      I mean you essentially just highlighted a primary user experience problem with Linux…

      Information & advice is fragmented, spread around, highly opinionated, poorly digestible, out of date, and often dangerous.

      And then the other part of it is that a large part the Linux community will shit on you for not knowing what you don’t know because of some weird cultural elitism…

      When you finally ask for help once you realize you don’t know what you’re doing, you’re usually met with derisive comments and criticism instead of help.


      Do you want Linux to be customizable so that users can control it however they want. Or do you want it to be safe so that users don’t mess it up? You can’t have it both ways, and when you tell users to “go figure it out” and then :suprise_pikachu: that they found the wrong information because they have literally no idea what’s good or bad, instead of helping, they get shit on.

      It’s the biggest thing holding Linux desktop back.

  • lemmyreader@lemmy.ml
    link
    fedilink
    English
    arrow-up
    1
    ·
    2 months ago

    I think I would have preferred sudo apt-get remove --purge systemd Yeah, some old habits never die.

  • steeznson@lemmy.world
    link
    fedilink
    arrow-up
    1
    ·
    2 months ago

    You can switch seamlessly between systemd and openrc on gentoo. Although it might be worth using one of the debian derivatives in this user’s case - not sure they should be messing with their system too much!