this post was submitted on 26 Aug 2025
105 points (86.2% liked)

Linux

57779 readers
562 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 6 years ago
MODERATORS
 

cross-posted from: https://programming.dev/post/36342010

Nitro is a tiny process supervisor that also can be used as pid 1 on Linux.

There are four main applications it is designed for:

  • As init for a Linux machine for embedded, desktop or server purposes
  • As init for a Linux initramfs
  • As init for a Linux container (Docker/Podman/LXC/Kubernetes)
  • As unprivileged supervision daemon on POSIX systems

Nitro is configured by a directory of scripts, defaulting to /etc/nitro (or the first command line argument).

you are viewing a single comment's thread
view the rest of the comments
[–] Arcane2077@sh.itjust.works 65 points 5 days ago (15 children)

Can someone explain the “we hate systemd” meme for me? I’m not exactly new to Linux but the context is lost on me. Does anyone actually hate systemd?

[–] ArtixCory@lemmy.ml 6 points 3 days ago

Closing this comment as: won't fix.

[–] blackstrat@lemmy.fwgx.uk 16 points 4 days ago (1 children)

Most people think it's a single executable that does everything and breaks unix philosophy, rather than a suite of tools that adhere to it, which is what it is.

[–] corsicanguppy@lemmy.ca -3 points 3 days ago

does everything and breaks unix philosophy, rather than a suite of tools that adhere to it

..for 'itself' versions of 'it'.

[–] thatsnothowyoudoit@lemmy.ca 47 points 5 days ago* (last edited 5 days ago) (1 children)

It was highly contentious for a number of years - largely because it had a lot more functionality and touched more parts of the OS than the init systems it was designed to replace. It was seen as overzealous by the naysayers.

I was in the never system-d camp for a long time because I felt like my ability to choose was being removed. Even some distros that provided alternate init systems eventually went systemd-only.

But I’ve come around - it’s fine, good even - though ultimately I had no choice or say in it.

It’s very straightforward and easy to write one’s own units. It’s reasonably easy to debug and often helpful when something isn’t working as expected.

Like all things in the world of software, many folks are going to try (and eventually succeed) to make a better mousetrap.

This particular init system’s design goals seem (at least to me) to indicate a focus on small, embedded and/or more secure systems where the breadth of tools like systemd are a hindrance.

[–] TheFrogThatFlies@lemmy.world 15 points 4 days ago* (last edited 4 days ago) (1 children)

IMHO systemd tries to go above the requirements of an init system and behave more like an abstraction layer to the OS, in the same way Linux is an abstraction layer to the hardware. Would we be better with a micro kernel, instead of the Linux beast? Maybe, but we do all use it and it is mostly a standard nowadays. Same for systemd. Could it be simpler? Sure! But having a standard abstraction layer at user level for all distros is excellent for an app developer. And, AFAIK, it should be possible, albeit less verified, to disable most features and use alternative implementations.

[–] thatsnothowyoudoit@lemmy.ca 5 points 4 days ago

Totally fair and exactly part of my original disdain. I was happy with SysV and Upstart. But here we are and I’ve got things to do. ;)

I hated repackaging all my software for systemd. lol. We waited as long as we could before eating that pie.

[–] dgriffith@aussie.zone 40 points 5 days ago (1 children)

Does anyone actually hate systemd?

It's a little too monolithic and kitchen-sink-including for my liking. It doesn't feel like the "do one thing and do it well" style, it has a pretty large attack surface as a result.

Oh, and binary log files.

[–] Arcane2077@sh.itjust.works 13 points 5 days ago (1 children)

It’s a little too monolithic and kitchen-sink-including for my liking. It doesn’t feel like the “do one thing and do it well” style, it has a pretty large attack surface as a result.

That makes sense. I could see how that would irk a lot of people, but I’d personally trust the widely used, intensely scrutinized, load-bearing, open-source processes, over a lesser known one.

Oh, and binary log files.

Yeah those are great… Or do we dislike those too? 🙃

[–] nyan@sh.itjust.works 12 points 4 days ago (2 children)

There are a lot of command-line tools for text, like grep and sed, that don't work on binary files. Whether this matters to you depends on your workflow. (I use grep a lot.)

[–] Badabinski@kbin.earth 21 points 4 days ago

Just journalctl | grep and you're good to go. The binary log files contain a lot of metadata per message that makes it easy to do more advanced filtering without breaking existing log file parsers.

[–] Arcane2077@sh.itjust.works 3 points 4 days ago

Oh. That’s fucked up. Appreciate the info

[–] muusemuuse@sh.itjust.works 18 points 4 days ago* (last edited 4 days ago) (2 children)

Systemd is a very good chunk of code. It does the thing and it does it well. Nobody is arguing that systemd does a bad job at this point.

The problem is systemd does a LOT of things that used to be individual jobs handled by separate things. This is a potential security problem as it makes systemd a fantastic target. It’s in charge of so many things that if you pwn systemd, you can get that system to do anything you want.

Another concern are the ties to red hat. Red hat is not your friend. They are not to be trusted. Especially not right now. Remember who owns them, IBM, were quite friendly with the Nazis before and are looking like they are totally fine with being friendly with them again.

That last one is more of a tinfoil hat concern than a technical one, but at this point the tinfoil crowd have been proven right more often than wrong so it’s something to consider.

[–] sunbeam60@lemmy.ml 12 points 4 days ago (3 children)

So I should hate systemd because IBM’s German subsidiary provided tabulation machines to the Nazis during WW2?

[–] Evotech@lemmy.world 7 points 4 days ago

Seems completely reasonable /s

[–] muusemuuse@sh.itjust.works 2 points 3 days ago

That is not what I said. Please reread my post in its entirety.

[–] jenesaisquoi@feddit.org 1 points 3 days ago

If we don't sanction entities involved in unimaginably horrible crimes are we even human?

[–] corsicanguppy@lemmy.ca 2 points 3 days ago

systemd does a LOT of things

... incompletely ...

that used to be individual jobs handled by separate things.

[–] Zucca@sopuli.xyz 17 points 4 days ago* (last edited 3 days ago)

Because systemd replaced too many important components users still wanted to keep using... and politics. Not many people like Lennart (the guy who started the project). Politics ruin everything.

For me the breaking point was systemd-journald. Corrupted journal when you desperatedly needed to know what went wrong was too much. Last time I gave systemd a try was several years ago... Something like 5 to 7 years, so things might have changed a lot.

Also I'm in the minority here. I like to custom my system components too. systemd just doesn't fit there. Also I administrate one lightweight, low power box, which uses musl libc. Last time I checked systemd needed glibc.

Enough ramblings. Here's some reading for you... note that there's most probably very biased technical writings here and there, so use common sense and verify the claims if you want the real truth. Then judge yourself, don't let anyone else judge for you.

[–] Sprocketfree@sh.itjust.works 9 points 4 days ago (1 children)

Because it tries to do too much. Boots can fail because some random thing is broken. Just goes against the unix philosophy of a tool for a specific job.

[–] neclimdul@lemmy.world 6 points 4 days ago

This. Init having a pretty important role, you would hope being simple and minimal would be a priority. I just try to stick my head in the ground and pretend like it's all ok.

[–] Brosplosion@lemmy.zip 12 points 4 days ago (1 children)

It oversteps because the creators found it to be convenient.

Copacking default services for networking and time synchronization and other systems with the init make sense for a specific usecase but god bless you if you need to use a different service as you track down the various configuration options to disable functionality.

It works amazing as a service management tool but the prebaked services it provides generally cause more problems than they solve.

[–] ArtixCory@lemmy.ml 3 points 3 days ago

systemd-resolved is a virus. There, I said it.

[–] Auli@lemmy.ca 9 points 4 days ago

People hate change and want Linux yo remain in the 70's. Find threads complaining about any change in Linux.

[–] digdilem@lemmy.ml 5 points 4 days ago* (last edited 4 days ago) (3 children)

Two groups of people went to war over a difference of opinion.

  1. New! Different! Change! Bad!

  2. Hey, this works better than the old way. Let's use this instead.

[–] Ferk@lemmy.ml 4 points 4 days ago* (last edited 3 days ago) (1 children)

You could equally mischaracterize it the other way around:

  1. Hey, this works worse for my workflow than before. I don't want to use it.
  2. New! Different! Change! Good! Put everywhere!
[–] digdilem@lemmy.ml 3 points 3 days ago (1 children)

Fair, and representative of some opinions certainly.

But change, change is constant. Resist it and end up poorer and more bitter.

[–] Ferk@lemmy.ml 3 points 3 days ago* (last edited 3 days ago)

That can be true.. but it depends on the change... emptying your bank account is a change that would make you poorer, and having all those who love you die would be a change that is likely to make you bitter (or at least, sad).

Also, a lot of ancient software introduces change with relatively frequency.. the Linux kernel itself is in constant change, introducing new features, despite it having very strict rules concerning backwards compatibility.

The reason there was disagreement wasn't about whether the new thing is good/bad just because it's "New! Different!".. but about whether it was actually a good change or not.

In the same way, just because nitro is the new init system in town (a change from the current status Quo) does not mean it necessarily is better/worse, right?

Also, I remember that before systemd there was a lot of innovation when it comes to init systems... most distros had their own spin. And more diversity in components that now are part of systemd. I'd argue that ever since systemd became the de-facto standard, innovation in those areas has become niche. One could argue that there's less change now, distros are becoming more homogeneous and more change-adverse in that sense.

[–] corsicanguppy@lemmy.ca 1 points 3 days ago (1 children)

Two groups of people went to war over a difference of opinion.

  1. New! Different! Change! Bad!

'Change resistance' was the standard gaslighting. No one said 'different bad', in a time when enterprise linux had just switched from sysVinit to upStart. What they said was "this is built bad and wants to do too much, poorly. We don't like this."

And the response was "you're old, you hate change," and similar fallacies.

  1. Hey, this works better than the old way. Let’s use this instead.

I think you mean "I don't know how to do this in the normal way, so I'll try this other thing."

[–] digdilem@lemmy.ml 0 points 3 days ago

No one said ‘different bad’,

Plenty of people did. "What's the point of change?" "I'm happy with Sys-V" "I don't like Poettering", "Lennart is too powerfull" and a lot more irrelevant and personal attacks.

Please don't accuse me of gaslighting whilst gaslighting me in return. I was there, I lived through the worst of the Debian wars and saw some great people leave the project, and a side of some friends that I really didn't like. But that war is done and I have zero interest in continuing it so I'll leave this here.

[–] muusemuuse@sh.itjust.works 4 points 4 days ago (1 children)

Dude if you want to start a holy war with the Linux community over your first point, just mention Rust.

-dodges rotten fruit-

[–] bluecat_OwO@lemmy.world 2 points 4 days ago (1 children)

I am a linux noob but all the noobs support rust

[–] muusemuuse@sh.itjust.works 3 points 3 days ago

Everyone should support rust. It’s a good idea. It prevents an entire class of vulnerabilities. But the old guard says “just stop making mistakes and C is fine” which is an incredibly dumb thing to say but here we are.

Rust is encroaching on their territory and they don’t want to learn the new thing, and newbs don’t see many compelling reasons to learn the old thing, so they are fighting eachother.

[–] procapra@lemmy.ml 4 points 4 days ago

On a modern system built around modern philosophies, its convenient. Doing stuff on systemd seems very intuitive to me and feels like a bit less work than the alternatives (atleast from my non-developer POV). If systemd hadn't become the standard maybe my opinion would be different, but most of the time it "just works".

On an older system, the alternatives are definitely lighter! If you're in the group of people who believes every megabyte counts, you care about systemd. There are also oldschool tech nerds who believe systemd is insecure (they might be right idk anything).

[–] Obin@feddit.org 4 points 4 days ago* (last edited 4 days ago) (1 children)

No, it's just something systemd proponents claim to shit on alternatives and their users.

Sure, I dislike systemd or at least some of its components and how they're designed, and I find the vocal systemd proponents (especially those that still find the need to be vocal about it in 2025) to be some of the most annoying people in the entire Linux community. But I use it on some systems and it works fine for the most part. Hate is a strong word for a software choice.

[–] Cricket@lemmy.zip 1 points 4 days ago (1 children)

There was endless drama for years surrounding systemd when it first started getting adopted by distros. I recall people hating it with a burning passion. Slashdot had tons of such sentiment back then.

[–] Obin@feddit.org 2 points 4 days ago* (last edited 4 days ago) (1 children)

I don't disagree that there was drama, I disagree about who was (always) the side fanning the flames. Systemd made divisiveness the core of its marketing strategy. Early on LP personally set the tone by calling out people and distros not using his software as Luddites. And that was back when systemd actually was still a buggy mess. And to this day, in threads like this you will see detractors explain the reason why they're still opting out or have in the past, while (some of the) proponents will insult people opting out as backwards idiots who "don't want to learn new things" or irrational haters. 🤷

[–] Cricket@lemmy.zip 1 points 4 days ago

I see. I wasn't aware of that part of the story. Thanks.

[–] MonkderVierte@lemmy.zip 3 points 4 days ago* (last edited 4 days ago)

Can't have it with any alternative init and rc in the same repo or do this and fiddle with wrappers and shims. Yees, OpenRC is the exception; because it was built as a drop-in and only does rc really.

In short, Systemd is a kraken that always grows arms. And they shit code like me after Taco Bells; it took years until we got seatd as alternative to way-too-big logind. Xorg is holy compared to their code quality.