Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 7 Aug 2008 02:31:09 -0400
From:      "Michael B Allen" <ioplex@gmail.com>
To:        "Mike Meyer" <mwm@mired.org>
Cc:        hackers@freebsd.org, wbentley@futurecis.com
Subject:   Re: Idea for FreeBSD
Message-ID:  <78c6bd860808062331h674b951ei5f7ca95a930f1af4@mail.gmail.com>
In-Reply-To: <20080807010638.267d7790@bhuda.mired.org>
References:  <b58b3fc7f4a07c9b6d55741e2ec25f47.squirrel@secure.futurecis.com> <78c6bd860808061934l133d8ca6nabbde8cd55cb1d27@mail.gmail.com> <20080807010638.267d7790@bhuda.mired.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Aug 7, 2008 at 1:06 AM, Mike Meyer <mwm@mired.org> wrote:
> On Wed, 6 Aug 2008 22:34:51 -0400
> "Michael B Allen" <ioplex@gmail.com> wrote:
>> As for getting rid of rc.d scripts, yes they're decrepit and I would
>> love to see them go but they're simple and third party software may
>> depend on them being the norm.
>
> The only thing decrepit about the rc.d scripts is that they don't all
> support the latest facilities that you'd expect them to. But the way
> to fix that is to update the old ones, not to throw out all of them
> and start over. In particular, if you want to replace them with a
> better format, you need to start by showing that said format is better
> - and chanting buzzwords like "xml" isn't sufficient to do that.

I did not mean to say that the scripts themselves were decrepit. I
mean the whole Unix runlevel rc.d apparatus in general is decrepit.
There should be a library to install, start, stop, restart, uninstall,
disable, enable, change order of services and also change the
runlevel. And then there should be a very small utility that calls the
library to invoke the desired operations from the commandline and from
init. If the library and corresponding utility are implemented
correctly, the format of the file containing service state should be
moot since no one will ever look at it (which is to say dbm or some
other binary-blob format should be used since it makes programming the
said library much cleaner).

And for backwards compatibility you leave the rc.d tree so that a
third party can drop in a script and it will continue to work but
anyone using the said utility would completely bypass all the rc.d
business.

But I just made that up. Of course such things are never as simple as
they sound the first time around.

Mike



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?78c6bd860808062331h674b951ei5f7ca95a930f1af4>