Source code for experimental_lowqa.tasks.yambs.udev
"""
A module for udev-rule tasks.
"""
# built-in
from pathlib import Path
# third-party
from vcorelib.task.subprocess.run import SubprocessLogMixin
[docs]
async def install_udev_rule(task: SubprocessLogMixin, path: Path) -> bool:
"""Install a udev rule."""
result = True
dst = Path("/usr/lib/udev/rules.d", path.name)
if not dst.is_file():
result &= await task.exec(
"sudo", "ln", "-s", str(path.resolve()), str(dst)
)
result &= await task.exec(
"sudo", "udevadm", "control", "--reload-rules"
)
result &= await task.exec("sudo", "udevadm", "trigger")
return result