Files
OpCore-Simplify/Scripts/datasets/os_data.py
2024-09-11 03:55:50 +07:00

41 lines
1.4 KiB
Python

from Scripts import utils
class macOSVersionInfo:
def __init__(self, name, macos_version, release_status = "final"):
self.name = name
self.darwin_version = (int(macos_version.split(".")[1]) + 4) if "10." in macos_version else (int(macos_version.split(".")[0]) + 9)
self.macos_version = macos_version
self.release_status = release_status
macos_versions = [
macOSVersionInfo("High Sierra", "10.13"),
macOSVersionInfo("Mojave", "10.14"),
macOSVersionInfo("Catalina", "10.15"),
macOSVersionInfo("Big Sur", "11"),
macOSVersionInfo("Monterey", "12"),
macOSVersionInfo("Ventura", "13"),
macOSVersionInfo("Sonoma", "14.4+"),
macOSVersionInfo("Sequoia", "15", "beta")
]
u = utils.Utils()
def get_latest_darwin_version():
return macos_versions[-1].darwin_version, 99, 99
def get_lowest_darwin_version():
return macos_versions[0].darwin_version, 0, 0
def get_macos_names(min_darwin, max_darwin):
return [
"macOS {} {}{}".format(data.name, data.macos_version, "" if data.release_status == "final" else " (Beta)")
for data in macos_versions
if min_darwin[0] <= data.darwin_version <= max_darwin[0]
]
def get_macos_name_by_darwin(darwin_version):
for data in macos_versions:
if data.darwin_version == darwin_version[0]:
return "macOS {} {}{}".format(data.name, data.macos_version, "" if data.release_status == "final" else " (Beta)")
return None