Implement selective start of autostart services

This commit is contained in:
2020-02-14 14:30:22 +01:00
parent 61150df5d7
commit 33805e69b5

View File

@@ -1,11 +1,38 @@
#!/usr/bin/env bash
set -o nounset
# set -x
selective=0
if (( $# > 0 )) ; then
selective=1
services=("${@}")
fi
do_run() {
name="$1"
shift
run=0
if (( $selective )) ; then
for s in "${services[@]}" ; do
if [[ "$s" == "$name" ]] ; then
run=1
fi
done
else
run=1
fi
return $(( ! $run ))
}
run_raw() {
name="$1"
shift
do_run "$name" || return
systemd-run \
--user \
--unit "${name}" \
@@ -46,6 +73,7 @@ run_oneshot() {
schedule() {
name="$1"; shift
spec="$1"; shift
do_run "$name" || return
systemd-run \
--user \
--unit "${name}" \