• gayhitler420@lemm.ee
    link
    fedilink
    arrow-up
    12
    arrow-down
    4
    ·
    edit-2
    1 year ago

    If you really want the short version:

    Systemd was half baked literally when it came out and figuratively as an idea, so much so that there’s already a replacement for it in the works.

    A longer version:

    Systemd replaced the init script style of boot and process management, which had been in place for decades. init scripts were so simple they could be understood just by looking at the name: the computer is Initialized by Scripts. Systemd was much more complex and allowed many more tools to interact with the different parts of the computer, but people had to learn these tools. Previously all a person had to understand to deal with the computer was how to edit a text file and what various commands and programs did. After systemd a person has to understand how to use the dozens of invocations of systemctl and it’s variants and if they are dealing with a problem, —you know, the only reason a person would ever be dealing with initializing services— they gotta know what’s going on with the text files that systemd uses to run different commands and programs.

    So a person who already understood what was going on might rightly say “hey, this systemd thing is just the same shit with different file locations and more to learn”.

    People complain about the creator and maintainer of systemd, lennart poettering . Poettering is also the person behind pulseaudio, an powerful but complex audio management daemon in Linux whose name you only recognize because it’s caused you no end of trouble. Pulseaudio was also replaced relatively quickly by pipewire.

    The argument could be made (and probably has) that poetterings work is indicative of the problems with foss developers working as employees of major companies with their job responsibilities inclusive of their foss projects. The developer in that situation has an incentive to make big sweeping changes, they’re being paid for it after all, instead of being more careful and measured.

    When every big foss maintainer is trying to find a way to justify being paid for it, their projects are never done.

    At least poettering is working for Microsoft, ruining windows now…

    E: oh my god I forgot about the binary log files! So before (and now), the universal format for log files was plain text. You know, because it’s a log that’s text. Systemd uses binary log files that need a special tool to open and parse. So if you want to look through them on a computer without that tool you’re kinda screwed. Now systemd isn’t the only software package with binary log files, but many people have made the very persuasive argument that it’s not a trait to copy.

    E2: actually spelled the man’s name right. Thanks @floofloof@lemmy.ca !

      • Sinthesis@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        Oh man you reminded me of bad init scripts that would prevent you from getting to multi-user login. I hope you remembered your root password so you can get into single user mode!

    • Sysosmaster@infosec.pub
      link
      fedilink
      arrow-up
      9
      arrow-down
      2
      ·
      1 year ago

      Pulseaudio was also replaced relatively quickly by pipewire. lets check that, shall we:

      PipeWire: Initial release 20 June 2017; 6 years ago source: https://en.wikipedia.org/wiki/PipeWire

      PulseAudio: Initial release 17 July 2004; 19 years ago source: https://en.wikipedia.org/wiki/PulseAudio

      so “relatively quickly” is a time span of 13 years in your idea… or the difference between 2004 and 2017.

      if that’s your level of detail… your whole “rant” is worthless…

      But lets be generous and look into it,

      init scripts were so simple they could be understood just by looking at the name

      this is blatantly false, for the old system you need to know about runlevels, what they mean, how the half backed init annotations work, and its dependency check works.

      ### BEGIN INIT INFO
      # Provides:          myrec
      # Required-Start:    $all
      # Required-Stop:
      # Default-Start:     2 3 4 5
      # Default-Stop:
      # Short-Description: your description here
      ### END INIT INFO
      

      you needed special tools to watch if an application actually was running and not crashed, and to keep it running.

      add to that that the difference between systemd.service file and a sysv / init / initd script is more or less the same complexity (just different standards).

      the universal format for log files was plain text false, the universal format for logging was plain text…

      which is currently (slowly) getting replaced with structured logging. (which is objectively better, imho). there are a number of different log formats, most use a binary (compressed) format. logging to plain text was generally only used for the most recent log entries. a binary format for logging, as long as there’s is tooling to get it to a (structured) textual output, is better than a pure text log. I mean, if its good enough for MySQL / MariaDB it ought to be good enough for you…

    • K0W4LSK1@lemmy.ml
      link
      fedilink
      arrow-up
      5
      arrow-down
      2
      ·
      1 year ago

      gayHitler420 taught me something today. thank you for this informative comment

    • Count Regal Inkwell@pawb.social
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      1 year ago

      pulseaudio, an powerful but complex audio management daemon in Linux whose name you only recognize because it’s caused you no end of trouble. Pulseaudio was also replaced relatively quickly by pipewire.

      PulseAudio never gave me trouble but I guess I’m just lucky or some shit. Also PipeWire took forever to come out.