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

@@ -7,7 +7,7 @@ if [[ $(id -u) -eq 0 ]] ; then
fi
##### DEFAULT PATH #####
export SCRIPT_NAME USER_WORK_PATH RUN_SCRIPT DATA_PATH CHANGELOG_FILE WH_ICON_PATH LICENSE_FILE AGREEMENT THIRD_PARTY_FILE WH_ICON_TRAY
export SCRIPT_NAME USER_WORK_PATH RUN_SCRIPT DATA_PATH CHANGELOG_FILE WH_ICON_PATH LICENSE_FILE AGREEMENT THIRD_PARTY_FILE WH_ICON_TRAY ACCORDANCE
SCRIPT_NAME="$(basename "$0")"
if [[ "$(realpath "$0")" == "/usr/bin/$SCRIPT_NAME" ]] ; then
@@ -22,6 +22,7 @@ if [[ "$(realpath "$0")" == "/usr/bin/$SCRIPT_NAME" ]] ; then
LICENSE_FILE="/usr/share/doc/winehelper-$WH_VERSION/LICENSE"
AGREEMENT="/usr/share/doc/winehelper-$WH_VERSION/LICENSE_AGREEMENT"
THIRD_PARTY_FILE="/usr/share/doc/winehelper-$WH_VERSION/THIRD-PARTY"
ACCORDANCE="/usr/share/doc/winehelper-$WH_VERSION/ACCORDANCE"
else
# переменные для тестового запуска WineHelper из репозитория
USER_WORK_PATH="$HOME/test-$SCRIPT_NAME"
@@ -33,6 +34,7 @@ else
LICENSE_FILE="$DATA_PATH/LICENSE"
AGREEMENT="$DATA_PATH/LICENSE_AGREEMENT"
THIRD_PARTY_FILE="$DATA_PATH/THIRD-PARTY"
ACCORDANCE="$DATA_PATH/ACCORDANCE"
WH_DEVEL="1"
# минимальная проверка синтаксиса скриптов

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, "Руководство")