From 667dea78d17a91b8926117ce93802ee79ee2205b Mon Sep 17 00:00:00 2001 From: Sergey Palcheh Date: Sun, 9 Mar 2025 21:08:14 +0600 Subject: [PATCH] adding a system wine check --- modules/init_wine.py | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/modules/init_wine.py b/modules/init_wine.py index 60b4180..72c87dc 100644 --- a/modules/init_wine.py +++ b/modules/init_wine.py @@ -1,4 +1,6 @@ import os +import shutil +import subprocess from .log import * from .env_var import * @@ -42,7 +44,35 @@ def init_wine(dist_path): # TODO: mono, gecko else: - # TODO: добавить проверку системного вайна + def check_system_wine(): + # Способ 2: Проверка через переменные окружения в нестандартных путях + wine_env_vars = ["WINEPREFIX", "WINEARCH"] + found_env_vars = {var: os.getenv(var) for var in wine_env_vars if os.getenv(var)} + if found_env_vars: + print("Найдены переменные окружения Wine:") + for var, value in found_env_vars.items(): + print(f"{var}={value}") + else: + print("Переменные окружения Wine не найдены.") + + # Способ 2: Проверка через which в стандартных путях + wine_path_system= shutil.which("wine") + if wine_path_system: + print(f"Wine найден в PATH: {wine_path_system}") + else: + print("Wine не найден в PATH.") + + # Способ 3: Проверка через запуск wine --version + try: + result = subprocess.run(['wine', '--version'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, + text=True) + if result.returncode == 0: + print(f"Установленная версия: {result.stdout.strip()}") + else: + print("Wine не установлен или произошла ошибка.") + except FileNotFoundError: + print("Команда wine не найдена.") + wine_path = "/usr" # общие переменные окружения для любой версии wine