Subject: virc [was Re: Possible design of the new rc.d rc.conf stuff.]
To: None <>
From: Scott Aaron Bamford <>
List: tech-userlevel
Date: 04/18/2000 19:52:32
>	The view I have now, which I is very clear in my head, is
>that there are four things that the configuration system should have:
>	1) Default values for everything that gets started which
>		should be easy to set for a newly added package.
>	2) The ability to have a either a rc.conf or a /etc/rc.config/*
>		or both.
>	3) The ability to specify which of rc.conf or rc.config/* takes
>		precedent.
>	4) The ability to see what the defaults and actual values are.

I been working on a program for a while but then put it away until i saw this
email. it answered all the questions i had how to do XXX and YYY with it.

The program (virc) works like vipw (suprise suprise) but with the following:

virc on itself locks /etc/rc.conf and edits that `master' file

virc <service>
virc ppp

looks for /etc/rc.d/ppp loads the defaults from there, then searches
rc.conf and rc.options/ppp (or reverse order depening on the setting or
rc_options_prefered) and sets the `overriding' values over the dafaults and
presents the file in vi (or $EDITOR) for editing. on copleation, the changes
(if any) are stored in rc.conf or rc.options/ppp (depending on the setting of

I have included a couple of example scripts (see examples dir and README)
and believe the code ready for testing now (so i can iron out any bugs)
the included man page contains more detail on it.

please feel more than free to check it out and give me feedback! im hopeing
that together with the rc_init idea of eg's this could solve the argument of
mono/split rc.conf.

The tarball (very small 10k and includeding examples) can be downloaded from:

can someone please mirror this and post a new url as the space has very
kindly be lent me by a friend (Michael Adams)  and i dont want to abuse it.

 - Scott
 ------------------------------ `6_6  )   `-.  (     ).`-.__.`) |        (_Y_.)'  ._   )  `._ `. ``-..-' |      _..`--'_..-_/  /--'_.' ,'
 --------------------------- (il),-''  (li),'  ((!.-' ----