Subject: Re: more work in rc.d [was Re: rc, rc.shutdown proposed change]
To: Todd Whitesel <toddpw@best.com>
From: Greywolf <greywolf@starwolf.com>
List: tech-pkg
Date: 03/12/2000 22:35:38
On Sun, 12 Mar 2000, Todd Whitesel wrote:

# > What of those of us who have done away with /usr/pkg in favour of
# > /usr/local (someone, please give me a sanity check and tell me that I'm
# > not the only one who did this!)?
# 
# No offense, but I _hope_ you're the only who does this.

None taken.  I'm not the only one who does this, I find.

My reasoning:  I already have a / hierarchy, a /usr/local hierarchy
and a /usr/X11 hierarchy.  Do you really think I've lost that much of
my sanity that I'm going to maintain yet another hierarchy?

Yes, they're packages.  Yes, I want them to live in /usr/local, and I
want my system to forget that /usr/pkg ever existed.  And YES, I do
happen to maintain my own /usr/local source tree in addition to
bi-nightly fetches of pkgsrc.

# Providing a clean, consistent system is already hard enough. I think
# it is a mistake to add additional overhead that supports customized
# restructurings when it would not otherwise be required.

That should be up to the administrator.  I would like to point RC_PKG_DIR
to /usr/local, as well as pointing RC_LOCAL_DIR to /usr/local.  Simple.
Easily handled in a .conf file.  Easily maintained.

# The primary flaw with most SysV-isms, and bogus config systems in general,
# is that machines need very predictable data structures, but anything
# built out of scripts or .INI files, or whatever, stops being predictable
# the minute somebody goofs in the editor, or when application programs are
# forced to invent their own (broken) algorithms to configure something that
# isn't already provided for.

...which is why I don't have a problem with editing a master config
and pushing it out via rdist/rsync.

# A great example of this latter point is WinBlows
# drivers that want to be the last line of AUTOEXEC, and keep appending lines
# to it on every reboot.

Yeah, I went to that concert, too.

# The single great strength of the old-style monolithic rc system is that
# virtually every change forces a person to approve it, and people generally
# are going to get it right (or realize their mistake when they don't).

Hey, I won't be ditching my monolithic rc any time soon, believe me.  But
if I have to have a rc*.d syndrome on my machine, I'd like to be able to
configure the symptoms.

# Machines have no such judgement built-in, and have to be taught it line by
# line. Thus keeping the config system as brain-damagedly simple as possible
# is the easiest way to keep the rest of the software from screwing it up.

I will admit, though, that it *was* nice to be able to go through and
g/pkg/s/pkg/local/g on my /etc/rc.local after installing ssh, and it
just kind of works.

# Todd Whitesel
# toddpw @ best.com

				--*greywolf;
--
BSD: The devil's advocate.