| Server IP : 3.7.136.76 / Your IP : 216.73.216.142 Web Server : Apache/2.4.58 (Ubuntu) System : Linux ip-172-31-39-148 7.0.0-1010-aws #10~24.04.1-Ubuntu SMP PREEMPT Mon Jul 27 17:41:33 UTC 2026 x86_64 User : ubuntu ( 1000) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /snap/core22/2955/usr/share/subiquity/subiquitycore/ |
Upload File : |
# This file is part of subiquity. See LICENSE file for license information.
import shlex
LSB_RELEASE_FILE = "/etc/lsb-release"
LSB_RELEASE_EXAMPLE = "examples/lsb-release-focal"
def lsb_release(path=None, dry_run: bool = False):
"""return a dictionary of values from /etc/lsb-release.
keys are lower case with DISTRIB_ prefix removed."""
if dry_run and path is not None:
raise ValueError("Both dry_run and path are specified.")
if path is None:
path = LSB_RELEASE_EXAMPLE if dry_run else LSB_RELEASE_FILE
ret = {}
try:
with open(path, "r") as fp:
content = fp.read()
except FileNotFoundError:
return ret
for tok in shlex.split(content):
k, _, v = tok.partition("=")
if not k.startswith("DISTRIB_") or not v:
continue
ret[k.replace("DISTRIB_", "").lower()] = v
return ret
if __name__ == '__main__':
print(lsb_release())