• Systemd-init has a larger attack surface compared to runit, openrc, or sysVinit.

  • Systemd-logind relies on systemd, so we need to adapt it for non-systemD distributions to ensure compatibility with certain applications like GNOME.

  • Udev also depends on systemd.

  • SystemD is specific to Linux, which makes porting software to *BSD even more challenging. It’s uncertain what the future holds, and there may be circumstances where Linux becomes unusable for you (e.g., compatibility issues with your laptop). Having a good alternative that doesn’t require relearning everything is generally beneficial.

  • SystemD-based distributions often come with more than just “systemd-init.” They include additional components like logind, resolved, networkd, systemd-timers, etc. However, many people still prefer using the alternatives they were accustomed to before systemd became popular, such as dhcpcd and cron. Consequently, having both sets of tools installed can increase the attack surface.

  • Unsafe@discuss.onlineOP
    link
    fedilink
    arrow-up
    4
    arrow-down
    2
    ·
    6 months ago

    the added difficulties of making it system agnostic did not compensated for the low user base

    • 2003: Udev was launched, providing support for musl, non-systemd distros, and others.
    • 2004: NetworkManager was launched, with Udev as a crucial dependency.
    • 2006: Dbus was created without dependencies on distro-specific packages.
    • 2009: Dbus becomes a dependency for NetworkManager.
    • 2010: Red Hat introduces systemd, with core components including logind, journald, and timers.
    • 2012: Developers made udev less compatible with old kernels, musl-based, and non-systemd Linux distros by merging it with systemd. You can find more information about this here: https://lwn.net/Articles/490413, https://lwn.net/Articles/529314/
    • 2017: PipeWire was launched, with logind as a dependency.
    • 2017: Reimplementations of the bus protocol called dbus-broker were launched. Its compatibility launcher requires systemd.
    • 2020: After systemd had already been adopted by all major distros, systemd-tmpfiles gained the ability to be built as a standalone executable.
    • 2022: WirePlumber was launched, with pipewire as a hard dependency.

    Looks like Red Hat makes everything they can systemd-dependent. Including Gnome.