This command is a mix of s6-envdir and importas program. It reads files containing variable assignments on the given directory, adds the variables to the environment, then executes a program.
66-envfile [ -h ] [ -f file ] [ -l ] dir prog
This tool expects to find a regular file(s) in dir containing one or multiple key=value pair. For earch files found, it will parse the file, import the key=value then execs prog with the modified environment.
file is a text file containing lines of the form key = value.Whitespace is permitted before and after key, and before or after value, Quoting is also possible. In this case, the quoting field is treated as one word.
Empty lines, or lines containing only whitespace, are ignored. Lines beginning with # (possibly after some whitespace) are ignored (and typically used for comments). Comments are not possible at the end of lines: key = value # comment is not a valid comment.
Empty value is not permitted.
If key begin by a '!' character: !key=value the key will be removed from the environment after the substitution.
#!/usr/bin/execlineb -P fdmove -c 2 1 66-envfile -f ntpd /etc/66/conf/ foreground { mkdir -p -m 0755 ${RUNDIR} } execl-cmdline -s { ntpd ${CMD_ARGS} }/etc/66/conf/ntpd file contain :
!RUNDIR=/run/openntpd !CMD_ARGS=-d -s
66-envfile reads /etc/66/conf/ntpd file, parses the file, import the variable RUNDIR and CMD_ARGS, replaces the ${RUNDIR} and ${CMD_ARGS} by the corresponding values, unexport the variable then execs the ntpd commandline.
The strict equivalent with s6-envdir and importas command will be:
#!/usr/bin/execlineb -P fdmove -c 2 1 s6-envdir /etc/66/conf importas -u RUNDIR RUNDIR importas -u CMD_ARGS CMD_ARGS foreground { mkdir -p -m 0755 ${RUNDIR} } execl-cmdline -s { ntpd ${CMD_ARGS} }
where /etc/66/conf directory contains two named files RUNDIR and CMD_ARGS written with /run/openntpd and -d -s respectively.