archinstall/archinstall/lib/udev/udevadm.py

17 lines
451 B
Python

import typing
import pathlib
from ..general import SysCommand
def udevadm_info(path :pathlib.Path) -> typing.Dict[str, str]:
if path.resolve().exists() is False:
return {}
result = SysCommand(f"udevadm info {path.resolve()}")
data = {}
for line in result:
if b': ' in line and b'=' in line:
_, obj = line.split(b': ', 1)
key, value = obj.split(b'=', 1)
data[key.decode('UTF-8').lower()] = value.decode('UTF-8').strip()
return data