4 ms·
systemd is reliant on dbus because Lennart Poettering's philosophy on Unix is slightly different than the philosophy of a great many other people. The quote he
by tymb 10y ago
systemd is reliant on dbus because Lennart Poettering's philosophy on Unix is slightly different than the philosophy of a great many other people. The quote here (https://www.linuxvoice.com/interview-lennart-poettering/ https://www.linuxvoice.com/interview-lennart-poettering/) summarizes it:
What’s typical for Unix, for example, is that all the tools, the C library, the kernel, are all maintained in the same repository, right? And they’re released in sync, have the same coding style, the same build infrastructure, the same release cycles – everything’s the same. So you get the entire central part of the operating system like that. If people claim that, because we stick a lot of things into the Systemd repository, then it’s un-Unixish, then it’s absolutely the opposite. It’s more Unix-ish than Linux ever was!
Pid Eins goes through his own "mythbusting" around the concept that systemd is not consistent with the Unix philosophy: http://0pointer.de/blog/projects/the-biggest-myths.html http://0pointer.de/blog/projects/the-biggest-myths.html
But Ken Thompson and the people who were around him had a different view. http://www.catb.org/esr/writings/taoup/html/ch01s06.html http://www.catb.org/esr/writings/taoup/html/ch01s06.html
(Doug McIlroy) (i) Make each program do one thing well. To do a new job, build afresh rather than complicate old programs by adding new features.
If you look through the abstracted rules esr proposes, they are often in complete contravention of the philosophy of systemd.
The number of things systemd has broken by design or accident is quite substantial. The amount of things it touches in Linux is significant. It's pretty stunning to me that even experienced developers don't see anything wrong with systemd - it has had profound effects on system reliability, performance, usability, etc, most of them extraordinarily negative, for a benefit that is unclear.
I think if the scope had been smaller, the vehement disagreement with the implementation/principles behind systemd would probably have been mitigated quite a bit.
We are where we are. For better or for worse, systemd is taking over many Linux distributions, put there by people who have a very different view of what Unix is about. The people that support systemd are more or less supporting similar principles as Microsoft espoused for many years - an integrated system so tightly put together that it becomes difficult to tease things apart or to understand the working of the system, and an additional giant SPOF - something early Linux advocates protested about so vehemently. Those of us who know the difference use alternative distributions or BSD, the former of which is becoming harder as package maintainers and software authors are relying on systemd more and more.
To be fair, commercial Linux is where the money is, and all this plays directly into Red Hat's business model.
Funny, how in the end we adopt the same methods and principles we so vociferously argued against.
- snaky 10y ago> similar principles as Microsoft espoused for many years A little bit more recent comparison of systemd and Red Hat strategy behind it would be Google with PlayServices - proprietary ball of mud, which render AOSP effectively useless for vast majority of users, and more and more of Android is moving there.
- cmiles74 10y agoWhile the people you mention did say those things, I don't see how the contradicts Lennart's assertion. It is true that historically a Unix distribution did indeed consist of the tools, C library and kernel and that they we all released together in sync and were provided in one source archive[0]. To my mind, these ideas are not necessarily in conflict, one is about what comprises the entire product and the other guides design and implementation. In my opinion, I don't think it's fair to characterize Microsoft's OS design principles as "integrated so tightly... that it becomes difficult to tease apart or to understand." It is true that Windows (NT) is pretty tightly integrated with it's own components, I would argue this is because the majority of it was written by Microsoft. Many of the commercial Unix products were also similarly integrated for much the same reason. I'd argue that the only reason we see the modularization in Linux is because, historically, the modules were written by entirely different groups of people. As this changes and one group begins to control more and more components, it seems both natural and reasonable that they would integrate those components more tightly. Many of the Linux distributions appear to agree that this isn't necessarily a bad thing. Indeed, most Linux distributions are like the Unix distributions of old: they include the tools, C library, kernel and now a plethora of software. [0]: https://en.wikipedia.org/wiki/Unix#Components https://en.wikipedia.org/wiki/Unix#Components
- nzp 10y agoThat Poettering quote is a frightening example of intellectual dishonesty. It's like a politician talking nonsense to legitimize the shit sandwich he's about to stuff into your face. Either that, or he has no clue what he's talking about. Both alternatives are really bad.
- digi_owl 10y agoA bit of both. There are times i wonder if the guy has gotten coached on presentation.