1 |
On Sat, 2004-03-20 at 10:58, Stuart Herbert wrote: |
2 |
> On Saturday 20 March 2004 00:18, John Nilsson wrote: |
3 |
> > Could you elaborate on that? |
4 |
> |
5 |
> One of Gentoo's strengths is that most packages are installed *without* any |
6 |
> sort of customisation at all. If you were to download the tarball, compile |
7 |
> and install it yourself, what you'd end up with would the same or almost the |
8 |
> same. |
9 |
> |
10 |
> This approach also has the advantage that packaging new versions of packages |
11 |
> is a very straight-forward piece of work. |
12 |
> |
13 |
> Now, if you want to change every package's existing configuration file with |
14 |
> any new approach, where is this change going to be made? Some packages may |
15 |
> adopt it upstream, but not every package will. So, eventually it'll come |
16 |
> down to Gentoo to add this support when they package up a new version. I |
17 |
> just don't see Gentoo being able to patch each and every tool that has its |
18 |
> own configuration file. |
19 |
> |
20 |
I never ment that Gentoo developers would do some non standard things to |
21 |
the packages. If the standard is not good enough to convince upstream |
22 |
developers to change, it is not good enough, period. |
23 |
|
24 |
|
25 |
|
26 |
> That way seems to be quite a change in direction for what Gentoo actually is. |
27 |
> http://www.gentoo.org/main/en/about.xml is very clear. Gentoo is a *meta* |
28 |
> distribution (their emphasis). |
29 |
> |
30 |
> It's also worth pointing out that AIX has been doing this for years. Having a |
31 |
> GUI is great, but sooner or later you need to do something that the GUI isn't |
32 |
> flexible enough to do. |
33 |
> |
34 |
> Another way would be to leave the packages alone, and instead have a tool that |
35 |
> is programmed to write out the config files that each package wants / needs. |
36 |
> Sounds like Linuxconf, doesn't it? Need I say anything more? |
37 |
|
38 |
This is also why I don't trust Linuxconf, webmin, xf86config or what |
39 |
have you. The configuration logic is part of the tool. The chance of the |
40 |
tool not being up to date with the packe to configure is greater than |
41 |
zero. |
42 |
|
43 |
|
44 |
> > My suggestion was not to replace text-based |
45 |
> > configuration, just unify the formating of them... |
46 |
> > I also believe that this is a perfect application for XML. It is still |
47 |
> > text-based though. |
48 |
> |
49 |
> If you're going to create a tool that generates each package's normal config |
50 |
> file from an XML-driven system, I'd be willing to bet that you can't find an |
51 |
> XML structure that allows you to do this for all cases. And the closer you |
52 |
> get to one, the more complicated it becomes. |
53 |
|
54 |
The generated file would be a xml-file. This xml-file would be the |
55 |
package "normal" config file. |
56 |
The whole point is that the Schema to validate the xml-file would be |
57 |
developed by the upstream package developers. |
58 |
This schema would also contain the documentation for the configuration |
59 |
file. From this Schema a man-page could be generated. Thus config tools |
60 |
and man-pages would have the same source of information. |
61 |
|
62 |
> It also sounds like you're pushing a technology that is looking for a |
63 |
> problem ... |
64 |
|
65 |
It might be true that I narrowly think XML. I have recently studied it |
66 |
for a solution to some work related projects. |
67 |
However I think it is a good solution in any case. One could pick any |
68 |
syntax imaginable, xml however has the edge of being ready for use |
69 |
today. |
70 |
|
71 |
> > Developers create a Schema that a configuration file must validate |
72 |
> > against. |
73 |
> |
74 |
> Which developers? Gentoo developers, or the upstream developers? |
75 |
|
76 |
Upstream. Gentoo is a meta distribution as you say. I would call it "a |
77 |
proof of concept hack to demonstrate portage" if honest =) |
78 |
Don't get me wrong I run Gentoo as my only OS on all my home machines, I |
79 |
love it. |
80 |
However in another world I would have the portage tree only contain |
81 |
forks of the packages and then heavily develop the whole system for |
82 |
consistency. One can dream, right? |
83 |
|
84 |
> |
85 |
> > > Now for this to be usable, a Schema (or DTD) is developed that |
86 |
> > their Schema must validate against. This uber Schema is formulated in a |
87 |
> > way such that a configuration editor, adhering to the standard, can edit |
88 |
> > any applications configuration in a secure and user friendly way without |
89 |
> > "plugins" or modification. |
90 |
> |
91 |
> What value would this configuration editor actually add? It's going to have |
92 |
> to know quite a lot about the permittable combination of options, and their |
93 |
> side effects, to add much more value than using an existing "configuration |
94 |
> editor" such as vi, emacs, KWrite, and so on. |
95 |
> |
96 |
I'm not talking about a configuration editor. I'm describing a |
97 |
"protocol" that a configuration editor can implement. The value would be |
98 |
that all data required to create a valid configuration file would come |
99 |
with the file not with the editor. |
100 |
I can imagine someone engineer a clever XSLT technique to solve some |
101 |
Gentoo specific problems without actually touching the packages... |
102 |
|
103 |
|
104 |
> Sounds like you'd just end up having to duplicate each packages' existing |
105 |
> configuration file validation logic into the tool via the XML. Duplication |
106 |
> can work if you're in competition - but when you've got two people or groups |
107 |
> doing exactly the same thing, usually one group ends up giving up. |
108 |
|
109 |
As stated earlier this system depends on upstream developers to throw |
110 |
out their current system and implement this. Thus it has to be GOOD |
111 |
ENOUGH. |
112 |
|
113 |
> > In a way the Schema from the app is a generalized plugin that kind of |
114 |
> > "implements" the configuration superclass... (for you OOProgrammers =) |
115 |
> > |
116 |
> > -John |
117 |
> |
118 |
> I'm not convinced that this effort will be successful, or that it adds |
119 |
> sufficient value to be worth trying. |
120 |
> Just a personal opinion, |
121 |
> Stu |
122 |
|
123 |
All opinions are important, I don't want to wast my time on a system no |
124 |
one would use =), how ever i could investigate the matter further and |
125 |
deeper if it seems promising. |
126 |
|
127 |
Now this isn't Gentoo specific, but it is a system worth considering in |
128 |
further "System configuration gui" research. |
129 |
|
130 |
-John |