Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Proposed new /etc/rc.d/drvctl script



    Date:        Thu, 10 Apr 2025 14:25:45 +0200
    From:        Christoph Badura <bad%bsd.de@localhost>
    Message-ID:  <20250410122545.GA26029%irregular-apocalypse.k.bsd.de@localhost>

  | echo '$start_precmd="$start_precmd; drvctl -d pchb0' >> /etc/rc.conf.d/modules

That would want to be:

echo 'start_precmd=${start_precmd:+"${start_precmd}; "}"drvctl -d pchb0"' \
	 >> /etc/rc.conf.d/modules

or the new command could be prepended, that's a bit easier, as

	cmd;

is legal sh code, but

	;cmd

is not (hence all the crud above), so:

echo 'start_precmd="drvctl -d pchb0; ${start_precmd:-}"' >> /etc/rc.conf.d/modules

should work, and both be the same when there is no existing start_precmd.

Or the way Iain Hibbert suggested, though I doubt there's much point wrapping
one single command in a function (if one wanted more than that one command,
perhaps testing something, maybe the "pchb0" string could come from a variable
set in rc.conf, and the command only be run if that var is set

modules_prestart()
{
	if test -n "${bus_to_delete:-}"
	then
		drvctl -d "${bus_to_delete}"
	fi
}

perhaps (but do think of a better name for the variable, and do set
it in rc.conf when required).

kre



Home | Main Index | Thread Index | Old Index