Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 19 Aug 2006 12:32:46 +0400
From:      Yar Tikhiy <yar@comp.chem.msu.su>
To:        Brooks Davis <brooks@one-eyed-alien.net>
Cc:        Dag-Erling Sm?rgrav <des@des.no>, src-committers@FreeBSD.org, cvs-all@FreeBSD.org, cvs-src@FreeBSD.org
Subject:   Re: cvs commit: src/etc rc.subr
Message-ID:  <20060819083245.GA23574@comp.chem.msu.su>
In-Reply-To: <20060818154240.GA3050@lor.one-eyed-alien.net>
References:  <200608181210.k7ICAIme084410@repoman.freebsd.org> <86ejvet9m6.fsf@xps.des.no> <20060818143310.GA14203@comp.chem.msu.su> <20060818143508.GA2545@lor.one-eyed-alien.net> <20060818153744.GA14726@comp.chem.msu.su> <20060818154240.GA3050@lor.one-eyed-alien.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Aug 18, 2006 at 10:42:40AM -0500, Brooks Davis wrote:
> On Fri, Aug 18, 2006 at 07:37:44PM +0400, Yar Tikhiy wrote:
> > On Fri, Aug 18, 2006 at 09:35:08AM -0500, Brooks Davis wrote:
> > > On Fri, Aug 18, 2006 at 06:33:11PM +0400, Yar Tikhiy wrote:
> > > > On Fri, Aug 18, 2006 at 04:13:37PM +0200, Dag-Erling Sm?rgrav wrote:
> > > > > Yar Tikhiy <yar@FreeBSD.org> writes:
> > > > > >   Log:
> > > > > >   The ps(1) command is unfriendly to scripts by default because
> > > > > >   it limits the width of its output to the value of $COLUMNS, or
> > > > > >   what TIOCGWINSZ reports, or 79 columns.  We should specify -ww
> > > > > >   to ps(1) so that it removes the limit and prints lines in full.
> > > > > >   Otherwise very long command pathnames could be mishandled, e.g.,
> > > > > >   by _find_processes().
> > > > > 
> > > > > or perhaps _find_processes() should use pgrep(1) instead of ps(1).
> > > > 
> > > > I considered that but had to stick to ps(1) because pgrep was in
> > > > /usr/bin while ps was in /bin.  The use of /usr/bin tools should
> > > > be very limited in rc.subr(8).  OTOH, pgrep uses /lib libs only,
> > > > which makes it possible to transfer pgrep+pkill to /bin if we can
> > > > stand the growth of / by some 50 kbytes.
> > > 
> > > I think that's appropriate since pgrep is such an obvious fit for this
> > > sort of thing.  I think we'll want to consider compatability symlinks
> > > due to existing hardcoded paths in scripts.
> > 
> > Creating the compat symlinks should be as easy as adding the following
> > lines to the Makefile:
> > 
> > SYMLINKS=	${BINDIR}/pgrep /usr/bin/pgrep
> > SYMLINKS+=	${BINDIR}/pkill /usr/bin/pkill
> > 
> > Hopefully they can be removed after a certain period of time.
> > 
> > Should we just override BINDIR in the Makefile and let the things
> > settle before requesting the repo-copy?
> 
> That's probably the best way to go.  Then we get any screaming out of
> the way before the repo surgury happens. :)

The first step is done!  Now let's wait for a little while and then
start using pgrep(1) in rc scripts so that we can retort the screams,
"Nah, it's totally impossible to return it back to /usr/bin because
the rc subsystem relies on it!" :-)

-- 
Yar



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