rcNG-fy sysutils/daemontools

Norikatsu Shigemura nork at FreeBSD.org
Tue Jun 29 04:55:10 PDT 2004

On Fri, 25 Jun 2004 12:20:08 -0400
Andrew J Caines <A.J.Caines at halplant.com> wrote:
> Sorry for the slow reply.

	No problem, me too:-).

> > > Even ignoring the overall ugliness of this line, the arbitrary and
> > > unnecessary /bin/csh dependency prevents the use of NO_TCSH=true to make
> > > systems good and pure and free from harm.
> > 	Hum...  I read some daemontools's documents.  According to
> > 	these, I considerd that csh was reqired.  Don't you think it?
> Without addressing the issue of relevant documentation, when I was first
> hit with the NO_TCSH problem I switched the startup script to sh with sh
> syntax and of course it starts svscan fine (since there are no
> dependencies).
> As for ports which use daemontools, I only know djbdns and that doesn't
> have any csh dependency AFAICT.
> I would suggest that much like most low-level system oriented scripts,
> Bourne shell with common syntax should be mandatory, as it is the
> universal unix lowest common denominator.
> If I had my way, I'd rewrite that whole ugly script.

	Yes(of course, I confirmed already committed), but I found reason
	to use csh in daemontools-jp ML.

	1. In some environment (Digital UNIX was reported),
	   init issued SIGHUP to processes before getty invoking.  So
	   svscan would be died.
	2. There is a problem which PGID is not change.

	So, in FreeBSD, svscan should be invoked like following:
/usr/sbin/daemon -f "$command $svscan_servicedir | %%PREFIX%%/bin/readproctitle service errors: ..."

	In this case, there are some merits.
	1. no more '> /dev/null' (instead of daemon(8) -f)
	2. PGID will be changed. (by daemon(8))
	3. kill -HUP? but, In FreeBSD, no issue from any process:-).

More information about the freebsd-ports mailing list