⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.96
Server IP:
147.93.97.220
Server:
Linux srv843233 6.8.0-71-generic #71-Ubuntu SMP PREEMPT_DYNAMIC Tue Jul 22 16:52:38 UTC 2025 x86_64
Server Software:
nginx/1.28.0
PHP Version:
8.2.29
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
lib
/
python3
/
dist-packages
/
landscape
/
lib
/
View File Name :
os_release.py
"""Get information from os-release.""" import os OS_RELEASE_FILENAME = "/var/lib/snapd/hostfs/etc/os-release" OS_RELEASE_FILENAME_FALLBACK = "/etc/os-release" OS_RELEASE_FILENAME_SECONDARY_FALLBACK = "/usr/lib/os-release" OS_RELEASE_FILE_KEYS = { "NAME": "distributor-id", "PRETTY_NAME": "description", "VERSION_ID": "release", "VERSION_CODENAME": "code-name", } def get_os_filename(): """ Provide the appropriate file for os release info. If a snap, we want the host os so need to use /var/lib/snapd/hostfs/etc/os-release, if not a snap /etc/os-release will be used as first fallback or /usr/lib/os-release as a fallback as indicated in os-release at Freedesktop.org """ os_filename = OS_RELEASE_FILENAME if not os.path.exists(os_filename) or not os.access( os_filename, os.R_OK, ): os_filename = OS_RELEASE_FILENAME_FALLBACK if not os.path.exists(os_filename) or not os.access( os_filename, os.R_OK, ): os_filename = OS_RELEASE_FILENAME_FALLBACK return os_filename def parse_os_release(os_release_filename=None): """ Returns a C{dict} holding information about the system LSB release by attempting to parse C{os_release_filename} if specified. If no filename is provided @raises: A FileNotFoundError if C{filename} does not exist. """ info = {} if os_release_filename is None: os_release_filename = get_os_filename() with open(os_release_filename) as fd: for line in fd: key, value = line.split("=") if key in OS_RELEASE_FILE_KEYS: key = OS_RELEASE_FILE_KEYS[key.strip()] value = value.strip().strip('"') info[key] = value return info