Subject: Re: NetBSD master CVS tree commits
To: Greg Hudson <firstname.lastname@example.org>
From: Peter Svensson <email@example.com>
Date: 03/31/1996 12:17:51
On Sat, 30 Mar 1996, Greg Hudson wrote:
> A brief statement on why alphabetized symlinks in a directory is evil:
> a good configuration file (or "means of storing configuration
> information," if you prefer) should have the following properties:
> 1. It should be easy to read and edit by a human who has not
> read any documentation.
> 2. It should have a syntax for comments (relevant to (1)).
> 3. It should be verifiable by an automatic procedure.
> 4. It should be editable by an automatic procedure.
> 5. If possible, single errors should not invalidate the entire
> configuration file.
> A shell script has property 2 and, to some degree 1, but automatically
> flunks 3, 4, and 5 because it's Turing-complete. Symlinks in a
> directory have property 3, 4, and 5, but they do not and never will
> have property 1 and 2.
Someone who hasn't read any documentation will make a lot bigger mess
editing the complex rc-scripts than editing one file in init.d.
> Symlinks in a directory have the main advantage that they allow you to
> do ordering with the "ls" command. I think this is a sorry reason to
> use it over a configuration file.
There are quite a few of us who actually quite like the system. I think
the init.d solution is quite beautiful in the same way the /dev concept
is beautiful, the filesystem is a powerful tool.