Subject: Re: rc.shutdown isn't enough.
To: Andrew Brown <atatat@atatdot.net>
From: Gandhi woulda smacked you <greywolf@starwolf.com>
List: tech-userlevel
Date: 04/26/1999 22:16:42
On Mon, 26 Apr 1999, Andrew Brown wrote:
# >One _could_ write a setup to handle things such as:
# >
# > rl [ options ... (to be defined) ] {+-}state-or-stage
# >
# >which could be made to handle dependencies, i.e.
# >
# ># rl +component-a
# >* rl: component-a depends on: component-b component-c
# >** rl: component-b depends on component-d
# >*** rl: <startup message for component-d>
# >** rl: <startup message for component-b>
# >** rl: <startup message for component-c>
# >* rl: <statrtup message for component-a>
#
# that's nice.
#
# ># rl -component-a
# >* rl: component-a requires: component-b component-c
# >** rl: <shutting down component-b>
# >** rl: component-b requires component-d
# >*** rl: <shutdown component-d>
# >** rl: <shutting down component-c>
# >* rl: <shutdown component-a>
#
# that's not. that sort of "assumes" that component-b is needed *ONLY*
# for component-a. so...hey! if i pkg_delete xv, should i expect it to
# pkg_delete libjpeg for me? same sort of thing. likewise libc. xv
# has an unstated dependency on lbc...and i don't want it removing that.
You're throwing in a red herring -- shutting down a service is not
as extreme as deleting a package.
# so if i shut down nfs which requires networking, i don't want
# networking shutdown for me. but i also don't want nfs started up if i
# have no networking started.
I think I may have illustrated the logic incorrectly. I meant to
show that if you shut down networking, everything which depends on
networking goes down, not vice versa :-).
# >Probably too complex and bloated, though. I'd still prefer it to the
# >atrocity that is "runlevels" under missed-em 5.
#
# it's a bad idea. once you get into "incredibly finely tuned modular"
# systems like that, everyone comes up with their own "legitimate" uses
# for it that don't quite match (a) they way it comes out of the box or
# (b) the way other people use it.
Welcome to NetBSD. No two systems owned by different people are likely
to be exactly alike.
# and then there's the dependency thing. those scripts, if they're
# gonna work the way they purport to work, they really need to be
# idempotent. and they never are.
I need to look that word up.
As far as the dependency "thing", think of it as a lightweight version
of "make" that goes off at boot time, with different stages established
as different targets.
--*greywolf;
--
If your OS and/or machine absolutely cannot autoboot without manual
intervention, it isn't worth jack.
-- from the notebooks of another heretic.