links to software compatibility and certificates have been moved to the Manual sub-tab

This commit is contained in:
Sergey Palcheh
2025-10-22 14:00:57 +06:00
parent 6f9fd5d984
commit 3451751dcc
2 changed files with 34 additions and 8 deletions

View File

@@ -30,6 +30,7 @@ class Var:
LICENSE_FILE = os.environ.get("LICENSE_FILE")
LICENSE_AGREEMENT_FILE = os.environ.get("AGREEMENT")
THIRD_PARTY_FILE = os.environ.get("THIRD_PARTY_FILE")
ACCORDANCE = os.environ.get("ACCORDANCE")
class DependencyManager:
"""Класс для управления проверкой и установкой системных зависимостей."""
@@ -1793,10 +1794,7 @@ class WineHelperGUI(QMainWindow):
title = "Автоматическая установка"
html_content = ("<h3>Автоматическая установка</h3>"
"<p>Скрипты из этого списка скачают, установят и настроят приложение за вас. Просто выберите программу и нажмите «Установить».</p>"
"<p>Для доступа к экспериментальным скриптам установки отметьте опцию <b>«Показать тестовые версии»</b> внизу списка.</p>"
"<br><h3>Совместимость с дистрибутивами Альт</h3>"
"<p>С полным списком совместимого ПО и сертификатами (не только для WineHelper) можно ознакомиться по следующим ссылкам:<br>"
"<a href='https://www.basealt.ru/fileadmin/user_upload/compatibility/P10-view2.html'>Для 10 платформы</a> | <a href='https://www.basealt.ru/fileadmin/user_upload/compatibility/P11-view2.html'>Для 11 платформы</a></p>")
"<p>Для доступа к экспериментальным скриптам установки отметьте опцию <b>«Показать тестовые версии»</b> внизу списка.</p>")
show_global = False
elif tab_name == "Ручная установка":
title = "Ручная установка"
@@ -3261,10 +3259,36 @@ class WineHelperGUI(QMainWindow):
guide_layout = QVBoxLayout(guide_tab)
guide_text = QTextBrowser()
guide_text.setOpenExternalLinks(True)
guide_text.setHtml("""
# --- Блок Совместимость ---
accordance_html = ""
try:
accordance_file_path = Var.ACCORDANCE
if not accordance_file_path or not os.path.exists(accordance_file_path):
raise FileNotFoundError
with open(accordance_file_path, 'r', encoding='utf-8') as f_acc:
accordance_lines = f_acc.read().strip().splitlines()
if accordance_lines:
accordance_html += '<hr><h2>Совместимость ПО и сертификаты</h2>'
accordance_html += '<p>С полным списком совместимого ПО и сертификатами можно ознакомиться по следующим ссылкам:</p><ul>'
for line in accordance_lines:
url_match = re.search(r'(https?://[^\s]+)', line)
if url_match:
url = url_match.group(1)
description = line[:url_match.start()].strip()
accordance_html += f'<li>{html.escape(description)} <a href="{url}">{url}</a></li>'
else:
accordance_html += f'<li>{html.escape(line)}</li>'
accordance_html += '</ul>'
except Exception as e:
print(f"Не удалось обработать файл ACCORDANCE: {e}")
guide_text.setHtml(f"""
<h2>Руководство пользователя</h2>
<p>Подробное и актуальное руководство по использованию WineHelper смотрите на <a href="https://www.altlinux.org/Winehelper">https://www.altlinux.org/Winehelper</a></p>
""")
<p>Подробное и актуальное руководство по использованию WineHelper смотрите на сайте: <a href="https://www.altlinux.org/Winehelper">https://www.altlinux.org/Winehelper</a></p>
""" + accordance_html)
guide_layout.addWidget(guide_text)
help_subtabs.addTab(guide_tab, "Руководство")