run (646B)
1 #!/bin/sh 2 3 . /etc/runit/common 4 #TODO move to /etc/runit/common 5 #TODO find a less ugly way 6 need() 7 { 8 i=0 9 while ! test -e "$1" 10 do 11 sleep "0.$i" 12 test "$i" = 9 || i=$((i+1)) 13 done 14 } 15 16 make_dir "/run/" udev root root 17 rm -f /run/udev/control # just in case 18 rm -f /run/udevd_ready # just in case 19 ( 20 need /run/udev/control # not sure we really need to wait for it 21 echo "Trigger+settle:" 22 udevadm --debug trigger --type=subsystems --action=add 23 udevadm --debug trigger --type=devices --action=add 24 udevadm --debug settle 25 >/run/udevd_ready 26 echo "Done: trigger+settle" 27 ) & 28 29 echo "Starting $SVNAME" 30 exec env - PATH="$PATH" /lib/systemd/systemd-udevd