3 ms·
https://github.com/systemd/systemd/tree/main/src/core https://github.com/systemd/systemd/tree/main/src/core doesn't look like 1678 C files to me.
by raggi 8mo ago
https://github.com/systemd/systemd/tree/main/src/core https://github.com/systemd/systemd/tree/main/src/core doesn't look like 1678 C files to me.
- cf100clunk 8mo agoIn what way was Bruce incorrect, your one link excepted?
- raggi 8mo agohe is counting every c file in the systemd _repository_ which houses multiple projects, libraries and daemons. he equates that to the c file count for a single init. it's a disingenuous comparison. systemd-init is a small slice of the code in the systemd repository.
- cf100clunk 8mo agoI'm guessing he shares my belief that systemd-init cannot exist in the wild on its own, correct? When you want a teacup, you have to get the whole 12 place dinner set.
- rcxdude 8mo agoIIRC the mandatory components are the init system, udev, dbus, and journald. Journald is probably the most otherwise-optional feeling one (udev and dbus are both pretty critical for anything linux regardless), though you can put it into a passthrough mode so you don't have to deal with its log format if you don't want. Everything else is optional.
- simoncion 8mo ago> ... dbus [is] pretty critical for anything linux regardless Weird. If I weren't a sicko and had OBS Studio installed on my multipurpose box [0] I'd not have dbus installed on it. dbus is generally optional; not that many packages require it. [1] [0] Two of its several purposes are video transcoding and file serving. [1] This is another area where Gentoo Linux is (sadly) one of the absolute best Linux distros out there.
- simoncion 8mo ago> he is counting every c file in the systemd _repository_ which houses multiple projects, libraries and daemons. he equates that to the c file count for a single init. it's a disingenuous comparison. See, this is why when I refer to the Systemd Project, I spell it as "SystemD", and when I'm referring to systemd(1), I spell it "systemd". I understand that some folks who only wish to shit on the Systemd Project also spell it that way, but I ain't one of them. > systemd-init is a small slice of the code in the systemd repository. Given the context: Yes, systemd provides a lot of capabilities, but we will be losing some things I consider important. I'd say that the topic of discussion was SystemD, rather than systemd. systemd doesn't provide you with all that many capabilities; it's really not much more than what you get with OpenRC + a supervisor (either supervise-daemon or s6).
- cientifico 8mo agoGithub says 2.8k files when selecting c (including headers...) https://github.com/search?q=repo%3Asystemd%2Fsystemd++language%3AC&type=code https://github.com/search?q=repo%3Asystemd%2Fsystemd++langua... If the project is even split in different parts that you need to understand... already makes the point.
- ktm5j 8mo agoWell to be fair, you don't need to understand how SystemD is built to know how to use it. Unit files are pretty easy to wrap your head around, it took me a while to adjust but I dig it now. To make an analogy: another part of LFS is building a compiler toolchain. You don't need to understand GCC internals to know how to do that.
- josephg 8mo ago> Well to be fair, you don't need to understand how SystemD is built to know how to use it. The attitude that you don't need to learn what is inside the magic black box is exactly the kind of thing LFS is pushing against. UNIX traditionally was a "worse is better" system, where its seen as better design to have a simple system that you can understand the internals of even if that simplicity leads to bugs. Simple systems that fit the needs of the users can evolve into complex systems that fit the needs of users. But you (arguably) can't start with a complex system that people don't use and get users. If anyone hasn't read the full Worse Is Better article before, its your lucky day: https://www.dreamsongs.com/RiseOfWorseIsBetter.html https://www.dreamsongs.com/RiseOfWorseIsBetter.html
- ktm5j 8mo agoLFS is full of packages that fit your description of a black box. It shows you how to compile and configure packages, but I don't remember them diving into the code internals of a single one. I understand not wanting to shift from something that is wholly explainable to something that isn't, but it's not the end of the world.
- 8mo ago