I like the idea of nixOS and will definitely try it in the future to see how portable I can make the setup be (hopefully a couple of files that can configure the entire machine).

But the only thing in my mind that is stopping it not being the absolute almost perfection of a tech-savy distro is the reliance of systemd, which has software that I as a user will never going to touch which adds unnecessary bloat to the init (also more unnecessary attack vectors). And if I really needed to have some of the systemd programs, there are replacements out there that do the job that can be later installed when needed, like having log files and stuff.

What do you think of some day seeing a fork of nixOS that uses other init systems and works well? Or is it just me that likes this idea? Like a voidish nixOS 🤔

  • Vilian@lemmy.ca
    link
    fedilink
    arrow-up
    21
    ·
    10 months ago

    the init is just a binary, the others systemd features are different programs from different binary, and you are not forced to use them, you can use only the init and don’t use the others, it’s not gonna affect security, systemd init is the most tested one

    and you can’t, a lot of technology that make NixOS and others immutable distros works exists only because of systemd

    and if others init system worked as well, the entire of the linux community would not have changed voluntarily nor indenpendently to it

    What do you think of some day seeing a fork of nixOS that uses other init systems and works well? Or is it just me that likes this idea?

    doubt, is too much work just to make a systemd alternative, without the reliability and support that systemd have, but i think it could be a fun hack

    • nyan@lemmy.cafe
      link
      fedilink
      English
      arrow-up
      6
      arrow-down
      3
      ·
      10 months ago

      To set the record straight, since you apparently have no idea of the history: systemd isn’t the original Linux init system, and wasn’t foisted on the Linux community because it was technically superior for most people’s use cases. It still isn’t the only viable Linux init system, but it pulled a Microsoftian embrace-extend-extinguish on udev, which makes it more difficult to switch away. Its current popularity is still not based on technical merits. Instead, it’s political, because most people don’t care about what init they’re using and most distro-makers take the path of least resistance.

      It’s true that you’re not required to use all of the individual executables that comprise systemd, but most distros will require you to install them. So they’re still present as unwanted clutter, and bugs could still pose a security risk if an attacker can run the executables. (This doesn’t mean that OpenRC or runit would necessarily be any more secure—every non-trivial piece of software has bugs, and some percentage of those are going to be security-relevant. You’re not required to care about small amounts of on-disk clutter, either, but some people choose to make their system partitions small and micromanage the contents even if they’re not working on embedded.)

      Compiling your own copy of systemd without the clutter, judging from the contents of the systemd ebuild, requires setting more than 30 compiler options. And then installing the result manually without trashing your system. Not trivial, in other words.

      If systemd works for you, then by all means use it, but accept that other people may choose to install something different on their own machines for what you consider to be bad reasons, or no reason at all, and arguing about it just annoys them without providing any benefit to you.