audio/virtual_oss: Fix rc script style

Sponsored by:	The FreeBSD Foundation
Reviewed by:	arrowd
Differential Revision:	https://reviews.freebsd.org/D50689
This commit is contained in:
Christos Margiolis 2025-06-04 21:17:47 +02:00
parent cefef16930
commit 8ea5313ee8

View File

@ -37,16 +37,16 @@ status_cmd="${name}_status"
required_modules="cuse" required_modules="cuse"
virtual_oss_default_args="\ virtual_oss_default_args="\
-S \ -S \
-i 8 \ -i 8 \
-C 2 -c 2 \ -C 2 -c 2 \
-r 48000 \ -r 48000 \
-b 24 \ -b 24 \
-s 8.0ms \ -s 8.0ms \
-f /dev/dsp0 \ -f /dev/dsp0 \
-c 2 \ -c 2 \
-d dsp \ -d dsp \
-t dsp.ctl" -t dsp.ctl"
configs= configs=
load_rc_config $name load_rc_config $name
@ -63,85 +63,85 @@ pidpath="/var/run/${name}"
virtual_oss() virtual_oss()
{ {
# When running early we need to pre-load some libraries # When running early we need to pre-load some libraries
env LD_PRELOAD=%%LIBFFTW3%%%%LIBSAMPLERATE%% %%PREFIX%%/sbin/virtual_oss $* env LD_PRELOAD=%%LIBFFTW3%%%%LIBSAMPLERATE%% %%PREFIX%%/sbin/virtual_oss $*
} }
virtual_oss_pids() virtual_oss_pids()
{ {
pids=$(pgrep -d ' ' $name) pids=$(pgrep -d ' ' $name)
pids=${pids% } pids=${pids% }
printf "${pids}" printf "${pids}"
} }
virtual_oss_precmd() virtual_oss_precmd()
{ {
/usr/bin/install -d -m 0755 -o root ${pidpath} /usr/bin/install -d -m 0755 -o root ${pidpath}
} }
start_instance() start_instance()
{ {
config=$* config=$*
instance_args=$(eval "echo \$virtual_oss_${config}") instance_args=$(eval "echo \$virtual_oss_${config}")
if [ -z "${instance_args}" ]; then if [ -z "${instance_args}" ]; then
echo "No such config ${config}" echo "No such config ${config}"
else else
echo -n "Starting Virtual OSS config ${config} ..." echo -n "Starting Virtual OSS config ${config} ..."
${command} \ ${command} \
${command_args} \ ${command_args} \
-D ${pidpath}/${config}.pid \ -D ${pidpath}/${config}.pid \
${instance_args} ${instance_args}
echo " done" echo " done"
fi fi
} }
stop_instance() stop_instance()
{ {
config=$* config=$*
instance_args=`eval "echo \$virtual_oss_${config}"` instance_args=`eval "echo \$virtual_oss_${config}"`
if [ -z "${instance_args}" ]; then if [ -z "${instance_args}" ]; then
echo "No such config ${config}" echo "No such config ${config}"
elif [ -e "${pidpath}/${config}.pid" ]; then elif [ -e "${pidpath}/${config}.pid" ]; then
pid=`check_pidfile ${pidpath}/${config}.pid %%PREFIX%%/sbin/virtual_oss` pid=`check_pidfile ${pidpath}/${config}.pid %%PREFIX%%/sbin/virtual_oss`
if [ ! -z "${pid}" ]; then if [ ! -z "${pid}" ]; then
echo -n "Stopping Virtual OSS config ${config} ... " echo -n "Stopping Virtual OSS config ${config} ... "
kill $pid kill $pid
rm -f ${pidpath}/${config}.pid rm -f ${pidpath}/${config}.pid
echo "done" echo "done"
fi fi
fi fi
} }
virtual_oss_start() virtual_oss_start()
{ {
configs=$* configs=$*
[ -z "${configs}" ] && configs="${virtual_oss_configs}" [ -z "${configs}" ] && configs="${virtual_oss_configs}"
for config in ${configs}; do for config in ${configs}; do
start_instance $config start_instance $config
sleep ${virtual_oss_delay} sleep ${virtual_oss_delay}
done done
} }
virtual_oss_stop() virtual_oss_stop()
{ {
configs=$* configs=$*
[ -z "${configs}" ] && configs="${virtual_oss_configs}" [ -z "${configs}" ] && configs="${virtual_oss_configs}"
for config in ${configs}; do for config in ${configs}; do
stop_instance ${config} stop_instance ${config}
sleep ${virtual_oss_delay} sleep ${virtual_oss_delay}
done done
} }
virtual_oss_status() virtual_oss_status()
{ {
pids=$(virtual_oss_pids) pids=$(virtual_oss_pids)
if [ "${pids}" ]; then if [ "${pids}" ]; then
echo "${name} is running as pid ${pids}." echo "${name} is running as pid ${pids}."
else else
echo "${name} is not running." echo "${name} is not running."
return 1 return 1
fi fi
} }
run_rc_command $* run_rc_command $*