Charlie Brady budge.apana.org.au> writes: > > Yes, that's what the "for each" means > > > > 4) Is there a more detailed description of customised control somewhere? > > I think the man page of runsv is complete and accurate. What do you think > is missing? The source code might help you if you wish to learn more or to > confirm what you read in the man page. Heh, some of my questions might seem dumb but I have read ALL the docs many times over. I have found the documentation to be 100% complete. However sometimes it can be difficult to interpret for all situations (or the particular situation that is in my head :). For example in the above documentation example it might be better to say that the examples given are special cases or that they are examples that apply to all the options. Perhaps also to expand on the description and to describe the exit codes (even if it is repeated from elsewhere). > So you have to fix the service, or do something other than send a term > signal to terminate the service. Regarding the t script, I used this : [ -r ../supervise/pid ] && PID=`cat ../supervise/pid` && kill "$PID" To term the the process but I think the other methods (setting exit codes etc) require less processing so I'll switch to those. OK back to the bluetooth example. I had put the post start tasks in the check script. I found that they were not being run when I rebooted the machine but were being run if I did anything from the command line. I guess this is because when runsvdir starts the service it just issues an up command (no check script is run). I like the idea of the bluetooth-postinit service but it breaks the compatibiltiy with init that I need. Runit services need to exactly mirror what fedora init looks like and be as self contained as an init script. I need this mainly so that I can switch between init and runit services through a (yet to be written) service management gui. It's a shame that runsvdir can't be told to send a 'start' command instead of an up command. I want to keep things as simple as possible so that other people might choose to write runit services as well as an init script. I really appreciate you guys taking the time to answer my questions especially as it is the holiday period. I have one last issue that I see only occasionally. I have every init daemon on my laptop using runit. They are all started by runsvdir/runsvchdir. Very occasionally some critical service does not start up during machine boot with the error 'runsv not started'. I check for the existence of the service directory before starting the service. I think runsvdir has not got to that particular directory due to delays caused by the i/o frenzy during startup and the fact that I do quite a lot of script processing (relatively) before starting a service. This has become quite a big issue for me as I am attempting to get some kind of LSB compatibility in my setup. So if a 'required-start' dependancy fails to start I have to shut it down. Right now I am going to deal with that issue by adding a 'sleep' and retrying if this error occurs. Is there a better way to avoid this issue? Thanks Rehan