4 ms·
And that may well be the biggest split that has come within the Linux communities in recent years. Across time home grown minimalism and large name distros hav
by digi_owl 10y ago
And that may well be the biggest split that has come within the Linux communities in recent years.
Across time home grown minimalism and large name distros have largely coexisted in piece. This because large name distros where at its core an expanded home grown minimalist setup.
But systemd is shifting all that, because it is clearly built from the ground up with large name distro wants/needs in mind (or maybe it is the wants/needs of big name DEs, with Gnome at the front, and distros have to begrudgingly accept systemd as they want to ship with a big name DE as their default UI), and little else.
And as time goes on, it will be harder and harder to find projects that do not expect some part of systemd to be present. And given how systemd is maintained it will be hard to use just those parts and nothing else.
More and more systemd seems like a massive case of the tail wagging the dog.
- kbenson 10y agoAt some point I think we just have to accept that, like most automobiles, all the things we want come with a complexity cost, and eventually the complexity is too much for the average person, and then too much for even most exceptional people. Compartmentalization helps this somewhat, even if it initially looks like the opposite. You can still build a hot rod without too much advanced knowledge. Want to include anti-lock brakes? What about traction control? What about variable valve timing? At some point even the savants will start acquiring whole systems to drop in as needed, as needed. Systemd is to sysinit what a brand new aluminum or magnesium alloy modern engine is to a 70's cast iron engine. It's not something you want to mess with too much, and it has a bunch of inputs and outputs you probably don't care about, but it's designed for what it's used for. If I was buying a new car, I want the modern engine unless I expect to need to do a bunch of maintenance myself. This is the normal progression technology takes. It's fine to still run your own distro, just as it's fine to build your own car, but let's not delude ourselves into thinking the custom distro not the hot rod are just as good general purpose devices, even if they may well be better for a specific subset of things (and that subset may well fit what you care about).
- zzzcpan 10y agoWouldn't you expect more decoupling and decentralization with growing complexity instead of a single engine that does everything? It's not like we are constrained by size or weight of an automobile, we can simply agree on some IPC protocol and let everyone have their own managing daemons completely isolated from the rest of the system, that are started and managed by other managing daemons and so on. In fact, this is the only way to make it reliable, otherwise errors in centralized components will affect everything.
- kbenson 10y agoI don't think it is one thing doing everything. It may seem that way if you zoom in to a small portion of what the system does, but it's a fairly contained system that has some parts that extend beyond what you would normally consider it's boundaries to achieve specific goals. The kernel handles hardware abstractions and provides a base interface. Systemd handles system boot and service management.The windowing system (including window manager) handles GUI interaction. Whether you would or could draw the definitions elsewhere doesn't really matter, as the systems are in enough flux (especially recently) that they aren't very static. As features are needed, they shift between those systems (or or even others) to find a place where there are resources to implement it, where it's feasible to to, and where it's efficient to do. Those aspects are weighted differently over time (especially resources available, which is developers with skill and time), so some features will swap between systems. A well defined API between them would be nice, but that's not the type of development that's generally done in open source. It requires a lot more understanding, effort and time up front, and even where there's a will, there those resources don't always exist. Systemd tried to solve a lot of problems, and create new capabilities (or bring them to linux at least). Expecting everything to both have not only have been thought about, but planned, for, tested and accounted for prior to it starting is a tall order. Even if ther had been an exceptional amount of effort put into that, it's likely that other systems (such as the window system or the kernel) would change to offer new capabilities or want to offload some responsibility that they saw as better handled elsewhere. This is where the metaphor breaks down. A car is generally designed in whole by one group (or the systems they integrate are complete and finished), and that doesn't really exist in Linux, since everything is always in flux.