diff options
Diffstat (limited to 'tools/cru-py/cru/system.py')
-rw-r--r-- | tools/cru-py/cru/system.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tools/cru-py/cru/system.py b/tools/cru-py/cru/system.py new file mode 100644 index 0000000..2e05cd1 --- /dev/null +++ b/tools/cru-py/cru/system.py @@ -0,0 +1,22 @@ +import re +import os.path + + +def check_debian_derivative_version(name: str) -> None | str: + if not os.path.isfile("/etc/os-release"): + return None + with open("/etc/os-release", "r") as f: + content = f.read() + if not f"ID={name}" in content: + return None + m = re.search(r'VERSION_ID="(.+)"', content) + if m is None: return None + return m.group(1) + + +def check_ubuntu_version() -> None | str: + return check_debian_derivative_version("ubuntu") + + +def check_debian_version() -> None | str: + return check_debian_derivative_version("debian") |