Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e90c365010 | ||
|
|
4e3ab5fba0 | ||
|
|
3dbfea89e3 | ||
|
|
daa13f2e4c | ||
|
|
2aca05928a | ||
|
|
8b2af7015b | ||
|
|
4315cd0e3f | ||
|
|
fa10a3cf0e | ||
|
|
9f932c4403 | ||
|
|
b725be78d1 | ||
|
|
7cbd3cffc7 | ||
|
|
190698a1b4 | ||
|
|
c96033311c | ||
|
|
0a225d4c3d | ||
|
|
18b92b66b1 | ||
|
|
230315bc57 | ||
|
|
3d981158b0 | ||
|
|
4ad1e38141 | ||
|
|
ae24b2386e | ||
|
|
8b5b199ff1 | ||
|
|
af291e9c7a | ||
|
|
c8cb60e42c | ||
|
|
4d508afb44 | ||
|
|
f36869bea5 | ||
|
|
0e311b5d07 | ||
|
|
cfbb6030b5 | ||
|
|
8661d0258d | ||
|
|
9bb7dc7db0 | ||
|
|
1f08c75cb2 | ||
|
|
17802d2bc5 | ||
|
|
86694b3721 | ||
|
|
ad37601b23 | ||
|
|
a6d894ce99 | ||
|
|
8877012ec4 | ||
|
|
5774e033d4 | ||
|
|
de8294b34d | ||
|
|
273e86958d | ||
|
|
d0f3d0f8d6 | ||
|
|
fc01de74b2 | ||
|
|
eb5d6bb613 | ||
|
|
e65cd2386c | ||
|
|
6b094f4905 | ||
|
|
7f44432388 | ||
|
|
fbfccd0417 | ||
|
|
1942d49f4d | ||
|
|
ab2933f8b0 | ||
|
|
4b985417c4 | ||
|
|
d52bec4798 | ||
|
|
f2c7ecf926 | ||
|
|
a929411daf | ||
|
|
8114b3cb54 | ||
|
|
04e974a0b7 | ||
|
|
efe8ef7267 | ||
|
|
ecc7a401ee | ||
|
|
9b5d4543d7 | ||
|
|
6df0bed1e1 | ||
|
|
532f248643 | ||
|
|
c76750da3b | ||
|
|
7b4c9ec0b7 | ||
|
|
a50315d0e9 | ||
|
|
6ae317f9aa | ||
|
|
1e914273b2 | ||
|
|
01c3c5bd35 | ||
|
|
6738b628f1 | ||
|
|
a4c6ef89bf | ||
|
|
2bfb574ba1 | ||
|
|
03939508ff | ||
|
|
638eabb626 | ||
|
|
f6c3c0c1fd | ||
|
|
3d5d1cfa44 | ||
|
|
b0ed131bb5 | ||
|
|
12d947a64a | ||
|
|
5929ef09a4 | ||
|
|
30001f93d5 | ||
|
|
bde9d9aead | ||
|
|
3ae34975c2 | ||
|
|
7458e5fa73 | ||
|
|
c08d78b9db | ||
|
|
3ae3ba11f3 | ||
|
|
3266e16fb4 | ||
|
|
735982dc79 | ||
|
|
d1291a7af0 | ||
|
|
e8ca756cdc | ||
|
|
5d27f5849c | ||
|
|
fd7175e275 | ||
|
|
0f023a1dff | ||
|
|
38fb16f022 | ||
|
|
5dffbe4670 | ||
|
|
e2beb5cb3d | ||
|
|
8f48d7b37c | ||
|
|
6d117901d1 | ||
|
|
918e6142d5 | ||
|
|
8e8355de13 | ||
|
|
2a5796e542 | ||
|
|
b1d0737f54 | ||
|
|
ed1fd3319a | ||
|
|
10421a8fcb | ||
|
|
9cec5328d6 | ||
|
|
1258dc32c6 | ||
|
|
30379cd66a | ||
|
|
73de218445 | ||
|
|
7c544b48da | ||
|
|
23e84a378c | ||
|
|
142e565637 | ||
|
|
ec66229043 | ||
|
|
9572b91dde | ||
|
|
5cab2bf142 | ||
|
|
d0947318a3 | ||
|
|
5e49cefed5 | ||
|
|
d0f6b59f51 | ||
|
|
8c523f316f | ||
|
|
9138f09772 | ||
|
|
69f38db20c | ||
|
|
51a3fa452b | ||
|
|
f1837ca9b3 | ||
|
|
4b6fab878f | ||
|
|
2121a110ed | ||
|
|
2fe7a31b54 | ||
|
|
32070ec065 | ||
|
|
5e4f63c50b | ||
|
|
10ca3b3c98 | ||
|
|
0475c7e058 | ||
|
|
b146b01a82 | ||
|
|
41232f2315 | ||
|
|
73696de876 | ||
|
|
3cbdef4f00 | ||
|
|
4b0fea887b | ||
|
|
4d77861863 | ||
|
|
2854f8751b | ||
|
|
53a09b13d7 | ||
|
|
0df709380c | ||
|
|
e49a267d4c | ||
|
|
9724b75fc2 | ||
|
|
436e250932 | ||
|
|
6160eef77b | ||
|
|
26a92bea4d | ||
|
|
de57b947bf | ||
|
|
e43678193a | ||
|
|
032c03fbb1 | ||
|
|
8d82125e74 | ||
|
|
f067412a29 | ||
|
|
d9ffca88d1 | ||
|
|
7d925bdd15 | ||
|
|
bcf53c361c | ||
|
|
5b38f2c10d | ||
|
|
aec21eda1e | ||
|
|
f8ce14d725 | ||
|
|
ce1fb05fc7 | ||
|
|
659b0b1f5b | ||
|
|
3732f71b7b | ||
|
|
d4f2d367b5 | ||
|
|
a75e6c4f83 | ||
|
|
fd2759f52b | ||
|
|
06f3cbaf68 | ||
|
|
cf375cc5c4 | ||
|
|
681d80f0d8 | ||
|
|
07ca88cb64 | ||
|
|
0cf3425f14 | ||
|
|
e4f56c7164 | ||
|
|
fb0336b3ef | ||
|
|
5095e73409 | ||
|
|
bc6000018b | ||
|
|
e3adf19624 | ||
|
|
dc7a996060 | ||
|
|
eca1905c62 | ||
|
|
371b2b7484 | ||
|
|
1f4cb54f54 | ||
|
|
af52bd74d0 | ||
|
|
ded62bd9ac | ||
|
|
15b6fdd216 | ||
|
|
33bba61891 | ||
|
|
cbf0bdbf8a | ||
|
|
5953d4b122 | ||
|
|
e12b24ccbc | ||
|
|
4d653cdd41 |
No files matched your search
@@ -0,0 +1,48 @@
|
||||
# Python
|
||||
__pycache__/
|
||||
*.py[cod]
|
||||
*$py.class
|
||||
*.so
|
||||
.Python
|
||||
build/
|
||||
develop-eggs/
|
||||
dist/
|
||||
downloads/
|
||||
eggs/
|
||||
.eggs/
|
||||
lib/
|
||||
lib64/
|
||||
parts/
|
||||
sdist/
|
||||
var/
|
||||
wheels/
|
||||
*.egg-info/
|
||||
.installed.cfg
|
||||
*.egg
|
||||
|
||||
# Virtual environments
|
||||
venv/
|
||||
ENV/
|
||||
env/
|
||||
.venv/
|
||||
|
||||
# IDE
|
||||
.idea/
|
||||
.vscode/
|
||||
*.swp
|
||||
*.swo
|
||||
*~
|
||||
.project
|
||||
.pydevproject
|
||||
.settings/
|
||||
|
||||
# OS
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
|
||||
# Logs
|
||||
*.log
|
||||
|
||||
# Temporary files
|
||||
*.tmp
|
||||
*.bak
|
||||
@@ -0,0 +1,232 @@
|
||||
# WineHelper - Руководство для AI агентов
|
||||
|
||||
## Обзор проекта
|
||||
|
||||
WineHelper — инструмент для упрощения установки Windows-приложений на Linux. Использует подготовленные скрипты, портативные версии Wine и изолированные префиксы, обеспечивая максимальную идентичность на различных операционных системах, основанных на ALT Linux (начиная с релиза p10 и выше).
|
||||
|
||||
**Лицензия:** GNU Lesser General Public License v2.1 (LGPL-2.1+)
|
||||
|
||||
**Автор:** Mikhail Tergoev (2025)
|
||||
|
||||
**Язык документации и комментариев:** Русский
|
||||
|
||||
**Статус проекта:** WIP (work in progress)
|
||||
|
||||
## Технологический стек
|
||||
|
||||
### Основные технологии
|
||||
- **Bash** — основной язык для CLI-интерфейса (~2692 строк в главном скрипте)
|
||||
- **Python 3** — графический интерфейс с использованием PyQt5
|
||||
- **Wine** — запуск Windows-приложений (поддерживаются различные версии: vanilla, staging, Proton, tkg, crossover)
|
||||
- **DXVK/VKD3D** — трансляция DirectX → Vulkan
|
||||
|
||||
### Зависимости Python
|
||||
- PyQt5 (основной GUI фреймворк)
|
||||
- Стандартная библиотека Python (os, subprocess, sys, re, shlex, shutil, html)
|
||||
|
||||
### Системные зависимости
|
||||
- i586-версии библиотек (для 32-битных приложений, если не используется wow64)
|
||||
- wget/curl для загрузки
|
||||
- 7z, tar для распаковки
|
||||
- wrestool, icotool для извлечения иконок из .exe
|
||||
- winetricks для управления компонентами Wine
|
||||
|
||||
## Структура проекта
|
||||
|
||||
```
|
||||
winehelper/
|
||||
├── winehelper # Главный bash-скрипт (CLI)
|
||||
├── winehelper_gui.py # GUI на PyQt5 (точка входа)
|
||||
├── winehelperqt/ # Python-модуль GUI
|
||||
│ ├── __init__.py # Экспорты основных классов
|
||||
│ ├── dialogs/ # Диалоговые окна
|
||||
│ │ ├── base_version_dialog.py
|
||||
│ │ ├── component_version.py
|
||||
│ │ ├── create_prefix.py # Создание префикса
|
||||
│ │ ├── file_associations.py
|
||||
│ │ ├── settings.py # Настройки
|
||||
│ │ ├── wine_version.py # Выбор версии Wine
|
||||
│ │ └── winetricks_manager.py
|
||||
│ ├── parsers/ # Парсеры
|
||||
│ │ ├── script_parser.py # Парсинг скриптов установки
|
||||
│ │ ├── sha256_parser.py # Парсинг sha256sum.list
|
||||
│ │ └── winetricks_parser.py
|
||||
│ ├── services/ # Бизнес-логика
|
||||
│ │ ├── application_installer.py
|
||||
│ │ ├── desktop_file_manager.py
|
||||
│ │ ├── prefix_manager.py # Управление префиксами
|
||||
│ │ ├── process_handler.py
|
||||
│ │ └── winetricks_service.py
|
||||
│ ├── utils/ # Утилиты
|
||||
│ │ └── log_handler.py # Обработка логов
|
||||
│ └── widgets/ # Кастомные виджеты
|
||||
├── autoinstall/ # Скрипты автоматической установки (43 приложения)
|
||||
├── manualinstall/ # Скрипты ручной установки (9 приложений)
|
||||
├── testinstall/ # Тестовые скрипты установки
|
||||
├── database/ # Базы данных префиксов (.whdb файлы)
|
||||
├── image/ # Иконки приложений и GUI ресурсы
|
||||
│ ├── gui/ # Иконки приложения (SVG)
|
||||
│ └── handbook/ # Скриншоты для документации
|
||||
├── hiden_scripts/ # Скрытые/вспомогательные скрипты
|
||||
├── auto_completion/ # Автодополнение для bash
|
||||
├── dependencies.sh # Установка системных зависимостей
|
||||
├── sha256sum.list # SHA256 хеши загружаемых файлов
|
||||
└── winehelper.desktop # Desktop-файл для запуска GUI
|
||||
```
|
||||
|
||||
## Архитектура кода
|
||||
|
||||
### CLI (winehelper)
|
||||
|
||||
Главный скрипт `winehelper` — монолитный bash-скрипт с функциональными блоками:
|
||||
|
||||
1. **Переменные и окружение** — определение путей, версий, флагов
|
||||
2. **Функции сообщений** — цветной вывод в терминал
|
||||
3. **Утилиты** — работа с файлами, архивами, скачивание
|
||||
4. **Управление префиксами** — создание, удаление, бэкап/восстановление
|
||||
5. **Wine management** — установка версий Wine, DXVK, VKD3D
|
||||
6. **Desktop integration** — создание .desktop файлов, меню
|
||||
7. **Основной цикл** — обработка аргументов командной строки
|
||||
|
||||
### GUI (winehelperqt)
|
||||
|
||||
Модульная архитектура PyQt5:
|
||||
|
||||
- **WineHelperGUI** — главное окно, управление вкладками
|
||||
- **PrefixManager** — CRUD операции с префиксами
|
||||
- **ApplicationInstaller** — установка приложений
|
||||
- **ScriptParser** — парсинг информации из скриптов установки
|
||||
- **Диалоги** — модальные окна для настроек и выбора
|
||||
|
||||
### Скрипты установки
|
||||
|
||||
Каждый скрипт установки — это bash-скрипт с переменными:
|
||||
|
||||
```bash
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: Описание программы
|
||||
export PROG_URL="https://example.com"
|
||||
export WH_WINE_USE="wine-10.18.1-alt1-wow64" # Версия Wine
|
||||
export WINEPREFIX="prefix_name" # Имя префикса
|
||||
export PROG_NAME="Название программы"
|
||||
export BASE_PFX="base_prefix_v01" # Базовый шаблон (опционально)
|
||||
export WINEARCH="win64" # Архитектура (win32/win64)
|
||||
export INSTALL_DLL="corefonts msxml3..." # DLL через winetricks
|
||||
|
||||
# Логика установки
|
||||
prepair_wine
|
||||
try_download "URL" "${FILE_PATH}"
|
||||
unpack "${FILE_PATH}" "${DEST_DIR}"
|
||||
wine_run_install "${SETUP_EXE}" /S
|
||||
create_desktop "Имя ярлыка" "${EXE_PATH}" "icon_name"
|
||||
```
|
||||
|
||||
## Режимы работы
|
||||
|
||||
### Системный режим
|
||||
Когда скрипт установлен в `/usr/bin/winehelper`:
|
||||
- Данные в `/usr/share/winehelper/`
|
||||
- Рабочая директория пользователя: `~/.local/share/winehelper/`
|
||||
- Иконки в `/usr/share/icons/...`
|
||||
|
||||
### Режим разработки
|
||||
При запуске из репозитория:
|
||||
- Рабочая директория: `~/test-winehelper/`
|
||||
- Данные берутся из текущей директории
|
||||
- Включается проверка синтаксиса скриптов
|
||||
|
||||
## Команды CLI
|
||||
|
||||
```bash
|
||||
# Установка
|
||||
winehelper install list # Список доступных программ
|
||||
winehelper -i <script_name> # Установить программу
|
||||
winehelper -i <script_name> /path # Установить из дистрибутива
|
||||
|
||||
# Управление префиксами
|
||||
winehelper create-prefix # Создать префикс
|
||||
winehelper remove-prefix [name] # Удалить префикс
|
||||
winehelper backup-prefix [name] # Создать бэкап (.whpack)
|
||||
winehelper restore-prefix <path> # Восстановить из бэкапа
|
||||
|
||||
# Wine tools
|
||||
winehelper winecfg # Настройки Wine
|
||||
winehelper winereg # Редактор реестра
|
||||
winehelper winefile # Файловый менеджер
|
||||
winehelper winetricks [component] # Winetricks
|
||||
winehelper <file.exe> # Запустить exe в префиксе
|
||||
|
||||
# Управление компонентами
|
||||
winehelper install-dxvk [version] # Установить DXVK
|
||||
winehelper install-vkd3d [version] # Установить VKD3D
|
||||
winehelper change-wine [version] # Сменить версию Wine
|
||||
|
||||
# Другое
|
||||
winehelper --debug <command> # Режим отладки
|
||||
winehelper --changelog # История изменений
|
||||
winehelper gui # Запустить GUI
|
||||
```
|
||||
|
||||
## Разработка
|
||||
|
||||
### Запуск в режиме разработки
|
||||
|
||||
```bash
|
||||
# GUI режим
|
||||
./winehelper gui
|
||||
|
||||
# CLI режим
|
||||
./winehelper install list
|
||||
./winehelper -i alta-expert
|
||||
```
|
||||
|
||||
### Добавление нового скрипта установки
|
||||
|
||||
1. Создать файл в `autoinstall/` (для автоматической установки) или `manualinstall/` (требуется дистрибутив)
|
||||
2. Добавить обязательные переменные: `PROG_NAME`, `WINEPREFIX`, `WH_WINE_USE`, `PROG_URL`
|
||||
3. Добавить комментарий `# info_ru:` с описанием
|
||||
4. Добавить иконку в `image/` (PNG, имя совпадает с переменной в create_desktop)
|
||||
5. Обновить `sha256sum.list` если требуется загрузка архивов
|
||||
|
||||
### Требования к коду
|
||||
|
||||
**Bash:**
|
||||
- Использовать `#!/usr/bin/env bash`
|
||||
- Проверять наличие переменных перед использованием
|
||||
- Использовать функции обработки ошибок (`fatal`, `print_error`)
|
||||
- Экранировать все пути с помощью кавычек
|
||||
|
||||
**Python:**
|
||||
- Импортировать из `winehelperqt` относительно
|
||||
- Использовать type hints где возможно
|
||||
- Документация на русском языке
|
||||
- Классы должны наследоваться от соответствующих QWidget
|
||||
|
||||
## Безопасность
|
||||
|
||||
- Скрипт запрещает запуск от root
|
||||
- Проверяет noexec для /home
|
||||
- Проверяет SHA256 хеши загружаемых файлов
|
||||
- Использует временные файлы с ограниченными правами (600)
|
||||
- Поддержка лицензионного соглашения перед установкой
|
||||
|
||||
## Особенности ALT Linux
|
||||
|
||||
- Требуется репозиторий x86_64-i586 для 32-битных зависимостей
|
||||
- Интеграция с RPM (версия определяется через `rpm -q winehelper`)
|
||||
- Использование apt-get для установки зависимостей
|
||||
- Desktop-файлы размещаются в `~/.local/share/applications/`
|
||||
|
||||
## Полезные ссылки
|
||||
|
||||
- Официальная документация: https://www.altlinux.org/Winehelper
|
||||
- Совместимость ПО (P10): https://www.basealt.ru/fileadmin/user_upload/compatibility/P10-view2.html
|
||||
- Совместимость ПО (P11): https://www.basealt.ru/fileadmin/user_upload/compatibility/P11-view2.html
|
||||
|
||||
## Сторонние компоненты
|
||||
|
||||
- Wine / Wine-Staging / Proton / wine-tkg
|
||||
- Wine-Mono, Wine-Gecko
|
||||
- DXVK, VKD3D
|
||||
- Winetricks
|
||||
- wine-cpcsp_proxy (для КриптоПро)
|
||||
@@ -1,8 +1,54 @@
|
||||
История изменений:
|
||||
|
||||
0.12.0
|
||||
* исправлена работа cpcsp_proxy при монтировании home с флагом noexec
|
||||
* обновлены все скрипты установки ВЭД и СТМ
|
||||
|
||||
0.11.0
|
||||
* исправлена работа WineHelper при монтировании home с флагом noexec
|
||||
* исправлена иконка графического режима Qt5
|
||||
* добавлена автоматическая архивация лога, если он больше 10 Мб
|
||||
* исправлена работа сертификатов для emias (спасибо lav@)
|
||||
|
||||
0.10.0
|
||||
* добавлены скрипты установок:
|
||||
- apropos-z
|
||||
- olimp
|
||||
* обновлены скрипты установок:
|
||||
- ctm-service
|
||||
- emias
|
||||
* добавлены версии wine:
|
||||
- wine-11.3.1-alt1-wow64
|
||||
- wine-10.18.1-alt2-i586
|
||||
- wine-9.0-cx-amd64
|
||||
* добавлена поддержка wine-cx (форк wine от crossover)
|
||||
* небольшие улучшения графического режим Qt5
|
||||
|
||||
0.9.0
|
||||
* добавлена поддержка wine-wow64 (не требует установку 32-битных зависимостей в систему)
|
||||
* добавлена поддержка wine-cpcsp_proxy для wine-wow64 (не требует установку 32-битного КриптоПро в систему)
|
||||
* добавлен пропуск проверки 32-битных зависимостей если используется wine-wow64
|
||||
* обновлен графический режим Qt5:
|
||||
- исправлены/улучшены основные функции
|
||||
- исправлено отображение иконок для ярлыков (desktop файлов)
|
||||
- добавлена возможность запуска "Панели управления Wine"
|
||||
- настройки ассоциации файлов, ESYNC, FSYNC, DXVK и VK3D сгруппированы в "Дополнительные настройки"
|
||||
- удалены не используемые версии wine
|
||||
- добавлен фильтр ограничения использования версии Wine в зависимости от префикса
|
||||
* добавлены скрипты установок:
|
||||
- dialux 4
|
||||
- ksamu
|
||||
- emias
|
||||
* обновлен скрипт для установки ved-control
|
||||
* налоговые программы переведены на 64-битные префиксы и wine-wow64
|
||||
* программы t-flex переведены на использование wine-wow64
|
||||
* программы arm-kt переведены на использование wine-wow64
|
||||
* улучшено создание базового префикса
|
||||
* улучшено создание и распаковка резервных копий префикса
|
||||
|
||||
0.8.0
|
||||
* добавлено автоопределение .reg и .dll файлов для их добавленния в реестр префикса
|
||||
* во вкладку "Справка" добавлены ссылки на старницы с сертификатами
|
||||
* во вкладку "Справка" добавлены ссылки на страницы с сертификатами
|
||||
* другие небольшие улучшения и оптимизации скриптов и графического интерфейса
|
||||
|
||||
0.7.0
|
||||
@@ -30,7 +76,7 @@
|
||||
winehelper install arm-kt-prof - "АРМ КТ ПРОФ ПРОФЕССИЯ"
|
||||
winehelper install arm-kt-spo - "АРМ КТ ПРОФ СПО"
|
||||
winehelper install arm-kt-vuz - "АРМ КТ ПРОФ ВУЗ"
|
||||
* winehelper killal - убивает только процессы запущенные в WinwHelper
|
||||
* winehelper killall - убивает только процессы запущенные в WineHelper
|
||||
* другие небольшие улучшения и оптимизации скриптов
|
||||
|
||||
0.5.4:
|
||||
@@ -129,10 +175,10 @@
|
||||
|
||||
0.3.8:
|
||||
* добавлена возможность ассоциации и запуска файлов из WINE в нативном Linux
|
||||
приложении с помощью перемененной. Пример: WH_XDG_OPEN="rtf txt doc"
|
||||
приложении с помощью переменной. Пример: WH_XDG_OPEN="rtf txt doc"
|
||||
* добавлен выбор префикса, если переменная WINEPREFIX не объявлена
|
||||
* добавлено сохранение последней конфигурации использования префикса
|
||||
* добавлено сохранение скписка создаваемых ярлыков для приложений
|
||||
* добавлено сохранение списка создаваемых ярлыков для приложений
|
||||
|
||||
0.3.7:
|
||||
* обновлены функции создания desktop файлов (ярлыков) и категория WineHelper в меню
|
||||
@@ -182,7 +228,7 @@
|
||||
0.3.0:
|
||||
* добавлена автоматическое определение версии ПО "Декларация", с возможностью последующего обновления поверх старой версии программы
|
||||
* обновлена версия tester_n - до актуальной на 10.03.2025
|
||||
* npul - доработано определения дополнительного обновления
|
||||
* npul - доработано определение дополнительного обновления
|
||||
* упрощен вывод списка возможных установок
|
||||
* добавлена возможность установки ПО без использования подготовленного префикса
|
||||
Пример: "winehelper install declaration --clear-pfx"
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
* **Простая установка**: Устанавливайте Windows-приложения с помощью готовых скриптов, как в автоматическом, так и в ручном режиме.
|
||||
* **Изолированные окружения**: Каждое приложение устанавливается в свой собственный, изолированный префикс, что предотвращает конфликты.
|
||||
* **Управление версиями Wine**: Легко переключайтесь между различными версиями Wine и Proton для достижения наилучшей совместимости.
|
||||
* **Управление версиями Wine**: Легко переключайтесь между различными версиями Wine для достижения наилучшей совместимости.
|
||||
* **Графический и консольный интерфейсы**: Используйте удобный GUI для повседневных задач или мощный CLI для автоматизации.
|
||||
* **Резервное копирование**: Создавайте и восстанавливайте полные резервные копии ваших префиксов.
|
||||
* **Встроенные утилиты**: Быстрый доступ к `winecfg`, `regedit`, `Winetricks` и другим инструментам для каждого префикса.
|
||||
@@ -48,19 +48,19 @@
|
||||
$ winehelper -i
|
||||
```
|
||||
|
||||
### Запуск установки приложений
|
||||
### Запуск установки приложений из списка скриптов
|
||||
|
||||
Скрипты установки разделены на два типа:
|
||||
|
||||
1. **Список программ с возможностью автоматической установки** — содержит полностью автоматизированные скрипты установок программ у которыx есть дистрибутивы (установщики) в свободном доступе.
|
||||
1. **Список программ с возможностью автоматической установки** — содержит полностью автоматизированные скрипты установок программ у которых есть дистрибутивы (установщики) в свободном доступе.
|
||||
Процесс полностью автоматизирован.
|
||||
Пример:
|
||||
```
|
||||
$ winehelper install spravki-bk
|
||||
$ winehelper install ksamu
|
||||
```
|
||||
или сокращенная команда:
|
||||
```
|
||||
$ winehelper -i spravki-bk
|
||||
$ winehelper -i ksamu
|
||||
```
|
||||
2. **Список программ с возможностью установки из существующего дистрибутива** — содержит скрипты установок для программ, которых нет в свободном доступе.
|
||||
Пример:
|
||||
@@ -72,7 +72,7 @@
|
||||
$ winehelper -i is-record-station "/путь/до/установочного_файла"
|
||||
```
|
||||
|
||||
### Процесс установки приложений
|
||||
### Процесс установки приложений из списка скриптов
|
||||
|
||||
При первом запуске **WineHelper** проверяются и при необходимости устанавливаются дополнительные зависимости (запрашиваются права root).
|
||||
|
||||
@@ -88,6 +88,27 @@
|
||||
|
||||
Если устанавливаемое приложение требует дополнительных действий от пользователя (ввод лицензии, настройка), это будет явно указано в терминале.
|
||||
|
||||
### Установка своего приложения
|
||||
|
||||
Для установки своего приложения (не из списка готовых скриптов) выполните следующие шаги:
|
||||
|
||||
**Этап 1: Создание префикса**
|
||||
Создайте новый префикс с использованием wine-wow64 (рекомендуется для новых приложений):
|
||||
```
|
||||
$ winehelper create-prefix
|
||||
```
|
||||
Выберите wine-wow64 версию и разрядность 64-bit.
|
||||
|
||||
> [!NOTE]
|
||||
> **Всегда сначала пробуйте wine-wow64**, это упрощает настройку и избавляет от 32-битных зависимостей.
|
||||
|
||||
**Этап 2: Запуск установщика**
|
||||
Запустите установочный файл в созданном префиксе:
|
||||
```
|
||||
$ winehelper "/путь/до/установочного_файла.exe"
|
||||
```
|
||||
Выберите префикс из списка (введите номер и нажмите Enter).
|
||||
|
||||
### Удаление префикса с приложением
|
||||
|
||||
Для удаления префикса выполните команду:
|
||||
@@ -101,14 +122,14 @@
|
||||
2 - Префикс2
|
||||
Выберите префикс (0-2):
|
||||
```
|
||||
Необходимо указать номер удаляемого префикса и нажать клавишу **Enter**.Далее потребуется подтвердить удаление префикса вводом **y**.
|
||||
Необходимо указать номер удаляемого префикса и нажать клавишу **Enter**. Далее потребуется подтвердить удаление префикса вводом **y**.
|
||||
|
||||
В результате будут удалены:
|
||||
- сам префикс;
|
||||
- установленное ПО;
|
||||
- desktop-файлы (ярлыки для установленного ПО в префиксе).
|
||||
|
||||
###
|
||||
### Cоздание резервной копии префикса
|
||||
|
||||
Команда создания резервной копии префикса:
|
||||
```
|
||||
@@ -138,7 +159,7 @@
|
||||
Восстановление префикса не требует подключение к интернету и происходит в автоматическом режиме:
|
||||
- Распаковка префикса.
|
||||
- Восстановление версии WINE.
|
||||
- Восстановление ярлыков (.desktop-файdлов).
|
||||
- Восстановление ярлыков (.desktop-файлов).
|
||||
|
||||
После завершения восстановления приложение будет доступно для запуска через меню или рабочий стол.
|
||||
|
||||
@@ -175,7 +196,7 @@ WineHelper предоставляет доступ к основным инст
|
||||
```
|
||||
Файл будет запущен в выбранном префиксе.
|
||||
|
||||
2. С помощью файлового менеджера WINE:'''
|
||||
2. С помощью файлового менеджера WINE:
|
||||
```
|
||||
$ winehelper winefile
|
||||
0 - Отмена
|
||||
@@ -201,7 +222,7 @@ WineHelper предоставляет доступ к основным инст
|
||||
|
||||
install-dxvk [версия|none|list] установить, удалить или показать версии DXVK
|
||||
install-vkd3d [версия|none|list] установить, удалить или показать версии VKD3D
|
||||
change-wine [версия] изменить версию Wine/Proton для текущего префикса
|
||||
change-wine [версия] изменить версию Wine для текущего префикса
|
||||
|
||||
installed список установленных программ
|
||||
run [программа] запуск программы (отладка)
|
||||
@@ -239,6 +260,13 @@ WineHelper предоставляет доступ к основным инст
|
||||
<p><em>Вкладка "Ручная установка"</em></p>
|
||||
</div>
|
||||
|
||||
Также на вкладке **Автоматическая установка** есть чекбокс с тестовыми версиями скриптов установки которые еще не прошли полную проверку на зависимости и совместимость, но уже можно попробовать в работе.
|
||||
|
||||
<div align="center">
|
||||
<img src="image/handbook/auto_install_test.png">
|
||||
<p><em>Тестовые версии скриптов установки</em></p>
|
||||
</div>
|
||||
|
||||
Для поиска нужной программы введите название в поле поиска.
|
||||
|
||||
<div align="center">
|
||||
@@ -246,7 +274,7 @@ WineHelper предоставляет доступ к основным инст
|
||||
<p><em>Поле поиска</em></p>
|
||||
</div>
|
||||
|
||||
При выборе программы из списка слева, в правой части окна отображается подробная информация о ней: описание, иконка и ссылка на официальный сайт.
|
||||
При выборе программы из списка слева, в правой части окна отображается подробная информация о ней: описание и ссылка на официальный сайт.
|
||||
|
||||
<div align="center">
|
||||
<img src="image/handbook/info.png">
|
||||
@@ -271,7 +299,7 @@ WineHelper предоставляет доступ к основным инст
|
||||
|
||||
<div align="center">
|
||||
<img src="image/handbook/log.png">
|
||||
<p><em>Окно установки с логом</em></м</em></p>
|
||||
<p><em>Окно установки с логом</em></p>
|
||||
</div>
|
||||
|
||||
После установки приложения и нажатия кнопки **Закрыть** в окне установки приложения, ярлык приложения появится в списке установленных приложений во вкладке **Установленные** а также в меню приложений и на рабочем столе если это разрешено в рабочем окружении.
|
||||
@@ -317,42 +345,69 @@ WineHelper предоставляет доступ к основным инст
|
||||
#### Создание нового префикса
|
||||
|
||||
Нажав кнопку **«Создать новый префикс»**, вы откроете диалог, где можно задать:
|
||||
* **Имя префикса**.
|
||||
* **Имя нового префикса**.
|
||||
* **Разрядность** (32-bit или 64-bit).
|
||||
* **Наполнение** (чистый префикс или с рекомендуемыми библиотеками).
|
||||
* **Версию Wine/Proton** из доступного списка.
|
||||
* **Шаблон префикса** (чистый префикс или с рекомендуемыми библиотеками).
|
||||
* **Версию Wine** из доступного списка.
|
||||
|
||||
<div align="center">
|
||||
<img src="image/handbook/create_prefix.png">
|
||||
<img src="image/handbook/prefix_create.png">
|
||||
<p><em>Диалог создания нового префикса</em></p>
|
||||
</div>
|
||||
|
||||
#### Установка своего приложения
|
||||
|
||||
Для установки своего приложения (не из списка готовых скриптов) выполните следующие шаги:
|
||||
|
||||
**Этап 1: Создание префикса**
|
||||
1. Вкладка **«Менеджер префиксов»**
|
||||
2. Нажмите **«Создать новый префикс»**
|
||||
3. Задайте имя префикса
|
||||
4. Выберите **wine-wow64** версию (рекомендуется)
|
||||
5. Выберите разрядность **64-bit**
|
||||
|
||||
> [!NOTE]
|
||||
> **Всегда сначала пробуйте wine-wow64**, это упрощает настройку и избавляет от 32-битных зависимостей.
|
||||
|
||||
**Этап 2: Установка приложения**
|
||||
1. Выберите созданный префикс из выпадающего списка
|
||||
2. Нажмите кнопку **«Запустить файл в префиксе»**, выберите файл для установки
|
||||
3. Нажмите кнопку **«Создать ярлык для приложения в префиксе»**, выберите установленный файл в префиксе
|
||||
|
||||
#### Управление существующим префиксом
|
||||
|
||||
Выбрав префикс из выпадающего списка, вы получаете доступ к панели управления, которая позволяет:
|
||||
|
||||
* **Управлять компонентами**:
|
||||
* **Менеджер компонентов (Winetricks)**: Удобный интерфейс для установки и переустановки библиотек, шрифтов и настроек.
|
||||
* **Запускать стандартные утилиты Wine**:
|
||||
* `Редактор настроек (winecfg)`
|
||||
* `Редактор реестра (regedit)`
|
||||
* `Удаление программ (uninstaller)`
|
||||
* `Командная строка (cmd)`
|
||||
* `Файловый менеджер (winefile)`
|
||||
* **Управлять компонентами**:
|
||||
* **Менеджер компонентов (Winetricks)**: Удобный интерфейс для установки и переустановки библиотек, шрифтов и настроек.
|
||||
* **Управление Wine/Proton**: Смена версии Wine или Proton для выбранного префикса.
|
||||
* **Управление DXVK/VKD3D**: Установка или удаление конкретных версий DXVK и VKD3D.
|
||||
* **Ассоциации файлов**: Настройка открытия определенных типов файлов (например, `.pdf`, `.docx`) нативными приложениями Linux.
|
||||
* **Включать/выключать ESync и FSync**.
|
||||
* `Панель управления (control)`
|
||||
* **Управлять версиями Wine**:
|
||||
* **Управление версией Wine**: Смена версии Wine для выбранного префикса. Диалог выбора позволяет как выбрать уже установленную версию, так и скачать новую из списков, сгруппированных по архитектуре.
|
||||
* **Управлять дополнительными настройками**:
|
||||
* **Управление DXVK/VKD3D**: Установка или удаление конкретных версий DXVK и vkd3d-proton.
|
||||
* **Ассоциации файлов**: Настройка открытия определенных типов файлов (например, `.pdf`, `.docx`) нативными приложениями Linux, чтобы избежать их открытия внутри Wine.
|
||||
* **Включать/выключать ESync и FSync**: Включение/выключение методов оптимизации синхронизации потоков в Windows-приложениях при запуске через Wine.
|
||||
* **Включать/выключать CPCSP_PROXY**: Поддержка КриптоПро CSP (электронная подпись). Включайте только для приложений, требующих ЭП.
|
||||
* **Устанавливать приложения**: Установить любой `.exe` или `.msi` файл напрямую в выбранный префикс.
|
||||
* **Создавать ярлыки**: Создать ярлык для любого исполняемого файла внутри префикса.
|
||||
* **Удалять префикс** или **создавать из него шаблон**.
|
||||
|
||||
Справа отображается подробная информация о конфигурации выбранного префикса.
|
||||
|
||||
В самом низу вкладки находится кнопка **«Удалить все данные WineHelper»**.
|
||||
> [!CAUTION]
|
||||
> Эта функция полностью и безвозвратно удаляет все префиксы, настройки, кэш и ярлыки, созданные WineHelper. Используйте с осторожностью! Программа запросит двойное подтверждение для предотвращения случайного удаления.
|
||||
|
||||
### Вкладка «Справка»
|
||||
|
||||
Содержит полезную информацию о проекте:
|
||||
* **Руководство**: Ссылка на официальную документацию.
|
||||
* **Общее**: Ссылка на официальную документацию.
|
||||
* **Авторы**: Список разработчиков и участников проекта.
|
||||
* **Лицензия**: Текст лицензии WineHelper и информация о сторонних компонентах.
|
||||
* **История изменений**: Changelog пакета.
|
||||
|
||||
@@ -20,7 +20,7 @@ _winehelper() {
|
||||
'remove-prefix[Удалить префикс и все связанные данные]'
|
||||
'backup-prefix[Создать резерную копию префикса]'
|
||||
'restore-prefix[восстановить префикс из резервной копии "путь/до/whpack"]'
|
||||
'change-wine[Изменить версию Wine/Proton для префикса]'
|
||||
'change-wine[Изменить версию Wine для префикса]'
|
||||
'clear-winetricks-cache[Очистить кэш Winetricks]'
|
||||
)
|
||||
|
||||
@@ -105,7 +105,7 @@ _get_wine_versions () {
|
||||
fi
|
||||
|
||||
versions+=(system)
|
||||
_values 'wine/proton versions' "${versions[@]}"
|
||||
_values 'wine versions' "${versions[@]}"
|
||||
}
|
||||
|
||||
_get_prefixes () {
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Пакет программ для таможенного оформления. Включает программы Такса и ТамДок в комплектациях Эксперт, а также программу Заполнитель.
|
||||
########################################################################
|
||||
export PROG_URL="https://www.alta.ru"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="alta"
|
||||
export PROG_NAME="Альта-Эксперт"
|
||||
export BASE_PFX="alta_pfx_x86_v01"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Таможенное оформление товаров
|
||||
########################################################################
|
||||
export PROG_URL="https://www.alta.ru"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="alta"
|
||||
export PROG_NAME="Альта-ГТД"
|
||||
export PROG_ICON="altagtd"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Пакет программ для таможенного оформления. Включает программы Альта-ГТД, Такса и ТамДок в комплектациях Максимум, а также программу Заполнитель.
|
||||
########################################################################
|
||||
export PROG_URL="https://www.alta.ru"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="alta"
|
||||
export PROG_NAME="Альта-Максимум"
|
||||
export BASE_PFX="alta_pfx_x86_v01"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Таможенное законодательство
|
||||
########################################################################
|
||||
export PROG_URL="https://www.alta.ru"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="alta"
|
||||
export PROG_NAME="Таможенные документы"
|
||||
export PROG_ICON="altatamdoc"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Расчет контракта
|
||||
########################################################################
|
||||
export PROG_URL="https://www.alta.ru"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="alta"
|
||||
export PROG_NAME="Такса"
|
||||
export PROG_ICON="altatax"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Автоматизация импорта данных
|
||||
########################################################################
|
||||
export PROG_URL="https://www.alta.ru"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="alta"
|
||||
export PROG_NAME="Заполнитель"
|
||||
export PROG_ICON="altazap"
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: Система “A'PROPOS-Z - Графит ТМ” для проектирования этапов механообработки, синтеза, расчета и верефикация операционных размерных текстур. Графическое моделирование технологии иформирование карт эскизов.
|
||||
########################################################################
|
||||
export PROG_URL="https://www.tezis.pro"
|
||||
export WH_WINE_USE="wine-10.18.1-alt1-wow64"
|
||||
export WINEPREFIX="apropos-z"
|
||||
export PROG_NAME="A'PROPOS-Z - Графит ТМ"
|
||||
export PROG_ICON="apropos-z"
|
||||
export BASE_PFX="none"
|
||||
export WINEARCH="win64"
|
||||
export INSTALL_DLL=""
|
||||
export WH_WINDOWS_VER="10"
|
||||
export WINE_D3D_CONFIG="renderer=vulkan"
|
||||
export WH_XDG_OPEN="pdf docx scad"
|
||||
|
||||
AUTOINSTALL_URL="https://www.tezis.pro/Setup-APROPOS-Z-SHAREWARE.exe"
|
||||
AUTOINSTALL_EXE="${WH_TMP_DIR}/Setup-APROPOS-Z-SHAREWARE.exe"
|
||||
|
||||
prepair_wine
|
||||
|
||||
if try_download "$AUTOINSTALL_URL" "$AUTOINSTALL_EXE" ; then
|
||||
wine_run_install "${AUTOINSTALL_EXE}"
|
||||
try_remove_file "${AUTOINSTALL_EXE}"
|
||||
|
||||
create_desktop "$PROG_NAME" "$DRIVE_C/Program Files/A'PROPOS-Z/Apropos-Z.exe" "$PROG_ICON"
|
||||
fi
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Программа “АРМ КТ ПРОФ АТТЕСТАТ” для документов об основном общем, среднем общем образовании.
|
||||
########################################################################
|
||||
export PROG_URL="https://armregistr.ru/programmnoe-obespechenie/licenziya-na-programmnoe-obespechenie-dlya-zapolneniya-blank-4"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.18.1-alt1-wow64"
|
||||
export WINEPREFIX="arm-kt"
|
||||
export PROG_NAME="АРМ КТ ПРОФ АТТЕСТАТ"
|
||||
export PROG_ICON="armkt"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Программа “АРМ КТ ПРОФ ДПП” для заполнения бланков документов о повышении квалификации и профессиональной переподготовке.
|
||||
########################################################################
|
||||
export PROG_URL="https://armregistr.ru/programmnoe-obespechenie/licenziya-na-programmnoe-obespechenie-dlya-zapolneniya-blank"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.18.1-alt1-wow64"
|
||||
export WINEPREFIX="arm-kt"
|
||||
export PROG_NAME="АРМ КТ ПРОФ ДПП"
|
||||
export PROG_ICON="armkt"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Программа “АРМ КТ ПРОФ НШ” для заполнения бланков документов об окончании начальной школы.
|
||||
########################################################################
|
||||
export PROG_URL="https://armregistr.ru/programmnoe-obespechenie/licenziya-na-programmnoe-obespechenie-dlya-zapolneniya-blank-1"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.18.1-alt1-wow64"
|
||||
export WINEPREFIX="arm-kt"
|
||||
export PROG_NAME="АРМ КТ ПРОФ НШ"
|
||||
export PROG_ICON="armkt"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Программа “АРМ КТ ПРОФ МЕД” для заполнения бланков документов о послевузовском профессиональном образовании и сертификатов специалиста.
|
||||
######################################################
|
||||
export PROG_URL="https://armregistr.ru/programmnoe-obespechenie/licenziya-na-programmnoe-obespechenie-dlya-zapolneniya-blank-3"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.18.1-alt1-wow64"
|
||||
export WINEPREFIX="arm-kt"
|
||||
export PROG_NAME="АРМ КТ ПРОФ МЕД"
|
||||
export PROG_ICON="armkt"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Программа “АРМ КТ ПРОФ ПРОФЕССИЯ” для заполнения бланков документов профессионального обучения.
|
||||
########################################################################
|
||||
export PROG_URL="https://armregistr.ru/programmnoe-obespechenie/licenziya-na-programmnoe-obespechenie-dlya-zapolneniya-blank-5"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.18.1-alt1-wow64"
|
||||
export WINEPREFIX="arm-kt"
|
||||
export PROG_NAME="АРМ КТ ПРОФ ПРОФЕССИЯ"
|
||||
export PROG_ICON="armkt"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Программа “АРМ КТ ПРОФ СПО” для заполнения бланков документов о среднем профессиональном образовании.
|
||||
########################################################################
|
||||
export PROG_URL="https://armregistr.ru/programmnoe-obespechenie/licenziya-na-programmnoe-obespechenie-dlya-zapolneniya-blank-2"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.18.1-alt1-wow64"
|
||||
export WINEPREFIX="arm-kt"
|
||||
export PROG_NAME="АРМ КТ ПРОФ СПО"
|
||||
export PROG_ICON="armkt"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Программа “АРМ КТ ПРОФ ВУЗ” для заполнения бланков документов о высшем образовании.
|
||||
########################################################################
|
||||
export PROG_URL="https://armregistr.ru/programmnoe-obespechenie/licenziya-na-programmnoe-obespechenie-dlya-zapolneniya-blank-6"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.18.1-alt1-wow64"
|
||||
export WINEPREFIX="arm-kt"
|
||||
export PROG_NAME="АРМ КТ ПРОФ ВУЗ"
|
||||
export PROG_ICON="armkt"
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
export PROG_URL="https://www.ctm.ru"
|
||||
export PROG_NAME="СТМ-Финансы"
|
||||
export PROG_ICON="ctmfinance"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="ved_ctm"
|
||||
export BASE_PFX="ved_ctm_pfx_x86_v05"
|
||||
export WINEARCH="win32"
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
export PROG_URL="https://www.ctm.ru"
|
||||
export PROG_NAME="СТМ-Журналы"
|
||||
export PROG_ICON="ctmjournals"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="ved_ctm"
|
||||
export BASE_PFX="ved_ctm_pfx_x86_v05"
|
||||
export WINEARCH="win32"
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
export PROG_URL="https://www.ctm.ru"
|
||||
export PROG_NAME="Монитор ЭД"
|
||||
export PROG_ICON="ctmmonitor"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="ved_ctm"
|
||||
export BASE_PFX="ved_ctm_pfx_x86_v05"
|
||||
export WINEARCH="win32"
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
export PROG_URL="https://www.ctm.ru"
|
||||
export PROG_NAME="СТМ-Отчет"
|
||||
export PROG_ICON="ctmreport"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="ved_ctm"
|
||||
export BASE_PFX="ved_ctm_pfx_x86_v05"
|
||||
export WINEARCH="win32"
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
export PROG_URL="https://www.ctm.ru"
|
||||
export PROG_NAME="СТМ-Сервис"
|
||||
export PROG_ICON="ctmservice"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="ved_ctm"
|
||||
export BASE_PFX="ved_ctm_pfx_x86_v05"
|
||||
export WINEARCH="win32"
|
||||
@@ -18,7 +18,7 @@ get_and_set_reg_file --add 'Software\CTM\CTMSETUP' 'SkipKBCheck' 'REG_DWORD' "1"
|
||||
|
||||
AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_cs.exe"
|
||||
AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_cs"
|
||||
AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_cs/setup.exe"
|
||||
AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_cs/Setup.exe"
|
||||
|
||||
if try_download "https://files.ctm.ru/CSERVICE/SFX/setup_cs.exe" "${AUTOINSTALL_EXE}" ; then
|
||||
unpack "${AUTOINSTALL_EXE}" "${AUTOINSTALL_UNPACK}"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Сервис обновления ПО: "R-Атлас", "R-Инфо" и "R-Тариф".
|
||||
########################################################################
|
||||
export PROG_URL="https://daobit.ru"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_i586" # wine-9.0.9-alt1-i586"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586" # wine-9.0.9-alt1-i586"
|
||||
export WINEPREFIX="daobit"
|
||||
export PROG_NAME="Сервис обновления ПО"
|
||||
export PROG_ICON="daobitcservice"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Построение маршрутов железнодорожных грузоперевозок
|
||||
########################################################################
|
||||
export PROG_URL="https://daobit.ru"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_i586" # wine-9.0.9-alt1-i586"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586" # wine-9.0.9-alt1-i586"
|
||||
export WINEPREFIX="daobit"
|
||||
export PROG_NAME="R-Атлас"
|
||||
export PROG_ICON="daobitratlas"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Специализированная информация для организации железнодорожных перевозок
|
||||
########################################################################
|
||||
export PROG_URL="https://daobit.ru"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_i586" # wine-9.0.9-alt1-i586"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586" # wine-9.0.9-alt1-i586"
|
||||
export WINEPREFIX="daobit"
|
||||
export PROG_NAME="R-Инфо"
|
||||
export PROG_ICON="daobitrinfo"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Расчёт размера провозной платы и дополнительных сборов за грузовые перевозки по железной дороге
|
||||
########################################################################
|
||||
export PROG_URL="https://daobit.ru"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_i586" # wine-9.0.9-alt1-i586"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586" # wine-9.0.9-alt1-i586"
|
||||
export WINEPREFIX="daobit"
|
||||
export PROG_NAME="R-Тариф"
|
||||
export PROG_ICON="daobitrtariff"
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
export PROG_URL="https://www.keepsoft.ru"
|
||||
export PROG_NAME="Конструктор тестов"
|
||||
export AUTOINSTALL_EXE="${WH_TMP_DIR}/simulator4.exe"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="keepsoft_similator4"
|
||||
export BASE_PFX="defpfx_x86_v01"
|
||||
export WINEARCH="win32"
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: “КСАМУ” - Комплексная система автоматизации медицинского учреждения.
|
||||
########################################################################
|
||||
export PROG_URL="https://docs.medicine-it.ru/"
|
||||
export WH_WINE_USE="wine-10.18.1-alt1-wow64"
|
||||
export WINEPREFIX="ksamu"
|
||||
export PROG_NAME="КСАМУ"
|
||||
export PROG_ICON="ksamu"
|
||||
export BASE_PFX="ksamu_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export INSTALL_DLL="corefonts tahoma richtx32 riched20 riched30 msls31 msftedit msxml6 msxml4 msxml3 fontsmooth=gray"
|
||||
# riched32
|
||||
export WH_WINDOWS_VER="7"
|
||||
export WH_USE_CPCSP_PROXY="1"
|
||||
export WH_MAIN_DECORATED="1"
|
||||
export WH_VIRTUAL_DESKTOP="0"
|
||||
export FREETYPE_PROPERTIES="truetype:interpreter-version=35"
|
||||
|
||||
prepair_wine
|
||||
create_desktop "$PROG_NAME" "$DRIVE_C/KSAMU/KSAMU.exe" "$PROG_ICON"
|
||||
|
||||
echo '
|
||||
# хак для исправления открытия выбора файла сертификата в фоне
|
||||
if ! command -v wmctrl &>/dev/null ; then
|
||||
wmctrl_not_found="Для продолжения работы установите wmctrl:\n\nsu -\napt-get update\napt-get install wmctrl\nexit"
|
||||
zenity --error --title="Ошибка" --text="$wmctrl_not_found" --ok-label="Выход"
|
||||
fatal "$wmctrl_not_found"
|
||||
fi
|
||||
|
||||
background_task() {
|
||||
while true; do
|
||||
sleep 1
|
||||
OPEN_WIN_ID=$(wmctrl -xl | grep -i "ksamu" | grep -i "открыть" | cut -d" " -f1)
|
||||
if [[ -n $OPEN_WIN_ID ]] ; then
|
||||
wmctrl -i -r $OPEN_WIN_ID -b add,above
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
background_task &
|
||||
WH_BG_PID=$!
|
||||
export WH_BG_PID
|
||||
' >> "$DRIVE_C/KSAMU/KSAMU.exe.whdb"
|
||||
@@ -8,9 +8,10 @@ export WH_WINE_USE="wine-10.18.1-tflex-alt2-wow64"
|
||||
export BASE_PFX="tflex_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export WH_WINDOWS_VER="10"
|
||||
export WINEPREFIX="tflex"
|
||||
export WINEPREFIX="tflex17"
|
||||
export WH_XDG_OPEN="log"
|
||||
export WH_USE_MESA_GL_OVERRIDE="1"
|
||||
export WINE_D3D_CONFIG="renderer=vulkan"
|
||||
|
||||
# используем общий whdb файл для подготовки префикса и сервисов
|
||||
# prepair_wine используется из файла настроек
|
||||
|
||||
@@ -8,9 +8,10 @@ export WH_WINE_USE="wine-10.18.1-tflex-alt2-wow64"
|
||||
export BASE_PFX="tflex_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export WH_WINDOWS_VER="10"
|
||||
export WINEPREFIX="tflex"
|
||||
export WINEPREFIX="tflex17"
|
||||
export WH_XDG_OPEN="log"
|
||||
export WH_USE_MESA_GL_OVERRIDE="1"
|
||||
export WINE_D3D_CONFIG="renderer=vulkan"
|
||||
|
||||
# используем общий whdb файл для подготовки префикса и сервисов
|
||||
# prepair_wine используется из файла настроек
|
||||
|
||||
@@ -8,9 +8,10 @@ export WH_WINDOWS_VER="10"
|
||||
export WH_WINE_USE="wine-10.18.1-tflex-alt2-wow64"
|
||||
export BASE_PFX="tflex_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export WINEPREFIX="tflex"
|
||||
export WINEPREFIX="tflex17"
|
||||
export WH_XDG_OPEN="log"
|
||||
export WH_USE_MESA_GL_OVERRIDE="1"
|
||||
export WINE_D3D_CONFIG="renderer=vulkan"
|
||||
|
||||
check_prefix_var
|
||||
if [[ ! -f "$WINEPREFIX/drive_c/Program Files/T-FLEX CAD 17/Program/TFlexCad.exe" ]]
|
||||
|
||||
@@ -8,9 +8,10 @@ export WH_WINDOWS_VER="10"
|
||||
export WH_WINE_USE="wine-10.18.1-tflex-alt2-wow64"
|
||||
export BASE_PFX="tflex_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export WINEPREFIX="tflex"
|
||||
export WINEPREFIX="tflex17"
|
||||
export WH_XDG_OPEN="log"
|
||||
export WH_USE_MESA_GL_OVERRIDE="1"
|
||||
export WINE_D3D_CONFIG="renderer=vulkan"
|
||||
|
||||
check_prefix_var
|
||||
if [[ ! -f "$WINEPREFIX/drive_c/Program Files/T-FLEX CAD 17/Program/TFlexCad.exe" ]]
|
||||
|
||||
@@ -8,9 +8,10 @@ export WH_WINE_USE="wine-10.18.1-tflex-alt2-wow64"
|
||||
export BASE_PFX="tflex_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export WH_WINDOWS_VER="10"
|
||||
export WINEPREFIX="tflex"
|
||||
export WINEPREFIX="tflex18"
|
||||
export WH_XDG_OPEN="log"
|
||||
export WH_USE_MESA_GL_OVERRIDE="1"
|
||||
export WINE_D3D_CONFIG="renderer=vulkan"
|
||||
|
||||
# используем общий whdb файл для подготовки префикса и сервисов
|
||||
# prepair_wine используется из файла настроек
|
||||
|
||||
@@ -8,9 +8,10 @@ export WH_WINDOWS_VER="10"
|
||||
export WH_WINE_USE="wine-10.18.1-tflex-alt2-wow64"
|
||||
export BASE_PFX="tflex_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export WINEPREFIX="tflex"
|
||||
export WINEPREFIX="tflex18"
|
||||
export WH_XDG_OPEN="log"
|
||||
export WH_USE_MESA_GL_OVERRIDE="1"
|
||||
export WINE_D3D_CONFIG="renderer=vulkan"
|
||||
|
||||
check_prefix_var
|
||||
if [[ ! -f "$WINEPREFIX/drive_c/Program Files/T-FLEX CAD 18/Program/TFlexCad.exe" ]]
|
||||
|
||||
@@ -8,9 +8,10 @@ export WH_WINDOWS_VER="10"
|
||||
export WH_WINE_USE="wine-10.18.1-tflex-alt2-wow64"
|
||||
export BASE_PFX="tflex_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export WINEPREFIX="tflex"
|
||||
export WINEPREFIX="tflex18"
|
||||
export WH_XDG_OPEN="log"
|
||||
export WH_USE_MESA_GL_OVERRIDE="1"
|
||||
export WINE_D3D_CONFIG="renderer=vulkan"
|
||||
|
||||
check_prefix_var
|
||||
if [[ ! -f "$WINEPREFIX/drive_c/Program Files/T-FLEX CAD 18/Program/TFlexCad.exe" ]]
|
||||
|
||||
@@ -8,9 +8,10 @@ export WH_WINE_USE="wine-10.18.1-tflex-alt2-wow64"
|
||||
export BASE_PFX="tflex_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export WH_WINDOWS_VER="10"
|
||||
export WINEPREFIX="tflex"
|
||||
export WINEPREFIX="tflex17"
|
||||
export WH_XDG_OPEN="log"
|
||||
export WH_USE_MESA_GL_OVERRIDE="1"
|
||||
export WINE_D3D_CONFIG="renderer=vulkan"
|
||||
|
||||
# используем общий whdb файл для подготовки префикса и сервисов
|
||||
# prepair_wine используется из файла настроек
|
||||
|
||||
@@ -8,9 +8,10 @@ export WH_WINE_USE="wine-10.18.1-tflex-alt2-wow64"
|
||||
export BASE_PFX="tflex_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export WH_WINDOWS_VER="10"
|
||||
export WINEPREFIX="tflex"
|
||||
export WINEPREFIX="tflex18"
|
||||
export WH_XDG_OPEN="log"
|
||||
export WH_USE_MESA_GL_OVERRIDE="1"
|
||||
export WINE_D3D_CONFIG="renderer=vulkan"
|
||||
|
||||
# используем общий whdb файл для подготовки префикса и сервисов
|
||||
# prepair_wine используется из файла настроек
|
||||
|
||||
@@ -8,9 +8,10 @@ export WH_WINE_USE="wine-10.18.1-tflex-alt2-wow64"
|
||||
export BASE_PFX="tflex_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export WH_WINDOWS_VER="10"
|
||||
export WINEPREFIX="tflex"
|
||||
export WINEPREFIX="tflex17"
|
||||
export WH_XDG_OPEN="log"
|
||||
export WH_USE_MESA_GL_OVERRIDE="1"
|
||||
export WINE_D3D_CONFIG="renderer=gdi"
|
||||
|
||||
# используем общий whdb файл для подготовки префикса и сервисов
|
||||
# prepair_wine используется из файла настроек
|
||||
|
||||
@@ -8,9 +8,10 @@ export WH_WINE_USE="wine-10.18.1-tflex-alt2-wow64"
|
||||
export BASE_PFX="tflex_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export WH_WINDOWS_VER="10"
|
||||
export WINEPREFIX="tflex"
|
||||
export WINEPREFIX="tflex17"
|
||||
export WH_XDG_OPEN="log"
|
||||
export WH_USE_MESA_GL_OVERRIDE="1"
|
||||
export WINE_D3D_CONFIG="renderer=vulkan"
|
||||
|
||||
# используем общий whdb файл для подготовки префикса и сервисов
|
||||
# prepair_wine используется из файла настроек
|
||||
|
||||
@@ -8,9 +8,10 @@ export WH_WINE_USE="wine-10.18.1-tflex-alt2-wow64"
|
||||
export BASE_PFX="tflex_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export WH_WINDOWS_VER="10"
|
||||
export WINEPREFIX="tflex"
|
||||
export WINEPREFIX="tflex18"
|
||||
export WH_XDG_OPEN="log"
|
||||
export WH_USE_MESA_GL_OVERRIDE="1"
|
||||
export WINE_D3D_CONFIG="renderer=vulkan"
|
||||
|
||||
# используем общий whdb файл для подготовки префикса и сервисов
|
||||
# prepair_wine используется из файла настроек
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
export PROG_URL="https://ctm.ru"
|
||||
export PROG_NAME="ВЭД-Алфавит"
|
||||
export PROG_ICON="vedalf"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="ved_ctm"
|
||||
export BASE_PFX="ved_ctm_pfx_x86_v05"
|
||||
export WINEARCH="win32"
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
export PROG_URL="https://ctm.ru"
|
||||
export PROG_NAME="ВЭД-Контроль"
|
||||
export PROG_ICON="vedcontrol"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="ved_ctm"
|
||||
export BASE_PFX="ved_ctm_pfx_x86_v05"
|
||||
export WINEARCH="win32"
|
||||
@@ -16,11 +16,11 @@ prepair_wine
|
||||
# фикс постоянного запроса обновления Windows
|
||||
get_and_set_reg_file --add 'Software\CTM\CTMSETUP' 'SkipKBCheck' 'REG_DWORD' "1" "userdef"
|
||||
|
||||
AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_cl.exe"
|
||||
AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_cl"
|
||||
AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_cl/setup.exe"
|
||||
AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_ct.exe"
|
||||
AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_ct"
|
||||
AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_ct/setup.exe"
|
||||
|
||||
if try_download "https://ftp.ctm.ru/CONTROL/SFX/setup_cl.exe" "${AUTOINSTALL_EXE}" ; then
|
||||
if try_download "https://ftp.ctm.ru/CONTROL/SFX/setup_ct.exe" "${AUTOINSTALL_EXE}" ; then
|
||||
unpack "${AUTOINSTALL_EXE}" "${AUTOINSTALL_UNPACK}"
|
||||
try_remove_file "$AUTOINSTALL_EXE"
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
export PROG_URL="https://ctm.ru"
|
||||
export PROG_NAME="ВЭД-Декларант"
|
||||
export PROG_ICON="veddcl"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="ved_ctm"
|
||||
export BASE_PFX="ved_ctm_pfx_x86_v05"
|
||||
export WINEARCH="win32"
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
export PROG_URL="https://ctm.ru"
|
||||
export PROG_NAME="ВЭД-Инфо"
|
||||
export PROG_ICON="vedinfo"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="ved_ctm"
|
||||
export BASE_PFX="ved_ctm_pfx_x86_v05"
|
||||
export WINEARCH="win32"
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
export PROG_URL="https://ctm.ru"
|
||||
export PROG_NAME="ВЭД-Платежи"
|
||||
export PROG_ICON="vedpayments"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="ved_ctm"
|
||||
export BASE_PFX="ved_ctm_pfx_x86_v05"
|
||||
export WINEARCH="win32"
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
export PROG_URL="https://ctm.ru"
|
||||
export PROG_NAME="ВЭД-Склад"
|
||||
export PROG_ICON="vedsts"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="ved_ctm"
|
||||
export BASE_PFX="ved_ctm_pfx_x86_v05"
|
||||
export WINEARCH="win32"
|
||||
|
||||
@@ -5,10 +5,9 @@ export WH_WINDOWS_VER="10"
|
||||
export WH_WINE_USE="wine-10.18.1-tflex-alt2-wow64"
|
||||
export BASE_PFX="tflex_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export WINEPREFIX="tflex"
|
||||
export PROG_VERSION=""
|
||||
export WH_XDG_OPEN="log"
|
||||
export INSTALL_DLL="corefonts d3dcompiler_47 dotnet48 dotnet20 vcrun2019 ucrtbase2019 msxml6 fontsmooth=rgb baekmuk droid eufonts ipamona liberation lucida opensymbol sourcehansans tahoma takao uff unifont vlgothic wenquanyi wenquanyizenhei"
|
||||
export INSTALL_DLL="d3dcompiler_47 dotnet48 dotnet20 vcrun2019 ucrtbase2019 msxml6 fontsmooth=rgb corefonts baekmuk droid eufonts ipamona liberation lucida opensymbol sourcehansans tahoma takao uff unifont vlgothic wenquanyi wenquanyizenhei"
|
||||
export WH_USE_MESA_GL_OVERRIDE="1"
|
||||
|
||||
GRDCONTROL_VER="4.3.0-0"
|
||||
@@ -31,9 +30,10 @@ then
|
||||
print_info "Префикс $PREFIX_NAME готов к установке ПО."
|
||||
print_info "Сервисы: aksusbd и hasplmd уже запущены. grdcontrol-$GRDCONTROL_VER установлен."
|
||||
else
|
||||
print_warning "Службы aksusbd и hasplmd не запущены, или grdcontrol-$GRDCONTROL_VER не установлен."
|
||||
print_warning "Проверка и подготовка префикса, служб aksusbd, hasplmd и grdcontrol-$GRDCONTROL_VER."
|
||||
|
||||
if [[ "$BASE_PFX" == "none" ]] \
|
||||
|| ! grep -q "t-flex-cad" "$WINEPREFIX/winetricks.log" \
|
||||
|| ! systemctl list-units --type service --state running | grep aksusbd \
|
||||
|| ! systemctl list-units --type service --state running | grep hasplmd \
|
||||
|| ! rpm -q grdcontrol | grep -q "$GRDCONTROL_VER"
|
||||
|
||||
@@ -7,23 +7,29 @@ if [[ $(id -u) -ne 0 ]] ; then
|
||||
fi
|
||||
|
||||
##### MESSAGES FUNCTIONS #####
|
||||
print_error () { printf "\E[31m%s ВНИМАНИЕ: $@ %s\e[0m\n" ;}
|
||||
fatal () { print_error "$@" ; exit 1 ;}
|
||||
if [[ -t 0 ]] ; then
|
||||
print_error () { printf "\E[31m%s Ошибка: $* %s\e[0m\n" ;}
|
||||
else
|
||||
print_error () { echo -e "Ошибка: $*" ;}
|
||||
fi
|
||||
|
||||
##### UPDATE SYSTEM #####
|
||||
apt-get update || fatal "Не удалось обновить список доступных пакетов,"
|
||||
fatal () {
|
||||
print_error "$@ Аварийное завершение работы WineHelper!"
|
||||
exit 1
|
||||
}
|
||||
|
||||
##### CHECK AREPO (x86_64-i586) #####
|
||||
apt-repo | grep -q "x86_64-i586" || fatal "Репозиторий x86_64-i586 не подключен. \
|
||||
32-битные зависимости не будут установлены, а значит не будут работать и 32-битные \
|
||||
windows приложения. Подробнее по ссылке: https://www.altlinux.org/Biarch"
|
||||
|
||||
##### UPDATE SYSTEM #####
|
||||
apt-get update || fatal "Не удалось обновить список доступных пакетов,"
|
||||
|
||||
##### INSTALL DEPENDENCIES #####
|
||||
# fonts-ttf-ms
|
||||
|
||||
apt-get install {i586-,}{glibc-core,libstdc++6,glibc-pthread,glibc-nss,\
|
||||
libnss-mdns,libunixODBC2,ocl-icd,libfreetype,libfontconfig1,\
|
||||
libgnutls30,libGL,libEGL,xorg-dri-swrast,xorg-dri-intel,xorg-dri-radeon,\
|
||||
libvulkan1,libcups} || fatal "Не удалось установить зависимости."
|
||||
|
||||
apt-get install {i586-,}wine
|
||||
apt-get install -y i586-{wine,glibc-core,libstdc++6,glibc-pthread,glibc-nss,\
|
||||
libnm,libnss,libnss-mdns,libnsl1,libunwind,libunixODBC2,ocl-icd,libfreetype,\
|
||||
libcups,libfontconfig1,libgnutls30,libGL,libEGL,libvulkan1,xorg-dri-swrast,\
|
||||
xorg-dri-intel,xorg-dri-radeon} || fatal "Не удалось установить зависимости."
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: Автоматизация установки МИС Витакарта (AIS LPU Client).
|
||||
########################################################################
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_i586"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="ais-lpu-client"
|
||||
export PROG_NAME="AIS LPU Client"
|
||||
export PROG_ICON="ais_lpu_client"
|
||||
|
||||
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 184 KiB After Width: | Height: | Size: 290 KiB |
|
After Width: | Height: | Size: 284 KiB |
|
Before Width: | Height: | Size: 153 KiB |
|
Before Width: | Height: | Size: 110 KiB After Width: | Height: | Size: 199 KiB |
|
Before Width: | Height: | Size: 111 KiB After Width: | Height: | Size: 217 KiB |
|
Before Width: | Height: | Size: 91 KiB After Width: | Height: | Size: 168 KiB |
|
Before Width: | Height: | Size: 227 KiB After Width: | Height: | Size: 256 KiB |
|
Before Width: | Height: | Size: 133 KiB After Width: | Height: | Size: 223 KiB |
|
Before Width: | Height: | Size: 236 KiB After Width: | Height: | Size: 232 KiB |
|
Before Width: | Height: | Size: 336 KiB After Width: | Height: | Size: 365 KiB |
|
Before Width: | Height: | Size: 110 KiB After Width: | Height: | Size: 221 KiB |
|
Before Width: | Height: | Size: 144 KiB After Width: | Height: | Size: 258 KiB |
|
After Width: | Height: | Size: 98 KiB |
|
Before Width: | Height: | Size: 160 KiB After Width: | Height: | Size: 245 KiB |
|
Before Width: | Height: | Size: 93 KiB After Width: | Height: | Size: 208 KiB |
|
After Width: | Height: | Size: 3.6 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 2.2 KiB |
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: Специализированное программное обеспечение «Автономная станция прослушивания» предназначено для загрузки и прослушивания электронных материалов итогового собеседования.
|
||||
########################################################################
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_i586"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="desktopaudiostation"
|
||||
export PROG_NAME="АС Прослушивания"
|
||||
export PROG_ICON="desktopaudiostation"
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: Установщик "ЕМИАС" - Единая медицинская информационно-аналитическая система
|
||||
########################################################################
|
||||
export PROG_URL="https://emias.info/"
|
||||
export WH_WINE_USE="wine-11.4.1-emias-alt2-wow64"
|
||||
export WINEPREFIX="emias"
|
||||
export PROG_NAME="КИС ЕМИАС"
|
||||
export BASE_PFX="none"
|
||||
export WINEARCH="win64"
|
||||
export WH_WINDOWS_VER="7"
|
||||
export WH_USE_CPCSP_PROXY="1"
|
||||
export CPCSP_PROXY_WOW64_VER="0.7.7-alt1.1-em-wow64"
|
||||
|
||||
if [[ -f "$2" ]] \
|
||||
&& [[ $(basename "$2") =~ (kis\.exe|kis_z\.exe) ]]
|
||||
then
|
||||
prepair_wine
|
||||
|
||||
KIS_EXE="$2"
|
||||
PROG_PATH="$DRIVE_C/EMIAS"
|
||||
create_new_dir "$PROG_PATH"
|
||||
print_info "Копируем файлы приложения в каталог $PROG_PATH"
|
||||
cp -fr "$(dirname "$KIS_EXE")"/* "$PROG_PATH/"
|
||||
|
||||
create_desktop "КИС ЕМИАС" "$PROG_PATH/kis.exe" "kis-emias"
|
||||
create_desktop "КИС АДМИН" "$PROG_PATH/kis_z.exe" "kis-emias"
|
||||
|
||||
if [[ $3 == "--config" ]] ; then
|
||||
KIS_INI="$PROG_PATH/kis.ini"
|
||||
print_info "Открываем файл для редактирования: $KIS_INI"
|
||||
xdg-open "$KIS_INI"
|
||||
fi
|
||||
else
|
||||
fatal "Не найден файл kis.exe. Перезапустите по примеру:
|
||||
winehelper install $1 \"/путь/до/kis.exe\""
|
||||
fi
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: Специализированное программное обеспечение «Автономная станция записи» предназначено для записи ответов участников итогового собеседования.
|
||||
########################################################################
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_i586"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="isrecordingstation"
|
||||
export PROG_NAME="АС Записи"
|
||||
export PROG_ICON="isrecordingstation"
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: "КИС Олимп" - программно-аналитический комплекс, состоящий из самостоятельных подключаемых модулей.
|
||||
########################################################################
|
||||
export PROG_URL="https://olimp.best/"
|
||||
export WH_WINE_USE="wine-10.18.1-alt2-i586"
|
||||
export WINEPREFIX="olimp"
|
||||
export PROG_NAME="КИС Олимп"
|
||||
export BASE_PFX="olimp_pfx_x86_v02"
|
||||
export WINEARCH="win32"
|
||||
export WH_WINDOWS_VER="7"
|
||||
export INSTALL_DLL="jet40 dotnet45 corefonts lucida opensymbol tahoma cjkfonts mdac28 msxml4 native_oleaut32 vcrun2005"
|
||||
export WINEDLLOVERRIDES="d2d1=n"
|
||||
export WH_MAIN_DECORATED="0"
|
||||
export FREETYPE_PROPERTIES="truetype:interpreter-version=35"
|
||||
|
||||
if [[ -f "$2" ]] \
|
||||
&& [[ $(basename "$2") =~ (Loader\.exe) ]]
|
||||
then
|
||||
prepair_wine
|
||||
|
||||
if ! grep -q "psqlodbc_x86" "$WINEPREFIX/winetricks.log" ; then
|
||||
psqlodbc_uri="https://ftp.postgresql.org/pub/odbc/releases/REL-17_00_0007/psqlodbc_x86.msi"
|
||||
psqlodbc_msi="${WH_TMP_DIR}/psqlodbc_x86.msi"
|
||||
try_download "$psqlodbc_uri" "$psqlodbc_msi"
|
||||
wine_run_install "$psqlodbc_msi" /q
|
||||
try_remove_file "$psqlodbc_msi"
|
||||
echo "psqlodbc_x86" >> "$WINEPREFIX/winetricks.log"
|
||||
fi
|
||||
|
||||
KIS_EXE="$2"
|
||||
PROG_PATH="$DRIVE_C/Olimp"
|
||||
create_new_dir "$PROG_PATH"
|
||||
print_info "Копируем файлы приложения в каталог $PROG_PATH"
|
||||
cp -fr "$(dirname "$KIS_EXE")"/* "$PROG_PATH/"
|
||||
|
||||
create_desktop "КИС Олимп" "$PROG_PATH/Loader.exe" "olimp"
|
||||
create_desktop "КИС Олимп (ПУ WINE)" "$DRIVE_C/windows/system32/control.exe" "wh_default"
|
||||
else
|
||||
fatal "Не найден файл Loader.exe. Перезапустите по примеру:
|
||||
winehelper install $1 \"/путь/до/Olimp/Loader.exe\""
|
||||
fi
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: Это мощный, современный инструмент быстрой и качественной разработки АСУТП
|
||||
########################################################################
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_i586" # wine-9.0.9-alt1-i586"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586" # wine-9.0.9-alt1-i586"
|
||||
export WINEPREFIX="scada-krug-2000"
|
||||
export PROG_NAME="SCADA КРУГ 2000"
|
||||
export PROG_ICON="krugtaskmanager"
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: Ручная установка дополнений для T-FLEX CAD 17
|
||||
########################################################################
|
||||
export PROG_NAME="T-FLEX CAD 17"
|
||||
export PROG_ICON="tflexcad17"
|
||||
export WH_WINE_USE="wine-10.18.1-tflex-alt2-wow64"
|
||||
export BASE_PFX="tflex_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export WH_WINDOWS_VER="10"
|
||||
export WINEPREFIX="tflex17"
|
||||
export WH_XDG_OPEN="log"
|
||||
export WH_USE_MESA_GL_OVERRIDE="1"
|
||||
export WINE_D3D_CONFIG="renderer=vulkan"
|
||||
|
||||
if [[ -f "$2" ]] ; then
|
||||
# используем общий whdb файл для подготовки префикса и сервисов
|
||||
# prepair_wine используется из файла настроек
|
||||
source "$WH_DB_DIR/t-flex-cad.whdb"
|
||||
|
||||
wine_run_install "$2"
|
||||
else
|
||||
fatal "Не найден файл установки. Перезапустите по примеру:
|
||||
winehelper install $1 \"/путь/до/файла\""
|
||||
fi
|
||||
@@ -1,13 +1,13 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: Ручная установка дополнений для T-FLEX CAD 17 или 18
|
||||
# info_ru: Ручная установка дополнений для T-FLEX CAD 18
|
||||
########################################################################
|
||||
export PROG_NAME="T-FLEX CAD 17/18"
|
||||
export PROG_ICON="tflexcad"
|
||||
export PROG_NAME="T-FLEX CAD 18"
|
||||
export PROG_ICON="tflexcad18"
|
||||
export WH_WINE_USE="wine-10.18.1-tflex-alt2-wow64"
|
||||
export BASE_PFX="tflex_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export WH_WINDOWS_VER="10"
|
||||
export WINEPREFIX="tflex"
|
||||
export WINEPREFIX="tflex18"
|
||||
export WH_XDG_OPEN="log"
|
||||
export WH_USE_MESA_GL_OVERRIDE="1"
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: Ручная установка дополнений для T-FLEX DOCS 17 или 18
|
||||
# info_ru: Ручная установка дополнений для T-FLEX DOCS 17
|
||||
########################################################################
|
||||
export PROG_NAME="T-FLEX DOCS 17/18"
|
||||
export PROG_ICON="tflexcad"
|
||||
export PROG_NAME="T-FLEX DOCS 17"
|
||||
export PROG_ICON="tflexdoc17"
|
||||
export WH_WINE_USE="wine-10.18.1-tflex-alt2-wow64"
|
||||
export BASE_PFX="tflex_pfx_x64_v03"
|
||||
export WINEARCH="win64"
|
||||
export WH_WINDOWS_VER="10"
|
||||
export WINEPREFIX="tflex"
|
||||
export WINEPREFIX="tflex17"
|
||||
export WH_XDG_OPEN="log"
|
||||
export WH_USE_MESA_GL_OVERRIDE="1"
|
||||
export WINE_D3D_CONFIG="renderer=gdi"
|
||||
|
||||
if [[ -f "$2" ]] ; then
|
||||
# используем общий whdb файл для подготовки префикса и сервисов
|
||||
@@ -1,22 +1,28 @@
|
||||
##### WINE WOW64 #####
|
||||
e9a8b79dfe12cad1304dca573d73aefe109e3d69b6fff739c8dbb8b2d3c271c6 wine-10.12.1-alt1-wow64.tar.xz
|
||||
8b9a6548eb5df921514cd569607e7f845acd18a3a6cf56f1f724b38bc9a94e43 wine-11.6.1-scadoffice-alt5-wow64.tar.xz
|
||||
a176e2ee3d60f691538b3c463047ff5eabd0ba2e37c0158783d79e9fa68caa2f wine-11.4.1-emias-alt2-wow64.tar.xz
|
||||
3c7c394658ad993968532e20ae9b591c1a0ec5b7495c8450de09bd4f8947462e wine-11.3.1-alt1-wow64.tar.xz
|
||||
349c707148a23e667970309248bbbf97b4e2a0db59c548e73d9fe9c3f585872c wine-10.18.1-alt1-wow64.tar.xz
|
||||
a862761c432f8619caf8100589678a1cbb523787259120ccd4388089d81e3b17 wine-10.18.1-tflex-alt2-wow64.tar.xz
|
||||
e9a8b79dfe12cad1304dca573d73aefe109e3d69b6fff739c8dbb8b2d3c271c6 wine-10.12.1-alt1-wow64.tar.xz
|
||||
|
||||
##### WINE AMD64 #####
|
||||
009c95bfe2df3f9264c9c5092f3e30ea7a168dd7869046058a718a70739602d4 wine_wh_tflex_10-9_amd64.tar.xz
|
||||
71d6fdfd23d7988471d345c68e81699b8af931352b03dd216424b398f63c7b12 wine_x_tkg_10-0_amd64.tar.xz
|
||||
e0a84bb4908c3927954d7eef6b8ac7212e442b8c107d000c6890fec340f96183 wine-9.0.14-alt1-amd64.tar.xz
|
||||
fd209c95a3aa507002374417365b3d1119dbe3a0a6d223034171221a2b187b66 wine-9.0-cx-amd64.tar.xz
|
||||
f1bf1261550ca2928cefacdb724926d3d6d103433d0ff6882ee9783a50d8f4e4 wine-8.8-staging-amd64.tar.xz
|
||||
61bec1230b37b8fcc69fd45f848b44fd88cc41fcdd5dc3080336d7da63660f40 wine-7.16.1-alt1-amd64.tar.xz
|
||||
|
||||
##### WINE I586 #####
|
||||
1385323e059c376299a83088ada85e625c170337ba07e5307df75961726d8eee wine-10.18.1-alt2-i586.tar.xz
|
||||
49ce3e1152f01c1f24ca148092a66f6eccd68cf4ee35d0cb04900120f45dd864 wine-10.12.1-alt1-i586.tar.xz
|
||||
3571c40a787f0386e0160b5d471b1bf11fa2a235b497156cd38198b90bcb4a9f wine_x_tkg_10-0_i586.tar.xz
|
||||
fb7fdfde96de10a1b3b051bdf2727b6a7c1768b878483726454dd6726e9e0193 wine-9.0.14-alt1-i586-spravkibk.tar.xz
|
||||
6f86d2220b65b709bf88c6f829a4998de3b929cc2091cd1333a51c32e1491b79 wine-9.0.9-alt1-i586.tar.xz
|
||||
6fea17fd131f57c2ebf7ca4c60d3c5a9e819afe16e5d0b77ecb750da99ae0e38 wine-7.16.1-alt1-i586.tar.xz
|
||||
|
||||
##### DXVK #####
|
||||
d1a86ca53ab7e156e1252d3cf7eed3c66fe0651699cfc9c4ba152024261d8258 dxvk-1.10.1-967.tar.xz
|
||||
98411effbc1b3611b11c4ca3af2ad29400b08e1c8c380791d6351600a06fb3c7 dxvk-1.10.3-28.tar.xz
|
||||
061568b51ce99d285ef2d0f1f31aab65b3e6fd34747073859c5a719bec2a7afd dxvk-1.6.1.tar.xz
|
||||
37ed4a8cd4c2bff3abbf830e6d602c2e0a971eda7c69b3f45834539bc84b1431 dxvk-2.0-116.tar.xz
|
||||
@@ -112,8 +118,9 @@ b3f56f58b5b764aba564c8b8c69eb12425467d57bf2a6457edff08842af03573 vkd3d-proton-1
|
||||
edf16d2b37bc77d121d5d81b06b60d3f694e0060c6606e729ceab30de3d27466 vkd3d-proton-sarek-2.6.0.tar.xz
|
||||
|
||||
##### CPCSP_PROXY #####
|
||||
5a0c582f662ac501865f569124c153b43cded72eb98a001eaa7ebd5b2168f1a2 wine-cpcsp_proxy-0.7.7-alt1.1-em-wow64.tar.xz
|
||||
6f43427148c6f424cd49a406328669e4ec4f21df7bc86f1a6aad2b5c16b50e39 wine-cpcsp_proxy-0.7.7-alt1-wow64.tar.xz
|
||||
3153088ff28d6af415c3504a421e5382554dbb305f38d5a87dd84df90d680421 wine-cpcsp_proxy-0.6.1-alt1.tar.xz
|
||||
fbe72bfe3c2c307363782ce2d37589e142b44111f269657b0e516a6b2d6ab8a9 wine-cpcsp_proxy-0.7.3-alt5-wow64.tar.xz
|
||||
|
||||
##### FONTS #####
|
||||
405bfe3b7c7f80034837c05656535053305727ee4bf1d993521b67b71d08ebc6 extra_fonts_v01.tar.xz
|
||||
@@ -143,6 +150,10 @@ eb1fec64eea3d83f2bdce185c7bc0c1a93afb51139f16256c885098a6f7e2242 defpfx_dn48_x6
|
||||
# create with wine_wh_tflex_10-9_amd64
|
||||
# winetricks isolate_home msxml6 ipamona opensymbol wenquanyi ucrtbase2019 uff unifont droid wenquanyizenhei internal dotnet48 dotnet20 eufonts takao d3dcompiler_47 fontsmooth=rgb vcrun2019 vlgothic andale arial comicsans courier georgia impact times trebuchet verdana webdings corefonts liberation sourcehansans baekmuk tahoma lucida t-flex-cad-prepair
|
||||
|
||||
e71a03b4d26d7ac7091ed526d50103f95cb08ce53dd54a7f52381b8b74c1bc17 tflex_pfx_x64_v04.tar.xz
|
||||
# create with wine-10.18.1-tflex-alt2-wow64
|
||||
# winetricks isolate_home msxml6 ucrtbase2019 fontfix dotnet20 dotnet40 dotnet48 d3dcompiler_47 vcrun2019
|
||||
|
||||
7edbd69b40b8ca3fb3594933c6cd37030180c494c08fd13cbd1a5b46565d65e6 ved_ctm_pfx_x86_v03.tar.xz
|
||||
# create with wine_x_tkg_10-0_amd64 (universal user: xuser)
|
||||
# winetricks isolate_home msxml6 mdac27 wsh57 jet40 vb6run mdac28 vcrun2022 msxml3 arial dotnet40 dotnet48 art2k7min vcrun6 andale comicsans courier georgia impact times trebuchet verdana webdings corefonts msls31 ie8
|
||||
@@ -176,18 +187,44 @@ dfb44ce5e5af7dba1686932c63d6b05e5dd6919a21c78130a7d1d0271b93958e audiorecstatio
|
||||
# create with wine_x_tkg_10-0_i586 (universal user: xuser)
|
||||
# winetricks arial dotnet7 dotnetdesktop7 renderer=gdi
|
||||
|
||||
8c6312f2e4e846a98ca4a87fc90ee1917eb28d4caaddde040fb4d2dd05f8c0fe scadaoffice_pfx_x64_v05.tar.xz
|
||||
# create with wine_x_tkg_10-0_amd64 (universal user: xuser)
|
||||
# winetricks dotnet48 gdiplus vcrun6sp6 vcrun2005 vcrun2019 d3dx11_42 d3dx11_43 d3dx9 d3dcompiler_42 d3dcompiler_43 d3dcompiler_46 d3dcompiler_47 richtx32 riched30 riched20 msxml6 dotnet20
|
||||
|
||||
# addons with ODBC, SSH, *.reg
|
||||
0f4ef434df07bc338ae308af44330590eaa1d9c94b64850514e55b960642d0eb scadoffice_addons_v02.tar.xz
|
||||
|
||||
ef7e8f1ba785d48e4ea287feed5b79bd630d423e59efadb43da9653adefef218 ais-lpu-client_pfx_x86_v01.tar.xz
|
||||
# create with wine_x_tkg_10-0_i586 (universal user: xuser)
|
||||
# winetricks vcrun2005 vcrun2008 dotnet20sp2 dotnet40 mfc42 7zip
|
||||
|
||||
f18864014fdb2fead0b45b5e70e95073072b89168df8cd6debba89081ac51a2a ksamu_pfx_x64_v01.tar.xz
|
||||
# create with wine_x_tkg_10-0_i586 (universal user: xuser)
|
||||
# winetricks msxml6 msxml4 msxml3 riched30 msls31 riched20 msftedit richtx32 fontsmooth=gray
|
||||
70a4cbce1b600434b4d5f241ee90dafb15f7b5f821bc1594e728493febaf017b ksamu_pfx_x64_v03.tar.xz
|
||||
# create with wine-10.18.1-alt1-wow64 (universal user: xuser)
|
||||
# winetricks corefonts tahoma msxml6 msxml4 msxml3 riched30 msls31 riched20 msftedit richtx32 fontsmooth=gray
|
||||
# + manuall installed riched32
|
||||
|
||||
5971788003a5337c23003ad0944c59d549e025c5dc10c19d2e0ec9e7dc04819f ppdgr2_pfx_x64_v01.tar.xz
|
||||
# create with wine-10.18.1-alt1-wow64 (universal user: xuser)
|
||||
# winetricks dotnet48 msxml4 msxml6 corefonts lucida wsh57 vb6run
|
||||
|
||||
60d2e2de1fe44c008ae475b6c81b3ce13da207556a733c5f34225f8ee8df7f9a nalog_pfx_x64_v01.tar.xz
|
||||
# create with wine-10.18.1-alt1-wow64 (universal user: xuser)
|
||||
# winetricks msxml4 msxml6 corefonts wsh57 gdiplus
|
||||
|
||||
04b48931e34c8f221c2487e468771d58200d0e856847f91cb711ed1460b89559 soun_pfx_x64_v01.tar.xz
|
||||
# create with wine-10.18.1-alt1-wow64 (universal user: xuser)
|
||||
# winetricks corefonts ie8
|
||||
|
||||
06bb83c64ef5e749741fb009a12e07ad62865474c5c7db049894c7871a1471cc dialux_pfx_x86_v04.tar.xz
|
||||
# create with wine_x_tkg_10-0_i586 (universal user: xuser)
|
||||
# winetricks mdac27 wsh57 jet40 msxml6 mdac28 gdiplus msxml4 msxml3 vcrun2010 msls31 ie8 dotnet20sp1
|
||||
|
||||
d16c300b5451e4fad6eeebeca0949367a7bdf1cb1878fc51f0f9dee33744d3a7 emias_pfx_x64_v01.tar.xz
|
||||
# create with wine-10.18.1-alt1-wow64 (universal user: xuser)
|
||||
# winetricks crypt32
|
||||
|
||||
cf7f6284fc46d9a0be9756721d04e9f8842a481f805829711d4340fed5e67e69 olimp_pfx_x86_v02.tar.xz
|
||||
# create with wine-10.18.1-alt2-i586
|
||||
# winetricks jet40 dotnet45 corefonts lucida opensymbol tahoma cjkfonts mdac28 msxml4 native_oleaut32 vcrun2005
|
||||
# + psqlodbc_x86.msi installed from script
|
||||
|
||||
4fc8ba95190d7d2cd05f60f29fe6af801f99bf046ab75bccd82bf48a600d5fc4 scadoffice_pfx_x64_v06.tar.xz
|
||||
# create with wine-10.18.1-alt1-wow64 (universal user: xuser)
|
||||
# winetricks msxml6 gdiplus vcrun6sp6 vcrun2005 ucrtbase2019 vcrun2019 d3dx9 d3dx11_43 d3dx11_42 d3dcompiler_42 d3dcompiler_43 d3dcompiler_46 d3dcompiler_47 dotnet40 dotnet48 riched20 riched30 msls31 richtx32
|
||||
|
||||
##### ADDONS #####
|
||||
# addons with ODBC, SSH, *.reg
|
||||
0f4ef434df07bc338ae308af44330590eaa1d9c94b64850514e55b960642d0eb scadoffice_addons_v02.tar.xz
|
||||
@@ -1,15 +1,16 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: Программа «Декларация 2024» позволяет автоматически формировать налоговые декларации по форме 3-НДФЛ. В процессе заполнения Вами данных программа автоматически проверяет их корректность, что уменьшает вероятность появления ошибки.
|
||||
# info_ru: Программа «Декларация» позволяет автоматически формировать налоговые декларации по форме 3-НДФЛ. В процессе заполнения Вами данных программа автоматически проверяет их корректность, что уменьшает вероятность появления ошибки.
|
||||
########################################################################
|
||||
export PROG_URL="https://www.nalog.gov.ru"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WINEPREFIX="nalog"
|
||||
export WH_WINE_USE="wine-10.18.1-alt1-wow64"
|
||||
export WINEPREFIX="declaration"
|
||||
export PROG_NAME="Декларация"
|
||||
export PROG_ICON="declarac"
|
||||
export PROG_ICON="declarac-2"
|
||||
export BASE_PFX="none"
|
||||
export WINEARCH="win32"
|
||||
export WINEARCH="win64"
|
||||
export WH_WINDOWS_VER="10"
|
||||
export INSTALL_DLL="corefonts micross tahoma lucida riched20 comctl32 msxml3 msxml4 msxml6 mdac28 wsh57 vcrun6 vb6run jet40 gdiplus vcrun2019 dotnet20sp2 dotnet40 dotnet48"
|
||||
export WH_USE_EXTRA_FONTS="1"
|
||||
export INSTALL_DLL="renderer=no3d"
|
||||
|
||||
try_get_page "https://www.nalog.gov.ru/rn77/program/5961249/"
|
||||
VER_YEAR=$(read_page | grep -oP 'href="\K[^"]*.msi[^"]*' | awk -F'/' '{print $(NF-2)}' | head -n 1)
|
||||
@@ -23,7 +24,7 @@ if try_download "https://data.nalog.ru/files/${VER_YEAR}/${VER_MSI_SLASH}/${VER_
|
||||
wine_run_install "${AUTOINSTALL_MSI}" /q
|
||||
try_remove_file "${AUTOINSTALL_MSI}"
|
||||
|
||||
WIN_FILE_EXEC="$DRIVE_C/АО ГНИВЦ/Декларация ${YEAR}/Decl${YEAR}.exe"
|
||||
WIN_FILE_EXEC="$DRIVE_C/АО ГНИВЦ/Декларация-2 ${YEAR}/Declaration${YEAR}.exe"
|
||||
create_desktop "$PROG_NAME $YEAR" "$WIN_FILE_EXEC" "$PROG_ICON"
|
||||
|
||||
# Удаляем ярлык предыдущей версии
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: Программное обеспечение для 3D-графики, предназначенное для проектирования освещения. (Версия 4.4.0.2)
|
||||
########################################################################
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="dialux"
|
||||
export PROG_NAME="DIALux"
|
||||
export PROG_ICON="dialux"
|
||||
export BASE_PFX="dialux_pfx_x86_v04"
|
||||
export WH_WINDOWS_VER="xp"
|
||||
export WINEARCH="win32"
|
||||
export INSTALL_DLL="mdac28 jet40 vcrun2010 gdiplus dotnet20sp1 msxml3 msxml4 msxml6 ie8"
|
||||
|
||||
prepair_wine
|
||||
|
||||
WIN_FILE_EXEC="$DRIVE_C/Program Files/DIALux/DIALux.exe"
|
||||
create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON"
|
||||
@@ -2,7 +2,7 @@
|
||||
# info_ru: Удобная программа для создания двухмерных схем и чертежей. Основной акцент сделан на проектировании систем тепло-, водо- и газоснабжения, водоочистки, автоматизированных систем управления технологическими процессами (АСУТП), а также планов эвакуации при пожаре и авариях.
|
||||
########################################################################
|
||||
export PROG_URL="https://easymnemo.com"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_i586"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="easymnemo"
|
||||
export PROG_NAME="Easymnemo"
|
||||
export PROG_ICON="easymnemo"
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: “КСАМУ” - Комплексная система автоматизации медицинского учреждения.
|
||||
########################################################################
|
||||
export PROG_URL="https://docs.medicine-it.ru/"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-wow64"
|
||||
export WINEPREFIX="ksamu"
|
||||
export PROG_NAME="КСАМУ"
|
||||
export PROG_ICON="ksamu"
|
||||
export BASE_PFX="ksamu_pfx_x64_v01"
|
||||
export WINEARCH="win64"
|
||||
export INSTALL_DLL="richtx32 riched20 riched30 msls31 msftedit msxml6 msxml4 msxml3 fontsmooth=gray"
|
||||
# riched32
|
||||
export WH_USE_EXTRA_FONTS="1"
|
||||
export WH_WINDOWS_VER="7"
|
||||
export WH_USE_CPCSP_PROXY="1"
|
||||
|
||||
prepair_wine
|
||||
create_desktop "$PROG_NAME" "$DRIVE_C/KSAMU/KSAMU.exe" "$PROG_ICON"
|
||||
@@ -2,42 +2,118 @@
|
||||
# info_ru: Программа автоматизации процесса подготовки юридическими и физическими лицами документов для представления в налоговые органы в электронной форме и на бумажном носителе.
|
||||
########################################################################
|
||||
export PROG_URL="https://www.nalog.gov.ru"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.18.1-alt1-wow64"
|
||||
export WINEPREFIX="nalog"
|
||||
export PROG_NAME="Налогоплательщик ЮЛ"
|
||||
export PROG_ICON="npul"
|
||||
export BASE_PFX="none"
|
||||
export WINEARCH="win32"
|
||||
export WINEARCH="win64"
|
||||
export WH_WINDOWS_VER="10"
|
||||
export INSTALL_DLL="corefonts micross tahoma lucida riched20 comctl32 msxml3 msxml4 msxml6 mdac28 wsh57 vcrun6 vb6run jet40 gdiplus vcrun2019 dotnet20sp2 dotnet40 dotnet48"
|
||||
export WH_XDG_OPEN="doc"
|
||||
export INSTALL_DLL="msxml4 msxml6 corefonts wsh57 gdiplus vb6run"
|
||||
|
||||
try_get_page "https://data.nalog.ru/rn77/program/5961229/"
|
||||
VER_MSI=$(read_page | grep -oP 'NalogUL\d+\.msi' | tail -1 | grep -oP '\d+')
|
||||
VER_MSI_URL="${VER_MSI:0:1}.${VER_MSI:1}" # 492 → 4.92
|
||||
VER_EXE=$(read_page | grep -oP 'NalogUL\d+\.exe' | tail -1 | grep -oP '\d+')
|
||||
VER_EXE_URL="${VER_EXE:0:1}.${VER_EXE:1:2}.${VER_EXE:3}" # 4924 → 4.92.4
|
||||
HTML_CONTENT=$(read_page)
|
||||
|
||||
AUTOINSTALL_MSI="${WH_TMP_DIR}/NalogUL${VER_MSI}.msi"
|
||||
AUTOINSTALL_EXE="${WH_TMP_DIR}/NalogUL${VER_EXE}.exe"
|
||||
# Извлекаем все версии одним проходом (и 3, и 4 цифры, и MSI, и EXE)
|
||||
declare -A VERSIONS
|
||||
while IFS= read -r match; do
|
||||
if [[ -n "$match" ]]; then
|
||||
ver=$(echo "$match" | grep -oP '\d+')
|
||||
ext="${match##*.}"
|
||||
digits="${#ver}"
|
||||
VERSIONS["${digits}_${ext}"]="$ver"
|
||||
fi
|
||||
done < <(echo "$HTML_CONTENT" | grep -oP 'NalogUL\d{3,4}\.(msi|exe)')
|
||||
|
||||
prepair_wine
|
||||
if try_download "https://data.nalog.ru/files/nalul/${VER_MSI_URL}/NalogUL${VER_MSI}.msi" "${AUTOINSTALL_MSI}" ; then
|
||||
wine_run_install "${AUTOINSTALL_MSI}" /quiet INSTALLDIR="c:\npul"
|
||||
try_remove_file "${AUTOINSTALL_MSI}"
|
||||
|
||||
PRINT_INSTALLER="$(find "$DRIVE_C/npul/INPUTDOC" -name "*.msi")"
|
||||
wine_run_install "${PRINT_INSTALLER}" "/q"
|
||||
|
||||
# Процедуры конвертации, индексация данных. По завершении процедур программа сама закроется. Признаком успешного завершения будет отсутствие в папке с программой файла setupmarker.ini. Если не принять процедуру, .exe файл обновления не установиться.
|
||||
wine_run_install "$DRIVE_C/npul/INPUTDOC/inputdoc.exe" go.ini
|
||||
#TODO: Сделать запуск процедуры в тихом режиме.
|
||||
# Версия программы (3 цифры, приоритет MSI)
|
||||
if [[ -n "${VERSIONS[3_msi]}" ]]; then
|
||||
PROG_VER="${VERSIONS[3_msi]}"
|
||||
PROG_EXT="msi"
|
||||
elif [[ -n "${VERSIONS[3_exe]}" ]]; then
|
||||
PROG_VER="${VERSIONS[3_exe]}"
|
||||
PROG_EXT="exe"
|
||||
else
|
||||
print_error "Не найдена установочная версия программы"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [[ -n "$VER_EXE" ]] \
|
||||
&& try_download "https://data.nalog.ru/files/nalul/${VER_EXE_URL}/NalogUL${VER_EXE}.exe" "${AUTOINSTALL_EXE}"
|
||||
then
|
||||
wine_run_install "${AUTOINSTALL_EXE}" "/SILENT"
|
||||
try_remove_file "${AUTOINSTALL_EXE}"
|
||||
# Версия обновления (4 цифры, приоритет EXE)
|
||||
if [[ -n "${VERSIONS[4_exe]}" ]]; then
|
||||
UPDATE_VER="${VERSIONS[4_exe]}"
|
||||
UPDATE_EXT="exe"
|
||||
elif [[ -n "${VERSIONS[4_msi]}" ]]; then
|
||||
UPDATE_VER="${VERSIONS[4_msi]}"
|
||||
UPDATE_EXT="msi"
|
||||
else
|
||||
UPDATE_VER=""
|
||||
UPDATE_EXT=""
|
||||
fi
|
||||
|
||||
# Формируем URL пути
|
||||
PROG_URL_PATH="${PROG_VER:0:1}.${PROG_VER:1}"
|
||||
AUTOINSTALL_PROG="${WH_TMP_DIR}/NalogUL${PROG_VER}.${PROG_EXT}"
|
||||
|
||||
if [[ -n "$UPDATE_VER" ]]; then
|
||||
UPDATE_URL_PATH="${UPDATE_VER:0:1}.${UPDATE_VER:1:2}.${UPDATE_VER:3}"
|
||||
AUTOINSTALL_UPDATE="${WH_TMP_DIR}/NalogUL${UPDATE_VER}.${UPDATE_EXT}"
|
||||
fi
|
||||
|
||||
prepair_wine
|
||||
|
||||
# Устанавливаем основную программу
|
||||
if [[ "$PROG_EXT" == "msi" ]]; then
|
||||
if try_download "https://data.nalog.ru/files/nalul/${PROG_URL_PATH}/NalogUL${PROG_VER}.msi" "${AUTOINSTALL_PROG}"; then
|
||||
wine_run_install "${AUTOINSTALL_PROG}" /quiet /norestart INSTALLDIR="c:\npul"
|
||||
try_remove_file "${AUTOINSTALL_PROG}"
|
||||
else
|
||||
print_error "Не удалось скачать установочный файл MSI"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
if try_download "https://data.nalog.ru/files/nalul/${PROG_URL_PATH}/NalogUL${PROG_VER}.exe" "${AUTOINSTALL_PROG}"; then
|
||||
wine_run_install "${AUTOINSTALL_PROG}" /VERYSILENT /NORESTART /DIR="c:\npul"
|
||||
try_remove_file "${AUTOINSTALL_PROG}"
|
||||
else
|
||||
print_error "Не удалось скачать установочный файл EXE"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
# Устанавливаем печать PDF417
|
||||
PRINT_INSTALLER="$(find "$DRIVE_C/npul/INPUTDOC" -name "Печать НД с PDF417*.msi" | tail -n 1)"
|
||||
if [[ -n "$PRINT_INSTALLER" ]]; then
|
||||
wine_run_install "${PRINT_INSTALLER}" "/q"
|
||||
fi
|
||||
|
||||
# Процедуры конвертации, индексация данных
|
||||
wine_run_install "$DRIVE_C/npul/INPUTDOC/inputdoc.exe" go.ini
|
||||
|
||||
# Устанавливаем обновление (если есть)
|
||||
if [[ -n "$UPDATE_VER" ]]; then
|
||||
if [[ "$UPDATE_EXT" == "msi" ]]; then
|
||||
if try_download "https://data.nalog.ru/files/nalul/${UPDATE_URL_PATH}/NalogUL${UPDATE_VER}.msi" "${AUTOINSTALL_UPDATE}"; then
|
||||
wine_run_install "${AUTOINSTALL_UPDATE}" /quiet /norestart
|
||||
try_remove_file "${AUTOINSTALL_UPDATE}"
|
||||
|
||||
# После обновления может появиться новая версия печати
|
||||
PRINT_INSTALLER="$(find "$DRIVE_C/npul/INPUTDOC" -name "Печать НД с PDF417*.msi" | tail -n 1)"
|
||||
if [[ -n "$PRINT_INSTALLER" ]]; then
|
||||
wine_run_install "${PRINT_INSTALLER}" /quiet /norestart
|
||||
fi
|
||||
fi
|
||||
else
|
||||
if try_download "https://data.nalog.ru/files/nalul/${UPDATE_URL_PATH}/NalogUL${UPDATE_VER}.exe" "${AUTOINSTALL_UPDATE}"; then
|
||||
wine_run_install "${AUTOINSTALL_UPDATE}" /VERYSILENT /NORESTART
|
||||
try_remove_file "${AUTOINSTALL_UPDATE}"
|
||||
|
||||
# После обновления может появиться новая версия печати
|
||||
PRINT_INSTALLER="$(find "$DRIVE_C/npul/INPUTDOC" -name "Печать НД с PDF417*.msi" | tail -n 1)"
|
||||
if [[ -n "$PRINT_INSTALLER" ]]; then
|
||||
wine_run_install "${PRINT_INSTALLER}" /quiet /norestart
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
else
|
||||
print_info "Дополнительных обновлений не требуется."
|
||||
fi
|
||||
|
||||
@@ -2,21 +2,23 @@
|
||||
# info_ru: Подготовка документов для государственной регистрации (ППДГР)
|
||||
########################################################################
|
||||
export PROG_URL="https://www.nalog.gov.ru"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WINEPREFIX="nalog"
|
||||
export WH_WINE_USE="wine-10.18.1-alt1-wow64"
|
||||
export WINEPREFIX="ppdgr2"
|
||||
export PROG_NAME="ППДГР-2"
|
||||
export PROG_ICON="ppdgr"
|
||||
export BASE_PFX="none"
|
||||
export WINEARCH="win32"
|
||||
export BASE_PFX="ppdgr2_pfx_x64_v01"
|
||||
export WINEARCH="win64"
|
||||
export WH_WINDOWS_VER="10"
|
||||
var_winedlloverride_update "msxml4=b,wininet=b"
|
||||
export INSTALL_DLL="corefonts micross tahoma lucida riched20 comctl32 msxml3 msxml4 msxml6 mdac28 wsh57 vcrun6 vb6run jet40 gdiplus vcrun2019 dotnet20sp2 dotnet40 dotnet48"
|
||||
export WH_USE_EXTRA_FONTS="1"
|
||||
export INSTALL_DLL="dotnet48 msxml4 msxml6 corefonts lucida wsh57 vb6run"
|
||||
# var_winedlloverride_update "gdiplus,msxml3,wininet=b;msxml4=n"
|
||||
|
||||
try_get_page "https://www.nalog.gov.ru/rn77/program/5961277/"
|
||||
VER_MSI_SLASH=$(read_page | grep -oP 'href="\K[^"]*.msi[^"]*' | awk -F'/' '{print $(NF-1)}' | head -n 1)
|
||||
AUTOINSTALL_EXE="${WH_TMP_DIR}/SetupPPDGR2.msi"
|
||||
|
||||
prepair_wine
|
||||
|
||||
if try_download "https://data.nalog.ru/files/ppdgr/${VER_MSI_SLASH}/SetupPPDGR2.msi" "${AUTOINSTALL_EXE}" ; then
|
||||
wine_run_install "${AUTOINSTALL_EXE}" /q
|
||||
try_remove_file "${AUTOINSTALL_EXE}"
|
||||
@@ -24,4 +26,3 @@ if try_download "https://data.nalog.ru/files/ppdgr/${VER_MSI_SLASH}/SetupPPDGR2.
|
||||
WIN_FILE_EXEC="$DRIVE_C/АО ГНИВЦ/ППДГР-2/PPDGR2.exe"
|
||||
create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON"
|
||||
fi
|
||||
https://data.nalog.ru/files/ppdgr/2.7.3/SetupPPDGR2.msi
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: Цифровая платформа для обучения и оценки специалистов нефтегазовой отрасли.
|
||||
########################################################################
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_i586"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export PROG_NAME="РТСИМ.Карьера"
|
||||
export WINEPREFIX="rtsim"
|
||||
export PROG_ICON="rtsim"
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
# info_ru: SCAD Office — это программный комплекс для расчёта строительных конструкций.
|
||||
########################################################################
|
||||
export PROG_URL="https://scadoffice.ru"
|
||||
export WH_WINE_USE="wine-8.8-staging-amd64"
|
||||
export WH_WINE_USE="wine-11.6.1-scadoffice-alt5-wow64"
|
||||
export WINEPREFIX="scadoffice"
|
||||
export PROG_NAME="SCAD Office"
|
||||
export PROG_ICON="scadoffice"
|
||||
export BASE_PFX="none"
|
||||
export WH_WINDOWS_VER="10"
|
||||
export BASE_PFX="scadoffice_pfx_x64_v06"
|
||||
export WH_WINDOWS_VER="7"
|
||||
export WINEARCH="win64"
|
||||
export INSTALL_DLL="dotnet48 gdiplus vcrun6sp6 vcrun2005 vcrun2019 d3dx11_42 d3dx11_43 d3dx9 d3dcompiler_42 d3dcompiler_43 d3dcompiler_46 d3dcompiler_47 richtx32 riched30 riched20 msxml6" #dotnet20
|
||||
export WH_XDG_OPEN="rtf"
|
||||
|
||||
@@ -2,21 +2,25 @@
|
||||
# info_ru: Справочник кодов обозначения налоговых органов для целей учета налогоплательщиков
|
||||
########################################################################
|
||||
export PROG_URL="https://www.nalog.gov.ru"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WINEPREFIX="nalog"
|
||||
export WH_WINE_USE="wine-10.18.1-alt1-wow64"
|
||||
export WINEPREFIX="soun"
|
||||
export PROG_NAME="СОУН"
|
||||
export PROG_ICON="soun"
|
||||
export BASE_PFX="none"
|
||||
export WINEARCH="win32"
|
||||
export WH_WINDOWS_VER="10"
|
||||
export INSTALL_DLL="corefonts micross tahoma lucida riched20 comctl32 msxml3 msxml4 msxml6 mdac28 wsh57 vcrun6 vb6run jet40 gdiplus vcrun2019 dotnet20sp2 dotnet40 dotnet48"
|
||||
export BASE_PFX="soun_pfx_x64_v01"
|
||||
export WINEARCH="win64"
|
||||
export WH_WINDOWS_VER="7"
|
||||
export WH_USE_EXTRA_FONTS="1"
|
||||
export INSTALL_DLL="corefonts ie8"
|
||||
export FREETYPE_PROPERTIES="truetype:interpreter-version=35"
|
||||
|
||||
try_get_page "https://www.nalog.gov.ru/rn77/program/5961268/"
|
||||
VER_MSI_SLASH=$(read_page | grep -oP 'href="\K[^"]*.exe[^"]*' | awk -F'/' '{print $(NF-1)}' | head -n 1)
|
||||
AUTOINSTALL_EXE="${WH_TMP_DIR}/soun_ins.exe"
|
||||
|
||||
prepair_wine
|
||||
if try_download "https://data.nalog.ru/files/Soun/${VER_MSI_SLASH}/soun_ins.exe" "${AUTOINSTALL_EXE}" ; then
|
||||
|
||||
if try_download "https://data.nalog.ru/files/Soun/${VER_MSI_SLASH}/soun_ins.exe" "${AUTOINSTALL_EXE}"
|
||||
then
|
||||
# TODO: Тихий режим или предупреждение
|
||||
wine_run_install "${AUTOINSTALL_EXE}"
|
||||
try_remove_file "${AUTOINSTALL_EXE}"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: Программный комплекс СуперОкна для фабрик по изготовлению окон и дверей.
|
||||
########################################################################
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="swnd"
|
||||
export PROG_NAME="СуперОкна 8"
|
||||
export PROG_ICON="swnd"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
# info_ru: Бесплатная версия программы СуперОкна для небольших предприятий.
|
||||
########################################################################
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.12.1-alt1-i586"
|
||||
export WINEPREFIX="swnd"
|
||||
export PROG_NAME="СуперОкна 8 бесплатная"
|
||||
export PROG_ICON="swnd"
|
||||
|
||||
@@ -2,14 +2,14 @@
|
||||
# info_ru: Программа проверки файлов на соответствие форматам представления в электронном виде налоговых деклараций, бухгалтерской отчетности.
|
||||
########################################################################
|
||||
export PROG_URL="https://www.nalog.gov.ru"
|
||||
export WH_WINE_USE="wine_x_tkg_10-0_amd64"
|
||||
export WH_WINE_USE="wine-10.18.1-alt1-wow64"
|
||||
export WINEPREFIX="nalog"
|
||||
export PROG_NAME="Тестер"
|
||||
export PROG_ICON="tester"
|
||||
export BASE_PFX="none"
|
||||
export WINEARCH="win32"
|
||||
export BASE_PFX="nalog_pfx_x64_v01"
|
||||
export WINEARCH="win64"
|
||||
export INSTALL_DLL="msxml4 msxml6 corefonts wsh57 gdiplus"
|
||||
export WH_WINDOWS_VER="10"
|
||||
export INSTALL_DLL="corefonts micross tahoma lucida riched20 comctl32 msxml3 msxml4 msxml6 mdac28 wsh57 vcrun6 vb6run jet40 gdiplus vcrun2019 dotnet20sp2 dotnet40 dotnet48"
|
||||
|
||||
try_get_page "https://www.nalog.gov.ru/rn77/program/5961279/"
|
||||
VER_EXE_SLASH=$(read_page | grep -oP 'href="\K[^"]*.exe[^"]*' | awk -F'/' '{print $(NF-1)}' | tail -n 1)
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Name=WineHelper
|
||||
Exec=winehelper gui %F
|
||||
Comment=Launching the graphics interface for Winehelper
|
||||
Comment[ru]=Запуск графического интерфейса WineHelper
|
||||
Type=Application
|
||||
Categories=WineHelper;Utility;Emulator;
|
||||
Categories=WineHelper;Application;Settings
|
||||
StartupNotify=true
|
||||
Icon=winehelper
|
||||
StartupWMClass=winehelper
|
||||
Keywords=wine;windows;
|
||||
@@ -0,0 +1,72 @@
|
||||
"""
|
||||
GUI пакет для winehelper.
|
||||
|
||||
Модульная структура:
|
||||
- dialogs: Диалоги (выбор версий, настройки и т.д.)
|
||||
- widgets: Кастомные виджеты
|
||||
- services: Бизнес-логика (кэширование, установка и т.д.)
|
||||
- parsers: Парсеры (sha256sum.list, winetricks output)
|
||||
- utils: Утилиты (обработчики логов и т.д.)
|
||||
"""
|
||||
|
||||
# Parsers
|
||||
from winehelperqt.parsers.sha256_parser import Sha256Parser
|
||||
from winehelperqt.parsers.winetricks_parser import WinetricksOutputParser
|
||||
from winehelperqt.parsers.script_parser import ScriptParser
|
||||
|
||||
# Utils
|
||||
from winehelperqt.utils.log_handler import LogProgressHandler, MultiLogHandler
|
||||
from winehelperqt.utils.cache_service import CacheService, FileCacheService
|
||||
|
||||
# Services
|
||||
from winehelperqt.services.winetricks_service import WinetricksCacheService
|
||||
from winehelperqt.services.winetricks_service import WinetricksLogReader
|
||||
from winehelperqt.services.prefix_manager import PrefixManager
|
||||
from winehelperqt.services.process_handler import ProcessHandler
|
||||
from winehelperqt.services.process_handler import CommandRunner
|
||||
from winehelperqt.services.desktop_file_manager import DesktopFileManager
|
||||
from winehelperqt.services.application_installer import ApplicationInstaller
|
||||
from winehelperqt.services.script_manager import ScriptManager
|
||||
from winehelperqt.services.script_manager import ScriptInfo
|
||||
from winehelperqt.services.installation_manager import InstallationManager
|
||||
from winehelperqt.services.app_launcher import AppLauncher
|
||||
from winehelperqt.services.settings_manager import SettingsManager
|
||||
|
||||
# Widgets
|
||||
from winehelperqt.widgets.icon_manager import IconManager
|
||||
|
||||
# Dialogs
|
||||
from winehelperqt.dialogs.winetricks_manager import WinetricksManagerDialog
|
||||
|
||||
__all__ = [
|
||||
# Parsers
|
||||
'Sha256Parser',
|
||||
'WinetricksOutputParser',
|
||||
'ScriptParser',
|
||||
|
||||
# Utils
|
||||
'LogProgressHandler',
|
||||
'MultiLogHandler',
|
||||
'CacheService',
|
||||
'FileCacheService',
|
||||
|
||||
# Services
|
||||
'WinetricksCacheService',
|
||||
'WinetricksLogReader',
|
||||
'PrefixManager',
|
||||
'ProcessHandler',
|
||||
'CommandRunner',
|
||||
'DesktopFileManager',
|
||||
'ApplicationInstaller',
|
||||
'ScriptManager',
|
||||
'ScriptInfo',
|
||||
'InstallationManager',
|
||||
'AppLauncher',
|
||||
'SettingsManager',
|
||||
|
||||
# Widgets
|
||||
'IconManager',
|
||||
|
||||
# Dialogs
|
||||
'WinetricksManagerDialog',
|
||||
]
|
||||
@@ -0,0 +1,30 @@
|
||||
"""
|
||||
Диалоги для winehelper GUI.
|
||||
"""
|
||||
from winehelperqt.dialogs.base_version_dialog import (
|
||||
BaseVersionSelectionDialog,
|
||||
WineVersionSelectionDialogBase,
|
||||
ComponentVersionSelectionDialogBase,
|
||||
)
|
||||
from winehelperqt.dialogs.winetricks_manager import WinetricksManagerDialog
|
||||
from winehelperqt.dialogs.wine_version import WineVersionSelectionDialog
|
||||
from winehelperqt.dialogs.component_version import ComponentVersionSelectionDialog
|
||||
from winehelperqt.dialogs.create_prefix import CreatePrefixDialog
|
||||
from winehelperqt.dialogs.file_associations import FileAssociationsDialog
|
||||
from winehelperqt.dialogs.settings import AdditionalSettingsDialog, AppAdditionalSettingsDialog
|
||||
|
||||
__all__ = [
|
||||
# Base classes
|
||||
'BaseVersionSelectionDialog',
|
||||
'WineVersionSelectionDialogBase',
|
||||
'ComponentVersionSelectionDialogBase',
|
||||
|
||||
# Dialogs
|
||||
'WinetricksManagerDialog',
|
||||
'WineVersionSelectionDialog',
|
||||
'ComponentVersionSelectionDialog',
|
||||
'CreatePrefixDialog',
|
||||
'FileAssociationsDialog',
|
||||
'AdditionalSettingsDialog',
|
||||
'AppAdditionalSettingsDialog',
|
||||
]
|
||||
@@ -0,0 +1,321 @@
|
||||
"""
|
||||
Базовые классы для диалогов выбора версий.
|
||||
Устраняет дублирование кода между WineVersionSelectionDialog и ComponentVersionSelectionDialog.
|
||||
"""
|
||||
import os
|
||||
import re
|
||||
import shutil
|
||||
import subprocess
|
||||
|
||||
from PyQt5.QtWidgets import (
|
||||
QDialog, QVBoxLayout, QHBoxLayout, QGridLayout, QScrollArea,
|
||||
QTabWidget, QLineEdit, QPushButton, QLabel, QWidget, QMessageBox
|
||||
)
|
||||
from PyQt5.QtCore import Qt, pyqtSignal
|
||||
|
||||
from winehelperqt.parsers.sha256_parser import Sha256Parser
|
||||
from winehelperqt.utils.environment import EnvironmentConfig
|
||||
|
||||
|
||||
class BaseVersionSelectionDialog(QDialog):
|
||||
"""
|
||||
Базовый класс для диалогов выбора версий.
|
||||
|
||||
Предоставляет общую функциональность:
|
||||
- Поле поиска с фильтрацией
|
||||
- Сетка кнопок с версиями
|
||||
- Базовая логика выбора версии
|
||||
"""
|
||||
|
||||
NUM_COLUMNS = 3
|
||||
|
||||
version_selected = pyqtSignal(str)
|
||||
|
||||
def __init__(self, title, parent=None, min_width=600, min_height=400):
|
||||
"""
|
||||
Инициализирует базовый диалог выбора версий.
|
||||
"""
|
||||
super().__init__(parent)
|
||||
|
||||
self.setWindowTitle(title)
|
||||
self.setMinimumSize(min_width, min_height)
|
||||
self.setModal(True)
|
||||
|
||||
self.selected_version = None
|
||||
self.buttons = []
|
||||
self.search_edit = None
|
||||
self.main_layout = None
|
||||
|
||||
self._setup_ui()
|
||||
|
||||
def _get_sha256_path(self):
|
||||
"""Возвращает путь к файлу sha256sum.list."""
|
||||
data_path = EnvironmentConfig.DATA_PATH
|
||||
if data_path:
|
||||
return os.path.join(data_path, "sha256sum.list")
|
||||
# Фолбэк: ищем рядом с этим файлом (для отладки)
|
||||
return os.path.join(os.path.dirname(__file__), '../../sha256sum.list')
|
||||
|
||||
def _setup_ui(self):
|
||||
"""Создает базовый UI диалога."""
|
||||
self.main_layout = QVBoxLayout(self)
|
||||
|
||||
self.search_edit = QLineEdit()
|
||||
self.search_edit.setPlaceholderText("Поиск версии...")
|
||||
self.search_edit.textChanged.connect(self.filter_versions)
|
||||
self.main_layout.addWidget(self.search_edit)
|
||||
|
||||
self._create_version_container()
|
||||
|
||||
def _create_version_container(self):
|
||||
"""Создает контейнер для отображения версий."""
|
||||
raise NotImplementedError("Подкласс должен реализовать _create_version_container")
|
||||
|
||||
def load_versions(self):
|
||||
"""Загружает список версий."""
|
||||
raise NotImplementedError("Подкласс должен реализовать load_versions")
|
||||
|
||||
def filter_versions(self):
|
||||
"""Фильтрует версии по тексту поиска."""
|
||||
search_text = self.search_edit.text().lower()
|
||||
|
||||
visible_buttons = []
|
||||
for btn_widget in self.buttons:
|
||||
if search_text in btn_widget.text().lower():
|
||||
visible_buttons.append(btn_widget)
|
||||
|
||||
for btn_widget in self.buttons:
|
||||
btn_widget.setVisible(False)
|
||||
|
||||
for i, btn_widget in enumerate(visible_buttons):
|
||||
row, col = divmod(i, self.NUM_COLUMNS)
|
||||
if hasattr(self, 'grid_layout'):
|
||||
self.grid_layout.addWidget(btn_widget, row, col)
|
||||
btn_widget.setVisible(True)
|
||||
|
||||
def on_version_selected(self, version_name):
|
||||
"""Обрабатывает выбор версии."""
|
||||
self.selected_version = version_name
|
||||
self.version_selected.emit(version_name)
|
||||
self.accept()
|
||||
|
||||
def get_selected_version(self):
|
||||
"""Возвращает выбранную версию."""
|
||||
return self.selected_version
|
||||
|
||||
@staticmethod
|
||||
def create_grid_buttons(
|
||||
grid_layout,
|
||||
versions_list,
|
||||
on_click_callback,
|
||||
start_row=0,
|
||||
num_columns=3,
|
||||
is_download_tab=False,
|
||||
version_filter=None
|
||||
):
|
||||
"""Создает сетку кнопок для версий."""
|
||||
buttons = []
|
||||
row, col = start_row, 0
|
||||
|
||||
for version_data in versions_list:
|
||||
if isinstance(version_data, tuple):
|
||||
display_name, value_name = version_data
|
||||
else:
|
||||
display_name = value_name = version_data
|
||||
|
||||
btn = QPushButton(display_name)
|
||||
btn.clicked.connect(lambda checked, vn=value_name: on_click_callback(vn))
|
||||
|
||||
if version_filter and not is_download_tab:
|
||||
should_disable = version_filter(value_name)
|
||||
if should_disable:
|
||||
btn.setEnabled(False)
|
||||
btn.setToolTip("Эта версия несовместима с выбранной архитектурой.")
|
||||
|
||||
grid_layout.addWidget(btn, row, col)
|
||||
buttons.append(btn)
|
||||
|
||||
col += 1
|
||||
if col >= num_columns:
|
||||
col = 0
|
||||
row += 1
|
||||
|
||||
return buttons
|
||||
|
||||
|
||||
class WineVersionSelectionDialogBase(BaseVersionSelectionDialog):
|
||||
"""
|
||||
Базовый класс для диалога выбора версии Wine.
|
||||
"""
|
||||
|
||||
def __init__(self, architecture, parent=None):
|
||||
"""
|
||||
Инициализирует диалог выбора версии Wine.
|
||||
"""
|
||||
self.architecture = architecture
|
||||
self.wine_versions_data = {}
|
||||
self.system_wine_display_name = "Системная версия"
|
||||
self.selected_display_text = None
|
||||
|
||||
super().__init__(
|
||||
title=f"Выбор версии Wine для {architecture} префикса",
|
||||
parent=parent,
|
||||
min_width=900,
|
||||
min_height=500
|
||||
)
|
||||
|
||||
def _create_version_container(self):
|
||||
"""Создает контейнер с вкладками для версий Wine."""
|
||||
self.main_tabs = QTabWidget()
|
||||
self.main_layout.addWidget(self.main_tabs)
|
||||
self.load_versions()
|
||||
|
||||
def load_versions(self):
|
||||
"""Загружает и отображает версии Wine."""
|
||||
self.main_tabs.clear()
|
||||
|
||||
loading_widget = QWidget()
|
||||
loading_layout = QVBoxLayout(loading_widget)
|
||||
status_label = QLabel("Загрузка, пожалуйста, подождите...")
|
||||
status_label.setAlignment(Qt.AlignCenter)
|
||||
loading_layout.addWidget(status_label)
|
||||
self.main_tabs.addTab(loading_widget, "Загрузка...")
|
||||
self.main_tabs.setEnabled(False)
|
||||
|
||||
self._parse_sha256_list()
|
||||
self.populate_ui()
|
||||
|
||||
self.main_tabs.setEnabled(True)
|
||||
|
||||
def _parse_sha256_list(self):
|
||||
"""Парсит sha256sum.list для получения списка версий Wine."""
|
||||
sha256_path = self._get_sha256_path()
|
||||
self.wine_versions_data = Sha256Parser.parse_wine_versions(sha256_path)
|
||||
|
||||
if not self.wine_versions_data:
|
||||
QMessageBox.warning(
|
||||
self,
|
||||
"Ошибка",
|
||||
f"Файл с версиями не найден или пуст:\n{sha256_path}"
|
||||
)
|
||||
|
||||
def _get_installed_versions(self):
|
||||
"""Возвращает список локально установленных версий Wine."""
|
||||
dist_path = EnvironmentConfig.WH_DIST_DIR
|
||||
if not dist_path:
|
||||
return []
|
||||
return Sha256Parser.get_installed_versions(dist_path)
|
||||
|
||||
def _get_system_wine_version(self):
|
||||
"""Получает версию системного Wine."""
|
||||
if shutil.which('wine'):
|
||||
try:
|
||||
result = subprocess.run(
|
||||
['wine', '--version'],
|
||||
capture_output=True,
|
||||
text=True,
|
||||
check=True,
|
||||
encoding='utf-8'
|
||||
)
|
||||
return result.stdout.strip()
|
||||
except (FileNotFoundError, subprocess.CalledProcessError) as e:
|
||||
print(f"Не удалось получить версию системного wine: {e}")
|
||||
return "Системная версия"
|
||||
|
||||
def _is_version_compatible(self, version_name):
|
||||
"""Проверяет совместимость версии с выбранной архитектурой."""
|
||||
is_win64_prefix = self.architecture == "win64"
|
||||
is_win32_prefix = self.architecture == "win32"
|
||||
re_32bit_version = re.compile(r'i[3-6]86|i586')
|
||||
|
||||
if is_win64_prefix and re_32bit_version.search(version_name):
|
||||
return False
|
||||
|
||||
if is_win32_prefix:
|
||||
if version_name == "system" or 'wow64' in version_name:
|
||||
return False
|
||||
|
||||
return True
|
||||
|
||||
def populate_ui(self):
|
||||
"""Заполняет UI версиями Wine."""
|
||||
raise NotImplementedError("Подкласс должен реализовать populate_ui")
|
||||
|
||||
|
||||
class ComponentVersionSelectionDialogBase(BaseVersionSelectionDialog):
|
||||
"""
|
||||
Базовый класс для диалога выбора версии компонента (DXVK, VKD3D).
|
||||
"""
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
component_group,
|
||||
title,
|
||||
parent=None,
|
||||
add_extra_options=True
|
||||
):
|
||||
"""
|
||||
Инициализирует диалог выбора версии компонента.
|
||||
"""
|
||||
self.component_group = component_group
|
||||
self.versions_data = []
|
||||
self.add_extra_options = add_extra_options
|
||||
|
||||
super().__init__(
|
||||
title=title,
|
||||
parent=parent,
|
||||
min_width=600,
|
||||
min_height=400
|
||||
)
|
||||
|
||||
def _create_version_container(self):
|
||||
"""Создает контейнер для версий компонента."""
|
||||
self.scroll_area = QScrollArea()
|
||||
self.scroll_area.setWidgetResizable(True)
|
||||
self.scroll_area.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
|
||||
self.main_layout.addWidget(self.scroll_area)
|
||||
|
||||
scroll_content = QWidget()
|
||||
self.scroll_area.setWidget(scroll_content)
|
||||
|
||||
self.grid_layout = QGridLayout(scroll_content)
|
||||
self.grid_layout.setAlignment(Qt.AlignTop)
|
||||
|
||||
self.load_versions(start_row=0)
|
||||
|
||||
if self.add_extra_options:
|
||||
self._create_action_buttons()
|
||||
|
||||
def _create_action_buttons(self):
|
||||
"""Создает кнопки действий (Удалить, Отмена)."""
|
||||
button_layout = QHBoxLayout()
|
||||
|
||||
uninstall_btn = QPushButton("Удалить из префикса")
|
||||
uninstall_btn.setToolTip("Удаляет текущую установленную версию компонента из префикса.")
|
||||
uninstall_btn.clicked.connect(lambda: self.on_version_selected("none"))
|
||||
button_layout.addWidget(uninstall_btn)
|
||||
|
||||
button_layout.addStretch(1)
|
||||
|
||||
cancel_button = QPushButton("Отмена")
|
||||
cancel_button.clicked.connect(self.reject)
|
||||
button_layout.addWidget(cancel_button)
|
||||
|
||||
self.main_layout.addLayout(button_layout)
|
||||
|
||||
def load_versions(self, start_row=0):
|
||||
"""Загружает и отображает версии компонента."""
|
||||
self._parse_sha256_list()
|
||||
self.populate_ui(start_row)
|
||||
|
||||
def _parse_sha256_list(self):
|
||||
"""Парсит sha256sum.list для получения списка версий компонента."""
|
||||
sha256_path = self._get_sha256_path()
|
||||
self.versions_data = Sha256Parser.parse_component_versions(
|
||||
sha256_path,
|
||||
self.component_group
|
||||
)
|
||||
|
||||
def populate_ui(self, start_row):
|
||||
"""Заполняет UI версиями компонента."""
|
||||
raise NotImplementedError("Подкласс должен реализовать populate_ui")
|
||||