1 |
On Wed, Feb 10, 2016 at 12:36 PM, Paul Varner <fuzzyray@g.o> wrote: |
2 |
> On 2/9/16 7:44 AM, Rich Freeman wrote: |
3 |
>> |
4 |
>> I thought the whole beauty of unix was the everything-is-a-file design? |
5 |
> |
6 |
> No, the beauty of Unix has always been the architectural philosophy of |
7 |
> loose-coupling of the components of the system. |
8 |
> The "everything is a file" is a result of that philosophy. The end result |
9 |
> of this is that you can switch out components of the system without |
10 |
> redesigning other aspects of the system. That is the philosophy that allows |
11 |
> Gentoo to exist as meta-distribution and to provide choice for what you |
12 |
> want. |
13 |
|
14 |
While I agree with much of that, keep in mind that strictly avoiding |
15 |
loose coupling is a decision that actually denies some choices. |
16 |
|
17 |
Strong coupling between my service manager and cron implementation |
18 |
means that I can set one configuration option and have it apply to |
19 |
everything, or have a common syntax across them. Having it all tie |
20 |
into kdbus means a simpler interface design for all of it. |
21 |
|
22 |
I think this can be carried too far, and I don't use the full systemd |
23 |
family for everything I do. However, when I find that it makes sense |
24 |
to use various systemd components together there are a lot of benefits |
25 |
from the tight coupling. |
26 |
|
27 |
And we already accept this in other parts of the system, the kernel |
28 |
being the most obvious. You can't use one implementation of /proc and |
29 |
a different implementation of /sys, and use zfs from FreeBSD |
30 |
seamlessly on the same system (I'm not saying you can't port all of |
31 |
those into the same codebase - just as you could probably port eudev |
32 |
into systemd if you wanted to fork them both). |
33 |
|
34 |
My point was that providing common interfaces to system services was |
35 |
actually a big part of the unix appeal. It hasn't fully kept up, and |
36 |
I think somebody already mentioned Plan 9 in the thread. I'm not |
37 |
really sure I want my window manager to be part of the kernel, even if |
38 |
it is a microkernel, and there will always be another layer of |
39 |
abstraction. But, the goal is still a good one, and of course with |
40 |
Gentoo you have the choice not to use it (though it may become a |
41 |
harder one to sustain if some of the various upstreams wither away) |
42 |
|
43 |
-- |
44 |
Rich |