[PATCH] Fancy rc startup (revisited)

Eric Anderson anderson at freebsd.org
Fri May 25 04:14:56 UTC 2007


On 05/13/07 15:14, Giorgos Keramidas wrote:
> On 2007-05-13 14:29, Eric Anderson <anderson at freebsd.org> wrote:
>> On 05/12/07 22:18, Giorgos Keramidas wrote:
>>> I am kind of old-fashioned in the Robert
>>> way too, however.  If there was a way to minimize the console output
>>> when services are starting, i.e. to print something like:
>>>
>>>   [last kernel message]
>>>
>>>   Booting FreeBSD: dumpon initrandom fsck root hostid mountcritlocal
>>>   var cleanvar random adjkerntz hostname kldxref swap sysctl netif (lo0
>>>   fxp0) pflog pf routing devd nsswitch devfs syslogd ldconfig named
>>>   auditd tmp cleartmp dmesg virecover local motd ntpd powerd syscons
>>>   sshd sendmail cron securelevel power_profile inetd
>>>
>>>   foo login:
>>>
>>> where each rc.d script would only print its name if it *was* enabled
>>> with xxx_enable, optionally followed by a parenthesized list of
>>> single-word status messages for each subscript/component), would be
>>> really neat.
>>>
>>> Is there any easy way we can 'tune' the fancy script to support the
>>> current output style, a very brief style like above, and then a fancy
>>> colorful style, depending on an rc.conf setting?
>> I think the rc_fancy patch could be pretty easily tweaked to do exactly 
>> what you say.
> 
> Yeah, that was my impression from skimming through the changes :)

I was wrong.  To do it right, I think we'd need to capture all output 
from rc scripts, and output them in a unified way.  I'm thinking of 
replacing all 'echo' statements that output text to STDOUT, with a 
function like rc_echo, which does different things depending on the 
settings of an rc.conf set of variables.  Then, you'd have a main 
rc.conf knob, called rc_output_style, with settings like OFF/NO/NONE, 
QUIET, SHORT, FANCY, and a rc_output_color YES/NO toggle, so any one of 
those could be colorful or not.  The default would be as it looks 
without any of this, but the options would be the 'FANCY' style, like my 
patch does now with the fancy [ OK ] type messages, SHORT style would 
output similar to above, QUIET would output nothing.  NONE/OFF/NO/etc 
would all just print output as it currently is.

Comments?

>> I might give it a go, and add that as another option to it.  Maybe
>> then the variable should change to rc_style_* instead?
> 
> Can I help with testing or even writing the necessary changes?

Sure!  Let's get it ironed out first, then we'll write it..

Thanks,
Eric





More information about the freebsd-current mailing list