#!/bin/sh -e

udevd_live() {
    if [ ! -d /run/udev ]; then
        echo >&2 "  Skipped: Device manager is not running."
        exit 0
    fi
}

op="$1"; shift

case "$op" in
    hwdb)
        /usr/bin/udev-hwdb --usr update
    ;;
    udev-reload)
        udevd_live
        /usr/bin/udevadm control --reload
        /usr/bin/udevadm trigger -c change
        /usr/bin/udevadm settle
    ;;
    *)
        echo >&2 "  Invalid operation '$op'"
        exit 1
    ;;
esac

exit 0
