1 |
On Tue, Feb 9, 2016 at 8:06 AM, Daniel Campbell <zlg@g.o> wrote: |
2 |
> |
3 |
> Perhaps that's because each of those things should not actually be |
4 |
> considered the same object type. That sort of design may be convenient |
5 |
> to users, but is more akin to treating everything like a nail when you |
6 |
> have a hammer. |
7 |
> |
8 |
> Also note that in the 'alternate' model, each of the above is handled |
9 |
> by a different tool. It's obvious that using a combination of |
10 |
> different tools will result in different conceptualizations of each of |
11 |
> those parts in a system. I see little benefit in a single project |
12 |
> pretending to understand everything about each of them. |
13 |
|
14 |
I thought the whole beauty of unix was the everything-is-a-file design? |
15 |
|
16 |
> |
17 |
> If I didn't know any better I'd say this reads like shilling. Firstly, |
18 |
> there's a real problem if you're depending on a daemon restarting |
19 |
> itself. Why is it stopping in the first place? If it's stopping, |
20 |
> something wrong is happening and restarting it *isn't* going to fix it. |
21 |
|
22 |
Sure, but then why does the linux kernel have an option to auto-reboot |
23 |
after a panic? Surely it is better if there is a kernel panic to just |
24 |
leave the server down for a few days until an admin shows up to debug |
25 |
the kernel? |
26 |
|
27 |
> |
28 |
> Existing permission systems handle a lot of cases. *kit (logind, is |
29 |
> more like it) has some extra things to make it a bit more granular. |
30 |
> It's mostly unneeded complexity. The biggest benefit logind brings to |
31 |
> a system is multi-seat capability. |
32 |
|
33 |
Emphasis on "existing permission systemS" - again you're comparing a |
34 |
patchwork of different solutions to a problem vs a harmonized |
35 |
solution. |
36 |
|
37 |
>> |
38 |
>>> And a lot of Gentoo is surprisingly simple: Like our use of bash |
39 |
>>> scripts for recipies to build things, like using rsync to |
40 |
>>> deploy/relay not just those recipies, but security notices and |
41 |
>>> news items, which are themselves reasonably simple formats. |
42 |
>> |
43 |
>> Well, one thing about Gentoo that certainly isn't simple is our |
44 |
>> init.d scripts. |
45 |
>> |
46 |
>> Compare this: http://pastebin.com/sSDtpF4t |
47 |
>> |
48 |
>> With this: http://pastebin.com/Lfn8r7qP |
49 |
>> |
50 |
>> Systemd does the job in 10% of the code (and half of it is a |
51 |
>> comment), and doesn't implement its own service polling and killer |
52 |
>> script during shutdown independently for every service (not that |
53 |
>> every init.d script even does this - most of them will just leave |
54 |
>> orphans behind, and systemd will catch orphans that even the |
55 |
>> lengthy init.d script for apache misses). |
56 |
> |
57 |
> This is a dishonest comparison. You're comparing a declarative |
58 |
> configuration file with a Turing-complete scripting language. |
59 |
|
60 |
That is how each solution implements its configuration. It isn't my |
61 |
fault that openrc forces everybody to write bash scripts just to |
62 |
start/stop a single process. |
63 |
|
64 |
The complexity of openrc is inherent in the design. |
65 |
|
66 |
Sure, systemd has more lines of code internally, but the difference is |
67 |
that instead of having a bazillion independent bash scripts maintained |
68 |
by different people at different levels of QA, you have a single |
69 |
codebase that almost all distros share that is maintained to a higher |
70 |
level of QA. Features are implemented once there instead of a million |
71 |
times in various shell scripts. |
72 |
|
73 |
> |
74 |
> I can get behind that. This dodges all sorts of arguments regarding |
75 |
> initial installations. There's still the issue of the virtual, |
76 |
> however; would we add sys-fs/udev to p.mask in non-systemd profiles to |
77 |
> clarify the decision, or make eudev the default choice in the virtual? |
78 |
> I think we can all agree on making it an additional step in the |
79 |
> handbook, but the default is still at hand. |
80 |
|
81 |
I agree, but it becomes a less important default, like whether you |
82 |
prefer vi/emacs to nano. |
83 |
|
84 |
>> |
85 |
>> If you want to talk about default providers, the most |
86 |
>> straightforward one to use is systemd. It is what people are going |
87 |
>> to be used to coming from other distros, it is what every upstream |
88 |
>> package expects to be running anyway, and it is the simpler tool |
89 |
>> that does everything that most people want. |
90 |
>> |
91 |
>> For people who want a more exotic configuration, there are |
92 |
>> alternatives, and Gentoo should certainly support using them as |
93 |
>> long as people care to maintain them. |
94 |
> |
95 |
> This is the same argument other distros used before they switched |
96 |
> completely to systemd. When has Gentoo ever been about marching to the |
97 |
> beat of other distros? Are you advocating for following what others do |
98 |
> simply because it's popular? |
99 |
|
100 |
Gentoo has always been like other mainstream distros (until Arch came |
101 |
along it was probably closest to Debian). Its distinctiveness came |
102 |
from offering choices to users and being source-based. I think that |
103 |
is what we're good at. |
104 |
|
105 |
The only reason we had OpenRC is that EVERYBODY was rolling their own |
106 |
service managers, and OpenRC was better than the alternatives. I |
107 |
think that was great, but everybody else has moved on. |
108 |
|
109 |
> The e-mails I've seen from you in this thread seem out of the |
110 |
> ordinary. Has the systemd team been talking with you, or people from |
111 |
> other distributions urging for Gentoo to switch? |
112 |
|
113 |
Not at all. |
114 |
|
115 |
I'll admit this has been a bit of an emotional thread for me. I think |
116 |
my frustration comes from the fact that it seems like the whole reason |
117 |
that eudev exists is because people really strongly believe that |
118 |
systemd isn't the right way to go, and yet those same people don't |
119 |
seem to realize that others might feel just as strongly that eudev |
120 |
isn't the right way to go. |
121 |
|
122 |
Surely anybody suggesting switching to eudev as the default |
123 |
virtual/udev provider had to have realized that this would create a |
124 |
huge controversy. |
125 |
|
126 |
Even if standalone udev is a dead-end (something that is speculation |
127 |
at this point), it isn't like the code that exists today will suddenly |
128 |
stop working. Worst case we just have to change the default at a |
129 |
later point in time. |
130 |
|
131 |
Even just kicking the can down the road has a lot of advantages: |
132 |
1. Everything works fine today. |
133 |
2. We don't know for sure that it will ever stop working. |
134 |
3. Deferring a decision means we don't have to wage a huge battle |
135 |
over which way the decision ought to go. |
136 |
4. If we do have to make a decision in the future, we'll have more |
137 |
information to act on. |
138 |
|
139 |
-- |
140 |
Rich |