tech-userlevel archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Moving rc.d scripts to base.tgz
On Sun, Apr 17, 2011 at 11:37:24PM +0200, Michael van Elst wrote:
> > > The nice design is to keep such checks easily edible. Instant
> > > flexibility instead of limited choices chosen by the designers.
> >
> > No, because then you have to write shell script (or worse, hack
> > someone else's) to get the behavior you want. This limits the
> > flexibility to people who have sufficient skills to do that (and who
> > trust that skill enough to do it in a production context...)
>
> This is not about simple configuration options versus custom scripting.
Yes it is, really; the claim is that if the configuration support is
adequate then the need to make custom changes should largely or
entirely go away.
> The possibility to do custom scripting doesn't prevent others from
> using the simple configuration options.
No, but it has plenty of other costs. And remember, nobody's
suggesting that you can't have /etc/daily.local, so you can do all the
custom scripting you want; you just can't edit /usr/libexec/daily
without going to the source tree and then typing 'make && make
install'. Just like ls.
Again, how about some examples of things where you want to edit
/etc/daily?
> > Also, configuration should not in general be Turing-complete, because
> > that makes it too hard to reason about and debug. In this business we
> > tend to make configuration Turing-complete when we don't know the
> > range of sensible configurations yet or if that range is extremely
> > large.
>
> So, the possibility of 'Turing-complete' configuration helps you
> exactly in these cases. If you forbid this you limit the range
> of 'sensible configurations' to what you define as sensible.
Yes indeed, but it also means that the range of possible
configurations ceases to include a wide variety of non-sensible (which
often includes broken, inoperable, erratic, failing mysteriously, see
Windows for examples) configurations. This is a feature.
> > Hence, for example, sendmail.cf. However, as the environment
> > matures the unanswered questions tend to get answered, the outlier
> > situations requiring weird configs tend to go away, and eventually the
> > Turing-completeness becomes a liability. Hence, in the same example,
> > Postfix.
>
> Postfix already reinvented part of sendmail.cf because the simple
> configuration options were lacking. And I can assure you, while
> sendmail configuration language is cryptic and arcane, the equivalent
> postfix configuration not covered by the simple configuration options
> is worse to understand or debug or simply impossible.
Yes, well, mail is complicated and difficult and Postfix's
configuration was never all that well designed, but it's still a lot
easier to work with Postfix than to write raw sendmail.cf.
Do you want to bring back starting the network and all daemons from
/etc/rc.local? That gives much more flexibility than ifconfig.* and
rc.conf, after all.
> > I should think we can figure out how to make /etc/daily sufficiently
> > flexible that no ordinary sysadmin should ever need to edit it.
>
> And 640k is enough for everyone. Right.
Yeah, that's so relevant.
--
David A. Holland
dholland%netbsd.org@localhost
Home |
Main Index |
Thread Index |
Old Index