diff options
author | crupest <crupest@outlook.com> | 2023-05-31 22:56:15 +0800 |
---|---|---|
committer | Yuqian Yang <crupest@crupest.life> | 2024-12-18 18:31:27 +0800 |
commit | 410bc000613b355ffcfbcd282061849b5129bdea (patch) | |
tree | 3eff901a5b96eb4ff88d272bed4bb964c6397f1f /tools/cru-py/cru/system.py | |
parent | 889e10a1908c32514edf23518c5ea4c26ffc0ae0 (diff) | |
download | crupest-410bc000613b355ffcfbcd282061849b5129bdea.tar.gz crupest-410bc000613b355ffcfbcd282061849b5129bdea.tar.bz2 crupest-410bc000613b355ffcfbcd282061849b5129bdea.zip |
HALF WORK: for sync.
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") |