Compare commits

...

31 Commits
swnd ... 0.5.1

Author SHA1 Message Date
bda170017c updated changelog to 0.5.1 2025-08-01 12:44:20 +03:00
42e822217b moved ais-lpu-client to testinstall 2025-08-01 12:40:34 +03:00
79d45b6f51 Merge branch 'minergenon-gui' 2025-08-01 12:24:56 +03:00
ae2d47b641 added gui for winehelper 2025-08-01 15:22:53 +06:00
576f939ceb Merge branch 'minergenon-add_prog_url' 2025-08-01 12:17:45 +03:00
c9e4cb23b7 Merge branch 'minergenon-backup_update' 2025-08-01 12:16:13 +03:00
f17b354ca3 added desktop file for GUI 2025-08-01 12:13:32 +03:00
3d28dc2758 su_run: use pkexec for GUI 2025-08-01 12:11:24 +03:00
b403934966 added guardant for t-flex 2025-08-01 12:10:16 +03:00
e79d7e5b17 added a link to the off.sites 2025-07-31 18:39:06 +06:00
ea621f0402 updated creation and restoration of a prefix backup 2025-07-31 09:24:41 +06:00
d65e4dc74d fixed variables for winehelper_gui.py 2025-07-30 12:15:57 +03:00
45062a252d added support winehelper_gui.py 2025-07-29 13:07:39 +03:00
978ef09597 added WH icons 2025-07-29 10:49:04 +03:00
5006817fed fixed and updated AIS LPU Client 2025-07-28 12:38:45 +03:00
c781374979 Merge branch 'minergenon-ais' 2025-07-28 10:52:39 +03:00
2ff5056c8a Merge branch 'minergenon-extract_icon' 2025-07-28 10:50:54 +03:00
6c0afe5dc7 Merge branch 'minergenon-changelog_auto_completion' 2025-07-28 10:50:36 +03:00
5fac6c25c2 Merge branch 'minergenon-swnd' 2025-07-28 10:49:43 +03:00
a1097b9ecc added manualinstall: ais 2025-07-26 15:42:12 +06:00
394ad6e891 added extract_icon function 2025-07-18 13:04:17 +06:00
b122128b0b added changelog auto_completion 2025-07-18 09:29:36 +06:00
674a499c5e wine_run: added check arch for *.exe files 2025-07-17 15:50:31 +03:00
a3de3240b6 print_confirmation: added return 0 2025-07-17 15:35:02 +03:00
f985c8d92e added args: --changelog to help 2025-07-17 15:02:33 +03:00
cd934bab1c added args: changelog 2025-07-17 14:59:35 +03:00
f67c9ca3ec updated changelog to 0.5.0 2025-07-14 18:01:07 +03:00
9304a5e19f dependencies.sh: dropped libOSMesa 2025-07-14 17:42:04 +03:00
a0be9e7ce1 try_download: always display a license agreement 2025-07-14 17:17:54 +03:00
93b8b41fcc replaced read answer to print_confirmation 2025-07-14 14:04:05 +03:00
d3df605806 strict consent to the continuation of the installation of components 2025-07-14 13:46:26 +03:00
52 changed files with 2067 additions and 130 deletions

View File

@ -1,5 +1,23 @@
История изменений: История изменений:
0.5.1:
* добавлена функция извлечения иконки из .exe файлов
* добавлен вывод истории изменений командой: winehelper --changelog
* добавлен графический режим Qt5 (альфа версия)
* обновлены скрипты для совместной работы с графическим режимом
* обновлены скрипты установок для t-flex-* (добавлена поддержка grdcontrol)
* добавлены ссылки на официальные сайты устанавливаемых приложений
* обновлены функции создания и восстановления резервных копий префиков
* добавлены иконки для приложения WineHelper
0.5.0:
* добавлен явный вывод отказа от ответственности и соглашения с ним
* обновлены все скрипты для установки t-flex-*
* добавлен wine_wh_tflex_10-9 с патчами для t-flex-*
* добавлена поддержка новых версий wine 10.3 и выше
* удален пакет libOSMesa из проверки на зависимости
* другие небольшие улучшения и оптимизации скриптов
0.4.9: 0.4.9:
* добавлено автодопонение команд для zsh (zsh_completion) * добавлено автодопонение команд для zsh (zsh_completion)

View File

@ -4,7 +4,7 @@ _winehelper_completions() {
COMPREPLY=() COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}" cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}" prev="${COMP_WORDS[COMP_CWORD-1]}"
opts="--help --version --debug install installed -r -i remove-all --clear-pfx killall remove-prefix backup-prefix restore-prefix" opts="--help --version --debug install installed -r -i remove-all --clear-pfx killall remove-prefix backup-prefix restore-prefix --changelog changelog"
wine_cmd="winecfg winereg winefile wineconsole winetricks desktop regedit explorer cmd run" wine_cmd="winecfg winereg winefile wineconsole winetricks desktop regedit explorer cmd run"
case "${prev}" in case "${prev}" in

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Пакет программ для таможенного оформления. Включает программы Такса и ТамДок в комплектациях Эксперт, а также программу Заполнитель. # info_ru: Пакет программ для таможенного оформления. Включает программы Такса и ТамДок в комплектациях Эксперт, а также программу Заполнитель.
######################################################################## ########################################################################
export PROG_URL="https://www.alta.ru"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="alta" export WINEPREFIX="alta"
export PROG_NAME="Альта-Эксперт" export PROG_NAME="Альта-Эксперт"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Таможенное оформление товаров # info_ru: Таможенное оформление товаров
######################################################################## ########################################################################
export PROG_URL="https://www.alta.ru"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="alta" export WINEPREFIX="alta"
export PROG_NAME="Альта-ГТД" export PROG_NAME="Альта-ГТД"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Пакет программ для таможенного оформления. Включает программы Альта-ГТД, Такса и ТамДок в комплектациях Максимум, а также программу Заполнитель. # info_ru: Пакет программ для таможенного оформления. Включает программы Альта-ГТД, Такса и ТамДок в комплектациях Максимум, а также программу Заполнитель.
######################################################################## ########################################################################
export PROG_URL="https://www.alta.ru"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="alta" export WINEPREFIX="alta"
export PROG_NAME="Альта-Максимум" export PROG_NAME="Альта-Максимум"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Таможенное законодательство # info_ru: Таможенное законодательство
######################################################################## ########################################################################
export PROG_URL="https://www.alta.ru"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="alta" export WINEPREFIX="alta"
export PROG_NAME="Таможенные документы" export PROG_NAME="Таможенные документы"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Расчет контракта # info_ru: Расчет контракта
######################################################################## ########################################################################
export PROG_URL="https://www.alta.ru"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="alta" export WINEPREFIX="alta"
export PROG_NAME="Такса" export PROG_NAME="Такса"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Автоматизация импорта данных # info_ru: Автоматизация импорта данных
######################################################################## ########################################################################
export PROG_URL="https://www.alta.ru"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="alta" export WINEPREFIX="alta"
export PROG_NAME="Заполнитель" export PROG_NAME="Заполнитель"

View File

@ -1,9 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Программа для ведения автоматического контроля договоров, счетов и прочих платежных документов организаций-поставщиков и клиентов. # info_ru: Программа для ведения автоматического контроля договоров, счетов и прочих платежных документов организаций-поставщиков и клиентов.
######################################################################## ########################################################################
export PROG_URL="https://www.ctm.ru"
export PROG_NAME="СТМ-Финансы" export PROG_NAME="СТМ-Финансы"
export PROG_ICON="ctmfinance" export PROG_ICON="ctmfinance"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="ved_ctm" export WINEPREFIX="ved_ctm"
export BASE_PFX="ved_ctm_pfx_x86_v05" export BASE_PFX="ved_ctm_pfx_x86_v05"

View File

@ -1,9 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Удобная многофункциональная программа для ведения электронных журналов. Позволяет автоматизировать документооборот участников ВЭД, таможенных представителей и пр. # info_ru: Удобная многофункциональная программа для ведения электронных журналов. Позволяет автоматизировать документооборот участников ВЭД, таможенных представителей и пр.
######################################################################## ########################################################################
export PROG_URL="https://www.ctm.ru"
export PROG_NAME="СТМ-Журналы" export PROG_NAME="СТМ-Журналы"
export PROG_ICON="ctmjournals" export PROG_ICON="ctmjournals"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="ved_ctm" export WINEPREFIX="ved_ctm"
export BASE_PFX="ved_ctm_pfx_x86_v05" export BASE_PFX="ved_ctm_pfx_x86_v05"

View File

@ -1,9 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Программный модуль, обеспечивающий передачу данных при работе в системе Электронного декларирования через Интернет. # info_ru: Программный модуль, обеспечивающий передачу данных при работе в системе Электронного декларирования через Интернет.
######################################################################## ########################################################################
export PROG_URL="https://www.ctm.ru"
export PROG_NAME="Монитор ЭД" export PROG_NAME="Монитор ЭД"
export PROG_ICON="ctmmonitor" export PROG_ICON="ctmmonitor"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="ved_ctm" export WINEPREFIX="ved_ctm"
export BASE_PFX="ved_ctm_pfx_x86_v05" export BASE_PFX="ved_ctm_pfx_x86_v05"

View File

@ -1,9 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Универсальная программа для создания различных отчетов, в том числе подаваемых в таможенные органы таможенными представителями. # info_ru: Универсальная программа для создания различных отчетов, в том числе подаваемых в таможенные органы таможенными представителями.
######################################################################## ########################################################################
export PROG_URL="https://www.ctm.ru"
export PROG_NAME="СТМ-Отчет" export PROG_NAME="СТМ-Отчет"
export PROG_ICON="ctmreport" export PROG_ICON="ctmreport"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="ved_ctm" export WINEPREFIX="ved_ctm"
export BASE_PFX="ved_ctm_pfx_x86_v05" export BASE_PFX="ved_ctm_pfx_x86_v05"

View File

@ -1,9 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Вспомогательная программа для автоматического обновления через Интернет программного обеспечения «СТМ» # info_ru: Вспомогательная программа для автоматического обновления через Интернет программного обеспечения «СТМ»
######################################################################## ########################################################################
export PROG_URL="https://www.ctm.ru"
export PROG_NAME="СТМ-Сервис" export PROG_NAME="СТМ-Сервис"
export PROG_ICON="ctmservice" export PROG_ICON="ctmservice"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="ved_ctm" export WINEPREFIX="ved_ctm"
export BASE_PFX="ved_ctm_pfx_x86_v05" export BASE_PFX="ved_ctm_pfx_x86_v05"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Сервис обновления ПО # 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_x_tkg_10-0_i586" # wine-9.0.9-alt1-i586"
export WINEPREFIX="daobit" export WINEPREFIX="daobit"
export PROG_NAME="Сервис обновления ПО" export PROG_NAME="Сервис обновления ПО"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Построение маршрутов железнодорожных грузоперевозок # 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_x_tkg_10-0_i586" # wine-9.0.9-alt1-i586"
export WINEPREFIX="daobit" export WINEPREFIX="daobit"
export PROG_NAME="R-Атлас" export PROG_NAME="R-Атлас"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Специализированная информация для организации железнодорожных перевозок # 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_x_tkg_10-0_i586" # wine-9.0.9-alt1-i586"
export WINEPREFIX="daobit" export WINEPREFIX="daobit"
export PROG_NAME="R-Инфо" export PROG_NAME="R-Инфо"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Расчёт размера провозной платы и дополнительных сборов за грузовые перевозки по железной дороге # 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_x_tkg_10-0_i586" # wine-9.0.9-alt1-i586"
export WINEPREFIX="daobit" export WINEPREFIX="daobit"
export PROG_NAME="R-Тариф" export PROG_NAME="R-Тариф"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Программа «Декларация 2024» позволяет автоматически формировать налоговые декларации по форме 3-НДФЛ. В процессе заполнения Вами данных программа автоматически проверяет их корректность, что уменьшает вероятность появления ошибки. # info_ru: Программа «Декларация 2024» позволяет автоматически формировать налоговые декларации по форме 3-НДФЛ. В процессе заполнения Вами данных программа автоматически проверяет их корректность, что уменьшает вероятность появления ошибки.
######################################################################## ########################################################################
export PROG_URL="https://www.nalog.gov.ru"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="declaration" export WINEPREFIX="declaration"
export PROG_NAME="Декларация" export PROG_NAME="Декларация"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Удобная программа для создания двухмерных схем и чертежей. Основной акцент сделан на проектировании систем тепло-, водо- и газоснабжения, водоочистки, автоматизированных систем управления технологическими процессами (АСУТП), а также планов эвакуации при пожаре и авариях. # info_ru: Удобная программа для создания двухмерных схем и чертежей. Основной акцент сделан на проектировании систем тепло-, водо- и газоснабжения, водоочистки, автоматизированных систем управления технологическими процессами (АСУТП), а также планов эвакуации при пожаре и авариях.
######################################################################## ########################################################################
export PROG_URL="https://easymnemo.com"
export WH_WINE_USE="wine_x_tkg_10-0_i586" export WH_WINE_USE="wine_x_tkg_10-0_i586"
export WINEPREFIX="easymnemo" export WINEPREFIX="easymnemo"
export PROG_NAME="Easymnemo" export PROG_NAME="Easymnemo"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Конструктор тестов предназначен для проведения тестирования персонала и учащихся. # info_ru: Конструктор тестов предназначен для проведения тестирования персонала и учащихся.
######################################################################## ########################################################################
export PROG_URL="https://www.keepsoft.ru"
export PROG_NAME="Конструктор тестов" export PROG_NAME="Конструктор тестов"
export AUTOINSTALL_EXE="${WH_TMP_DIR}/simulator4.exe" export AUTOINSTALL_EXE="${WH_TMP_DIR}/simulator4.exe"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Программа автоматизации процесса подготовки юридическими и физическими лицами документов для представления в налоговые органы в электронной форме и на бумажном носителе. # 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_x_tkg_10-0_amd64"
export WINEPREFIX="nalog" export WINEPREFIX="nalog"
export PROG_NAME="Налогоплательщик ЮЛ" export PROG_NAME="Налогоплательщик ЮЛ"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Подготовка документов для государственной регистрации (ППДГР) # info_ru: Подготовка документов для государственной регистрации (ППДГР)
######################################################################## ########################################################################
export PROG_URL="https://www.nalog.gov.ru"
export AUTOINSTALL_EXE="${WH_TMP_DIR}/SetupPPDGR2.msi" export AUTOINSTALL_EXE="${WH_TMP_DIR}/SetupPPDGR2.msi"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="ppdgr2" export WINEPREFIX="ppdgr2"

View File

@ -1,8 +1,11 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: SCAD Office — это программный комплекс для расчёта строительных конструкций, с дополнением Apache OpenOffice. Apache OpenOffice - пакет офисного программного обеспечения для обработки текстов, электронных таблиц, презентаций, графики, баз данных и многого другого. # info_ru: SCAD Office — это программный комплекс для расчёта строительных конструкций, с дополнением Apache OpenOffice. Apache OpenOffice - пакет офисного программного обеспечения для обработки текстов, электронных таблиц, презентаций, графики, баз данных и многого другого.
######################################################################## ########################################################################
export PROG_URL="https://scadoffice.ru"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="scadoffice" export WINEPREFIX="scadoffice"
export PROG_NAME="SCAD Office"
export PROG_ICON="scadoffice"
export BASE_PFX="scadaoffice_pfx_x64_v03" export BASE_PFX="scadaoffice_pfx_x64_v03"
export WH_WINDOWS_VER="10" export WH_WINDOWS_VER="10"
export WINEARCH="win64" export WINEARCH="win64"
@ -65,14 +68,14 @@ if try_download "https://scadhelp.ru/files/10/download" "${AUTOINSTALL_EXE}" ; t
try_remove_file "$AUTOINSTALL_EXE" try_remove_file "$AUTOINSTALL_EXE"
# Определение всех программ, значков и исполняемых файлов # Определение всех программ, значков и исполняемых файлов
declare -a PROG_NAME=("Арбат" "Вест" "Глобальные настройки" "Декор" "Дискретная арматура" "Запрос" "Камин" "КоКон" "Комета" "Конструктор сечений" "Консул" "Конфигуратор лицензий" "Кристалл" "Кросс" "Куст" "Магнум" "Монолит" "Откос" "Пастернак" "Преобразование ед. измерений" "Cортамент металлопроката" "Расчет по формуле" "Редактор акселерограмм" "Редактор динамичности" "Редактор материалов" "Тонус" "Эквивалентное сечение" "SCAD++") declare -a PROG_NAME_All=("Арбат" "Вест" "Глобальные настройки" "Декор" "Дискретная арматура" "Запрос" "Камин" "КоКон" "Комета" "Конструктор сечений" "Консул" "Конфигуратор лицензий" "Кристалл" "Кросс" "Куст" "Магнум" "Монолит" "Откос" "Пастернак" "Преобразование ед. измерений" "Cортамент металлопроката" "Расчет по формуле" "Редактор акселерограмм" "Редактор динамичности" "Редактор материалов" "Тонус" "Эквивалентное сечение" "SCAD++")
declare -a PROG_ICON=("arbat" "west" "globalsettings" "decor" "rebar" "underground" "comein" "cocon" "comet" "section" "consul" "configprotection" "kristall" "cross" "kust" "magnum" "monolit" "slope" "pasternak" "ucalc" "viewprof" "scalc" "acceledit" "betaedit" "materialsedit" "tonus" "sezam" "scadx") declare -a PROG_ICON_ALL=("arbat" "west" "globalsettings" "decor" "rebar" "underground" "comein" "cocon" "comet" "section" "consul" "configprotection" "kristall" "cross" "kust" "magnum" "monolit" "slope" "pasternak" "ucalc" "viewprof" "scalc" "acceledit" "betaedit" "materialsedit" "tonus" "sezam" "scadx")
declare -a WIN_FILE_EXEC=("${DRIVE_C_SCADOFFICE}/Arbat.exe" "${DRIVE_C_SCADOFFICE}/West.exe" "${DRIVE_C_SCADOFFICE}/GlobalSettings.exe" "${DRIVE_C_SCADOFFICE}/Decor.exe" "${DRIVE_C_SCADOFFICE}/ReBar.exe" "${DRIVE_C_SCADOFFICE}/UnderGround.exe" "${DRIVE_C_SCADOFFICE}/ComeIn.exe" "${DRIVE_C_SCADOFFICE}/CoCon.exe" "${DRIVE_C_SCADOFFICE}/Comet2.exe" "${DRIVE_C_SCADOFFICE}/Section.exe" "${DRIVE_C_SCADOFFICE}/Consul.exe" "${DRIVE_C_SCADOFFICE}/ConfigProtection.exe" "${DRIVE_C_SCADOFFICE}/Kristall.exe" "${DRIVE_C_SCADOFFICE}/Cross.exe" "${DRIVE_C_SCADOFFICE}/Kust2.exe" "${DRIVE_C_SCADOFFICE}/Magnum.exe" "${DRIVE_C_SCADOFFICE}/Monolit.exe" "${DRIVE_C_SCADOFFICE}/Slope.exe" "${DRIVE_C_SCADOFFICE}/Pasternak.exe" "${DRIVE_C_SCADOFFICE}/UCalc.exe" "${DRIVE_C_SCADOFFICE}/ViewProf.exe" "${DRIVE_C_SCADOFFICE}/SCalc.exe" "${DRIVE_C_SCADOFFICE}/AccelEdit.exe" "${DRIVE_C_SCADOFFICE}/BetaEdit.exe" "${DRIVE_C_SCADOFFICE}/MaterialsEdit.exe" "${DRIVE_C_SCADOFFICE}/Tonus.exe" "${DRIVE_C_SCADOFFICE}/Sezam.exe" "${DRIVE_C_SCADOFFICE}/SCADX.exe") declare -a WIN_FILE_EXEC=("${DRIVE_C_SCADOFFICE}/Arbat.exe" "${DRIVE_C_SCADOFFICE}/West.exe" "${DRIVE_C_SCADOFFICE}/GlobalSettings.exe" "${DRIVE_C_SCADOFFICE}/Decor.exe" "${DRIVE_C_SCADOFFICE}/ReBar.exe" "${DRIVE_C_SCADOFFICE}/UnderGround.exe" "${DRIVE_C_SCADOFFICE}/ComeIn.exe" "${DRIVE_C_SCADOFFICE}/CoCon.exe" "${DRIVE_C_SCADOFFICE}/Comet2.exe" "${DRIVE_C_SCADOFFICE}/Section.exe" "${DRIVE_C_SCADOFFICE}/Consul.exe" "${DRIVE_C_SCADOFFICE}/ConfigProtection.exe" "${DRIVE_C_SCADOFFICE}/Kristall.exe" "${DRIVE_C_SCADOFFICE}/Cross.exe" "${DRIVE_C_SCADOFFICE}/Kust2.exe" "${DRIVE_C_SCADOFFICE}/Magnum.exe" "${DRIVE_C_SCADOFFICE}/Monolit.exe" "${DRIVE_C_SCADOFFICE}/Slope.exe" "${DRIVE_C_SCADOFFICE}/Pasternak.exe" "${DRIVE_C_SCADOFFICE}/UCalc.exe" "${DRIVE_C_SCADOFFICE}/ViewProf.exe" "${DRIVE_C_SCADOFFICE}/SCalc.exe" "${DRIVE_C_SCADOFFICE}/AccelEdit.exe" "${DRIVE_C_SCADOFFICE}/BetaEdit.exe" "${DRIVE_C_SCADOFFICE}/MaterialsEdit.exe" "${DRIVE_C_SCADOFFICE}/Tonus.exe" "${DRIVE_C_SCADOFFICE}/Sezam.exe" "${DRIVE_C_SCADOFFICE}/SCADX.exe")
# Цикл создания десктоп файлов для scad office # Цикл создания десктоп файлов для scad office
for i in "${!PROG_NAME[@]}"; do for i in "${!PROG_NAME_All[@]}"; do
create_desktop "${PROG_NAME[i]}" "${WIN_FILE_EXEC[i]}" "${PROG_ICON[i]}" "nocopy" create_desktop "${PROG_NAME_All[i]}" "${WIN_FILE_EXEC[i]}" "${PROG_ICON_ALL[i]}" "nocopy"
done done
fi fi

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Справочник кодов обозначения налоговых органов для целей учета налогоплательщиков # info_ru: Справочник кодов обозначения налоговых органов для целей учета налогоплательщиков
######################################################################## ########################################################################
export PROG_URL="https://www.nalog.gov.ru"
export AUTOINSTALL_EXE="${WH_TMP_DIR}/soun_ins.exe" export AUTOINSTALL_EXE="${WH_TMP_DIR}/soun_ins.exe"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="soun" export WINEPREFIX="soun"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: «Справки БК» — специальное программное обеспечение, предназначенное для заполнения справок о доходах, расходах, об имуществе и обязательствах имущественного характера. # info_ru: «Справки БК» — специальное программное обеспечение, предназначенное для заполнения справок о доходах, расходах, об имуществе и обязательствах имущественного характера.
######################################################################## ########################################################################
export PROG_URL="https://spravki-bk.ru"
export WH_WINE_USE="wine-9.0.14-alt1-i586-spravkibk" export WH_WINE_USE="wine-9.0.14-alt1-i586-spravkibk"
export WINEPREFIX="spravki-bk" export WINEPREFIX="spravki-bk"
export PROG_NAME="СПО Справки БК" export PROG_NAME="СПО Справки БК"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Учебная версия. САПР, объединяющая в себе мощные параметрические возможности 2D и 3D-моделирования со средствами создания и оформления чертежей и конструкторской документации по ЕСКД. # info_ru: Учебная версия. САПР, объединяющая в себе мощные параметрические возможности 2D и 3D-моделирования со средствами создания и оформления чертежей и конструкторской документации по ЕСКД.
######################################################################## ########################################################################
export PROG_URL="https://www.tflexcad.ru"
export PROG_NAME="T-FLEX CAD Учебная Версия 17" export PROG_NAME="T-FLEX CAD Учебная Версия 17"
export PROG_ICON="tflexcad" export PROG_ICON="tflexcad"
export WH_WINE_USE="wine_wh_tflex_10-9_amd64" export WH_WINE_USE="wine_wh_tflex_10-9_amd64"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Профессиональная САПР, объединяющая в себе мощные параметрические возможности 2D и 3D-моделирования со средствами создания и оформления чертежей и конструкторской документации по ЕСКД. # info_ru: Профессиональная САПР, объединяющая в себе мощные параметрические возможности 2D и 3D-моделирования со средствами создания и оформления чертежей и конструкторской документации по ЕСКД.
######################################################################## ########################################################################
export PROG_URL="https://www.tflexcad.ru"
export PROG_NAME="T-FLEX CAD 17" export PROG_NAME="T-FLEX CAD 17"
export PROG_ICON="tflexcad" export PROG_ICON="tflexcad"
export WH_WINE_USE="wine_wh_tflex_10-9_amd64" export WH_WINE_USE="wine_wh_tflex_10-9_amd64"

View File

@ -1,6 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Приложения для T-FLEX CAD 17 (T-FLEX Анализ 17, T-FLEX Динамика 17, T-FLEX Зубчатые передачи 17, T-FLEX ЧПУ 17, T-FLEX Раскрой 17, T-FLEX Электротехника 17, T-FLEX VR 17, T-FLEX Печатные платы 17) # info_ru: Приложения для T-FLEX CAD 17 (T-FLEX Анализ 17, T-FLEX Динамика 17, T-FLEX Зубчатые передачи 17, T-FLEX ЧПУ 17, T-FLEX Раскрой 17, T-FLEX Электротехника 17, T-FLEX VR 17, T-FLEX Печатные платы 17)
######################################################################## ########################################################################
export PROG_URL="https://www.tflexcad.ru"
export PROG_NAME="Приложения для T-FLEX CAD 17"
export PROG_ICON="tflexcad"
export WH_WINDOWS_VER="10" export WH_WINDOWS_VER="10"
export WH_WINE_USE="wine_wh_tflex_10-9_amd64" export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
export BASE_PFX="tflex17_pfx_x64_v02" export BASE_PFX="tflex17_pfx_x64_v02"

View File

@ -1,6 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Обучающие материалы, примеры, бесплатные библиотеки для T-FLEX CAD 17 (Учебное пособие 17, Стандартные элементы 17, Элементы уплотнительной техники 17, Станочные приспособления 17, Детали штампов листовой штамповки 17, Детали пресс-форм 17, Примеры 17) # info_ru: Обучающие материалы, примеры, бесплатные библиотеки для T-FLEX CAD 17 (Учебное пособие 17, Стандартные элементы 17, Элементы уплотнительной техники 17, Станочные приспособления 17, Детали штампов листовой штамповки 17, Детали пресс-форм 17, Примеры 17)
######################################################################## ########################################################################
export PROG_URL="https://www.tflexcad.ru"
export PROG_NAME="Ресурсы для T-FLEX CAD 17"
export PROG_ICON="tflexcad"
export WH_WINDOWS_VER="10" export WH_WINDOWS_VER="10"
export WH_WINE_USE="wine_wh_tflex_10-9_amd64" export WH_WINE_USE="wine_wh_tflex_10-9_amd64"
export BASE_PFX="tflex17_pfx_x64_v02" export BASE_PFX="tflex17_pfx_x64_v02"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Профессиональная САПР, объединяющая в себе мощные параметрические возможности 2D и 3D-моделирования со средствами создания и оформления чертежей и конструкторской документации по ЕСКД. # info_ru: Профессиональная САПР, объединяющая в себе мощные параметрические возможности 2D и 3D-моделирования со средствами создания и оформления чертежей и конструкторской документации по ЕСКД.
######################################################################## ########################################################################
export PROG_URL="https://www.tflexcad.ru"
export PROG_NAME="T-FLEX CAD 2D+ 17" export PROG_NAME="T-FLEX CAD 2D+ 17"
export PROG_ICON="tflexcad" export PROG_ICON="tflexcad"
export WH_WINE_USE="wine_wh_tflex_10-9_amd64" export WH_WINE_USE="wine_wh_tflex_10-9_amd64"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Система T-FLEX DOCs предназначена для комплексного управления инженерными данными предприятия, а также решения задач конструкторско-технологического и организационно-распорядительного документооборота. # info_ru: Система T-FLEX DOCs предназначена для комплексного управления инженерными данными предприятия, а также решения задач конструкторско-технологического и организационно-распорядительного документооборота.
######################################################################## ########################################################################
export PROG_URL="https://www.tflexcad.ru"
export PROG_NAME="T-FLEX DOCs 17" export PROG_NAME="T-FLEX DOCs 17"
export PROG_ICON="tflexdoc" export PROG_ICON="tflexdoc"
export WH_WINE_USE="wine_wh_tflex_10-9_amd64" export WH_WINE_USE="wine_wh_tflex_10-9_amd64"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Просмотр, печать и аннотирование документов T-FLEX CAD # info_ru: Просмотр, печать и аннотирование документов T-FLEX CAD
######################################################################## ########################################################################
export PROG_URL="https://www.tflexcad.ru"
export PROG_NAME="T-FLEX Viewer 17" export PROG_NAME="T-FLEX Viewer 17"
export PROG_ICON="tflexcad" export PROG_ICON="tflexcad"
export WH_WINE_USE="wine_wh_tflex_10-9_amd64" export WH_WINE_USE="wine_wh_tflex_10-9_amd64"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Программа проверки файлов на соответствие форматам представления в электронном виде налоговых деклараций, бухгалтерской отчетности. # info_ru: Программа проверки файлов на соответствие форматам представления в электронном виде налоговых деклараций, бухгалтерской отчетности.
######################################################################## ########################################################################
export PROG_URL="https://www.nalog.gov.ru"
export LAUNCH_PARAMETERS="/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-" export LAUNCH_PARAMETERS="/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-"
export AUTOINSTALL_EXE="${WH_TMP_DIR}/tester2269.exe" export AUTOINSTALL_EXE="${WH_TMP_DIR}/tester2269.exe"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"

View File

@ -1,9 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Электронный алфавитно-предметный указатель, предназначенный для быстрого и простого подбора для товара кода ТН ВЭД ЕАЭС. # info_ru: Электронный алфавитно-предметный указатель, предназначенный для быстрого и простого подбора для товара кода ТН ВЭД ЕАЭС.
######################################################################## ########################################################################
export PROG_URL="https://ctm.ru"
export PROG_NAME="ВЭД-Алфавит" export PROG_NAME="ВЭД-Алфавит"
export PROG_ICON="vedalf" export PROG_ICON="vedalf"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="ved_ctm" export WINEPREFIX="ved_ctm"
export BASE_PFX="ved_ctm_pfx_x86_v05" export BASE_PFX="ved_ctm_pfx_x86_v05"

View File

@ -1,9 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Программа для проверки ДТ и ДТС до представления их в таможенные органы и для внесения изменений в электронный вид документов. # info_ru: Программа для проверки ДТ и ДТС до представления их в таможенные органы и для внесения изменений в электронный вид документов.
######################################################################## ########################################################################
export PROG_URL="https://ctm.ru"
export PROG_NAME="ВЭД-Контроль" export PROG_NAME="ВЭД-Контроль"
export PROG_ICON="vedcontrol" export PROG_ICON="vedcontrol"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="ved_ctm" export WINEPREFIX="ved_ctm"
export BASE_PFX="ved_ctm_pfx_x86_v05" export BASE_PFX="ved_ctm_pfx_x86_v05"

View File

@ -1,9 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Программа для формирования полного комплекта документов для таможенного оформления. # info_ru: Программа для формирования полного комплекта документов для таможенного оформления.
######################################################################## ########################################################################
export PROG_URL="https://ctm.ru"
export PROG_NAME="ВЭД-Декларант" export PROG_NAME="ВЭД-Декларант"
export PROG_ICON="veddcl" export PROG_ICON="veddcl"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="ved_ctm" export WINEPREFIX="ved_ctm"
export BASE_PFX="ved_ctm_pfx_x86_v05" export BASE_PFX="ved_ctm_pfx_x86_v05"

View File

@ -1,9 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Уникальный электронный справочник по таможенному законодательству государств-членов Евразийского экономического союза, содержащий актуальную нормативно-правовую базу в сфере регулирования внешнеэкономической деятельности. # info_ru: Уникальный электронный справочник по таможенному законодательству государств-членов Евразийского экономического союза, содержащий актуальную нормативно-правовую базу в сфере регулирования внешнеэкономической деятельности.
######################################################################## ########################################################################
export PROG_URL="https://ctm.ru"
export PROG_NAME="ВЭД-Инфо" export PROG_NAME="ВЭД-Инфо"
export PROG_ICON="vedinfo" export PROG_ICON="vedinfo"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="ved_ctm" export WINEPREFIX="ved_ctm"
export BASE_PFX="ved_ctm_pfx_x86_v05" export BASE_PFX="ved_ctm_pfx_x86_v05"

View File

@ -1,9 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Программа для расчета таможенных платежей и стоимости товаров после «таможенной очистки» # info_ru: Программа для расчета таможенных платежей и стоимости товаров после «таможенной очистки»
######################################################################## ########################################################################
export PROG_URL="https://ctm.ru"
export PROG_NAME="ВЭД-Платежи" export PROG_NAME="ВЭД-Платежи"
export PROG_ICON="vedpayments" export PROG_ICON="vedpayments"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="ved_ctm" export WINEPREFIX="ved_ctm"
export BASE_PFX="ved_ctm_pfx_x86_v05" export BASE_PFX="ved_ctm_pfx_x86_v05"

View File

@ -1,9 +1,9 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: Программа для формирования полного комплекта документов для таможенного оформления. # info_ru: Программа для формирования полного комплекта документов для таможенного оформления.
######################################################################## ########################################################################
export PROG_URL="https://ctm.ru"
export PROG_NAME="ВЭД-Склад" export PROG_NAME="ВЭД-Склад"
export PROG_ICON="vedsts" export PROG_ICON="vedsts"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export WINEPREFIX="ved_ctm" export WINEPREFIX="ved_ctm"
export BASE_PFX="ved_ctm_pfx_x86_v05" export BASE_PFX="ved_ctm_pfx_x86_v05"

View File

@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# info_ru: ZuluGIS 2021 Инженерные расчёты (Полный) 64-бит. Включает ZuluGIS, пакеты расчетов ZuluThermo, ZuluHydro, ZuluDrain, ZuluGaz, ZuluSteam, библиотеки ZuluXTools и ZuluNetTools. Дополнительно в состав пакета входит Microsoft SQL Server Express LocalDB 2012. # info_ru: ZuluGIS 2021 Инженерные расчёты (Полный) 64-бит. Включает ZuluGIS, пакеты расчетов ZuluThermo, ZuluHydro, ZuluDrain, ZuluGaz, ZuluSteam, библиотеки ZuluXTools и ZuluNetTools. Дополнительно в состав пакета входит Microsoft SQL Server Express LocalDB 2012.
######################################################################## ########################################################################
export PROG_URL="https://www.politerm.com"
export WH_WINE_USE="wine_x_tkg_10-0_amd64" export WH_WINE_USE="wine_x_tkg_10-0_amd64"
export PROG_NAME="ZuluGIS 2021" export PROG_NAME="ZuluGIS 2021"
export WINEPREFIX="zulugis" export WINEPREFIX="zulugis"

View File

@ -11,12 +11,13 @@ export WH_XDG_OPEN="log"
export INSTALL_DLL="corefonts d3dcompiler_47 dotnet48 vcrun2022 ucrtbase2019 msxml6 fontsmooth=rgb baekmuk droid eufonts ipamona liberation lucida opensymbol sourcehansans tahoma takao uff unifont vlgothic wenquanyi wenquanyizenhei" export INSTALL_DLL="corefonts d3dcompiler_47 dotnet48 vcrun2022 ucrtbase2019 msxml6 fontsmooth=rgb baekmuk droid eufonts ipamona liberation lucida opensymbol sourcehansans tahoma takao uff unifont vlgothic wenquanyi wenquanyizenhei"
export WH_USE_MESA_GL_OVERRIDE="1" export WH_USE_MESA_GL_OVERRIDE="1"
# Компоненты поддержки T-FLEX PLM 17 (Linux) # Компоненты поддержки T-FLEX PLM (Linux)
AUTOINSTALL_ZIP_LIN="$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux.zip" GRDCONTROL_VER="4.3.0-0"
AUTOINSTALL_DIR_LIN="$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux" AUTOINSTALL_ZIP_LIN="$WH_TMP_DIR/Prerequisites_T-FLEX_Linux.zip"
AUTOINSTALL_DIR_LIN="$WH_TMP_DIR/Prerequisites_T-FLEX_Linux"
AUTOINSTALL_REG_LIN="$AUTOINSTALL_DIR_LIN/Components/fake_hasp.reg" AUTOINSTALL_REG_LIN="$AUTOINSTALL_DIR_LIN/Components/fake_hasp.reg"
# Компоненты поддержки T-FLEX PLM 17 (Windows) # Компоненты поддержки T-FLEX PLM (Windows)
AUTOINSTALL_ZIP_WIN="$WH_TMP_DIR/T-FLEX 17 Prerequisites.zip" AUTOINSTALL_ZIP_WIN="$WH_TMP_DIR/T-FLEX 17 Prerequisites.zip"
AUTOINSTALL_DIR_WIN="$WH_TMP_DIR/Компоненты поддержки T-FLEX 17" AUTOINSTALL_DIR_WIN="$WH_TMP_DIR/Компоненты поддержки T-FLEX 17"
AUTOINSTALL_EXE_WIN1="$AUTOINSTALL_DIR_WIN/Access Database Engine 2007/AccessDatabaseEngine.exe" AUTOINSTALL_EXE_WIN1="$AUTOINSTALL_DIR_WIN/Access Database Engine 2007/AccessDatabaseEngine.exe"
@ -26,28 +27,35 @@ AUTOINSTALL_EXE_WIN2="$AUTOINSTALL_DIR_WIN/TSC2/Setup_TSC2.msi"
prepair_wine prepair_wine
if [[ -d "$WINEPREFIX" ]] \ if [[ -d "$WINEPREFIX" ]] \
&& grep -q "t-flex-cad17-prepair" "$WINEPREFIX/winetricks.log" \ && 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 aksusbd \
&& systemctl list-units --type service --state running | grep hasplmd && systemctl list-units --type service --state running | grep hasplmd \
&& rpm -q grdcontrol | grep -q "$GRDCONTROL_VER"
then then
print_info "Префикс $PREFIX_NAME готов к установке ПО." print_info "Префикс $PREFIX_NAME готов к установке ПО."
print_info "Сервисы: aksusbd и hasplmd уже запущены." print_info "Сервисы: aksusbd и hasplmd уже запущены. grdcontrol-$GRDCONTROL_VER установлен."
else else
print_warning "Службы aksusbd и hasplmd не запущены, или префикс не подготовлен" print_warning "Службы aksusbd и hasplmd не запущены, или grdcontrol-$GRDCONTROL_VER не установлен."
print_info "Запускаем подготовку префикса скриптом: t-flex-cad17-prepair"
if [[ "$BASE_PFX" == "none" ]] \ if [[ "$BASE_PFX" == "none" ]] \
|| ! systemctl list-units --type service --state running | grep aksusbd \ || ! systemctl list-units --type service --state running | grep aksusbd \
|| ! systemctl list-units --type service --state running | grep hasplmd || ! systemctl list-units --type service --state running | grep hasplmd \
|| ! rpm -q grdcontrol | grep -q "$GRDCONTROL_VER"
then then
# Компоненты поддержки T-FLEX PLM 17 (Linux) # Компоненты поддержки T-FLEX PLM (Linux)
if try_download "https://www.tflex.ru/downloads/Prerequisites_T-FLEX_17_Linux.zip" "${AUTOINSTALL_ZIP_LIN}" ; then if try_download "https://www.tflex.ru/downloads/Prerequisites_T-FLEX_Linux.zip" "${AUTOINSTALL_ZIP_LIN}" ; then
unpack "$AUTOINSTALL_ZIP_LIN" "$AUTOINSTALL_DIR_LIN" unpack "$AUTOINSTALL_ZIP_LIN" "$AUTOINSTALL_DIR_LIN"
"$WINELOADER" regedit "$AUTOINSTALL_REG_LIN" "$WINELOADER" regedit "$AUTOINSTALL_REG_LIN"
fi fi
if rpm -q grdcontrol | grep -q "$GRDCONTROL_VER"
then print_info "grdcontrol-$GRDCONTROL_VER уже установлен в системе."
else su_run rpm -iv "$AUTOINSTALL_DIR_LIN/Guardant_Linux/grdcontrol.x86_64.rpm"
fi
if [[ "$BASE_PFX" == "none" ]] ; then if [[ "$BASE_PFX" == "none" ]] ; then
# Компоненты поддержки T-FLEX PLM 17 (Windows) print_info "Запускаем подготовку префикса."
# Компоненты поддержки T-FLEX PLM (Windows)
if try_download "https://www.tflex.ru/downloads/T-FLEX%2017%20Prerequisites.zip" "${AUTOINSTALL_ZIP_WIN}" ; then if try_download "https://www.tflex.ru/downloads/T-FLEX%2017%20Prerequisites.zip" "${AUTOINSTALL_ZIP_WIN}" ; then
unpack "$AUTOINSTALL_ZIP_WIN" "$WH_TMP_DIR" unpack "$AUTOINSTALL_ZIP_WIN" "$WH_TMP_DIR"
unpack "$AUTOINSTALL_EXE_WIN1" "$AUTOINSTALL_EXE_WIN_MSI" unpack "$AUTOINSTALL_EXE_WIN1" "$AUTOINSTALL_EXE_WIN_MSI"
@ -57,13 +65,18 @@ else
fi fi
rm -fR "$DRIVE_C/Program Files/Common Files/System" rm -fR "$DRIVE_C/Program Files/Common Files/System"
rm -fR "$DRIVE_C/Program Files (x86)/Common Files/System" rm -fR "$DRIVE_C/Program Files (x86)/Common Files/System"
cp -r "$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/Components/Program Files/Common Files/System" "$DRIVE_C/Program Files/Common Files"
cp -r "$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/Components/Program Files (x86)/Common Files/System" "$DRIVE_C/Program Files (x86)/Common Files"
mv -f "$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/Components/Windows/System32/"*.dll "$DRIVE_C/windows/system32"
"$WINELOADER" regedit "$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/Components/ado-32.reg" cp -r "$AUTOINSTALL_DIR_LIN/Components/Program Files/Common Files/System" \
"$WINELOADER"64 regedit "$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/Components/ado-64.reg" "$DRIVE_C/Program Files/Common Files"
"$WINELOADER" regedit "$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/Components/tflex.reg" cp -r "$AUTOINSTALL_DIR_LIN/Components/Program Files (x86)/Common Files/System" \
"$DRIVE_C/Program Files (x86)/Common Files"
mv -f "$AUTOINSTALL_DIR_LIN/Components/Windows/System32/"*.dll \
"$DRIVE_C/windows/system32"
"$WINELOADER" regedit "$AUTOINSTALL_DIR_LIN/Components/ado-32.reg"
"$WINELOADER"64 regedit "$AUTOINSTALL_DIR_LIN/Components/ado-64.reg"
"$WINELOADER" regedit "$AUTOINSTALL_DIR_LIN/Components/tflex.reg"
fi fi
if systemctl list-units --type service --state running | grep aksusbd \ if systemctl list-units --type service --state running | grep aksusbd \
@ -72,15 +85,15 @@ else
print_info "Службы aksusbd и hasplmd уже запущены. Пропускаем..." print_info "Службы aksusbd и hasplmd уже запущены. Пропускаем..."
else else
echo "#!/usr/bin/env bash echo "#!/usr/bin/env bash
cd \"$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/HASP_Linux/aksusbd/\" cd \"$AUTOINSTALL_DIR_LIN/HASP_Linux/aksusbd/\"
bash ./dinst bash ./dinst
mv -f \"$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/HASP_Linux/\"*.so /var/hasplm/ mv -f \"$AUTOINSTALL_DIR_LIN/HASP_Linux/\"*.so /var/hasplm/
systemctl restart hasplmd.service" > "$WH_TMP_DIR/tflex17_aksusbd.sh" systemctl restart hasplmd.service" > "$WH_TMP_DIR/tflex_aksusbd.sh"
chmod +x $WH_TMP_DIR/tflex17_aksusbd.sh chmod +x "$WH_TMP_DIR/tflex_aksusbd.sh"
unset TFLEX_ERROR unset TFLEX_ERROR
print_info "Будут установлены и запущены службы aksusbd и hasplmd." print_info "Будут установлены и запущены службы aksusbd и hasplmd."
su_run "$WH_TMP_DIR/tflex17_aksusbd.sh" || TFLEX_ERROR=1 su_run "$WH_TMP_DIR/tflex_aksusbd.sh" || TFLEX_ERROR=1
try_remove_file "$WH_TMP_DIR/tflex17_aksusbd.sh" try_remove_file "$WH_TMP_DIR/tflex_aksusbd.sh"
fi fi
fi fi
@ -90,7 +103,7 @@ else
if [[ $TFLEX_ERROR == "1" ]] ; then if [[ $TFLEX_ERROR == "1" ]] ; then
fatal "Произошла ошибка во время подготовки префикса, или установки компонентов ПО." fatal "Произошла ошибка во время подготовки префикса, или установки компонентов ПО."
else else
echo "t-flex-cad17-prepair" >> "$WINEPREFIX/winetricks.log" echo "t-flex-cad-prepair" >> "$WINEPREFIX/winetricks.log"
try_remove_file "$AUTOINSTALL_ZIP_LIN" try_remove_file "$AUTOINSTALL_ZIP_LIN"
try_remove_file "$AUTOINSTALL_ZIP_WIN" try_remove_file "$AUTOINSTALL_ZIP_WIN"
print_info "Подготовка префикса и установка компонентов завершены." print_info "Подготовка префикса и установка компонентов завершены."

View File

@ -22,7 +22,7 @@ windows приложения. Подробнее по ссылке: https://www.
# fonts-ttf-ms # fonts-ttf-ms
apt-get install {i586-,}{glibc-core,libstdc++6,glibc-pthread,glibc-nss,\ apt-get install {i586-,}{glibc-core,libstdc++6,glibc-pthread,glibc-nss,\
libOSMesa,libnss-mdns,libunixODBC2,ocl-icd,libfreetype,libfontconfig1,\ libnss-mdns,libunixODBC2,ocl-icd,libfreetype,libfontconfig1,\
libgnutls30,libGL,libEGL,xorg-dri-swrast,xorg-dri-intel,xorg-dri-radeon,\ libgnutls30,libGL,libEGL,xorg-dri-swrast,xorg-dri-intel,xorg-dri-radeon,\
libvulkan1,libcups} || fatal "Не удалось установить зависимости." libvulkan1,libcups} || fatal "Не удалось установить зависимости."

BIN
image/ais_lpu_client.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 109 KiB

View File

@ -0,0 +1,47 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
height="16px"
viewBox="0 0 16 16"
width="16px"
version="1.1"
id="svg4"
sodipodi:docname="5-symbolic.svg"
inkscape:version="1.4.2 (ebf0e940d0, 2025-05-08)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs4" />
<sodipodi:namedview
id="namedview4"
pagecolor="#505050"
bordercolor="#eeeeee"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#505050"
inkscape:zoom="38.448931"
inkscape:cx="6.9702848"
inkscape:cy="8.8949156"
inkscape:window-width="1920"
inkscape:window-height="1128"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="g3" />
<g
fill-rule="evenodd"
id="g3">
<path
d="m 0.800781 0 c -0.429687 0 -0.800781 0.371094 -0.800781 0.800781 v 5.078125 c 0 0.429688 0.371094 0.800782 0.800781 0.800782 h 1.996094 v -1.121094 h -1.675781 v -4.4375 h 4.4375 v 1.675781 h 1.121094 v -1.996094 c 0 -0.429687 -0.371094 -0.800781 -0.800782 -0.800781 z m 9.328125 0 c -0.425781 0 -0.800781 0.371094 -0.800781 0.800781 v 1.996094 h 1.121094 v -1.675781 h 4.441406 v 4.4375 h -1.675781 v 1.121094 h 1.992187 c 0.429688 0 0.804688 -0.375 0.804688 -0.800782 v -5.078125 c 0 -0.429687 -0.375 -0.800781 -0.804688 -0.800781 z m -9.328125 9.328125 c -0.429687 0 -0.800781 0.371094 -0.800781 0.800781 v 5.082032 c 0 0.425781 0.371094 0.800781 0.800781 0.800781 h 5.078125 c 0.429688 0 0.800782 -0.375 0.800782 -0.800781 v -1.996094 h -1.121094 v 1.675781 h -4.4375 v -4.441406 h 1.675781 v -1.121094 z m 12.414063 0 v 1.121094 h 1.675781 v 4.441406 h -4.441406 v -1.675781 h -1.121094 v 1.996094 c 0 0.425781 0.375 0.800781 0.800781 0.800781 h 5.078125 c 0.429688 0 0.804688 -0.375 0.804688 -0.800781 v -5.082032 c 0 -0.429687 -0.375 -0.800781 -0.804688 -0.800781 z m 0 0"
id="path1" />
<path
id="path2"
d="M 7.9277344 4.515625 C 7.8097448 4.5185061 7.6899414 4.527832 7.5703125 4.5429688 C 5.6601565 4.7812497 4.3007808 6.527344 4.5429688 8.4375 C 4.7812497 10.351562 6.527344 11.710938 8.4375 11.46875 C 10.351562 11.230469 11.710938 9.4843755 11.46875 7.5703125 C 11.245362 5.7795413 9.6975779 4.4724088 7.9277344 4.515625 z M 8.0039062 6.3535156 C 8.9197403 6.3535156 9.6542969 7.0918241 9.6542969 8.0039062 C 9.6542969 8.9205649 8.920565 9.6542969 8.0039062 9.6542969 C 7.0918241 9.6542969 6.3535156 8.9197403 6.3535156 8.0039062 C 6.3535156 7.0926517 7.0926517 6.3535156 8.0039062 6.3535156 z " />
<path
d="m 6.765625 3.570312 l 1.265625 -0.164062 l 0.410156 1.664062 l -1.601562 0.246094 z m -2.773437 2.175782 l 0.78125 -1.011719 l 1.464843 0.890625 l -0.957031 1.304688 z m -0.421876 3.496094 l -0.164062 -1.261719 l 1.664062 -0.410157 l 0.246094 1.601563 z m 2.175782 2.773437 l -1.011719 -0.777344 l 0.890625 -1.464843 l 1.304688 0.957031 z m 3.496094 0.425781 l -1.261719 0.164063 l -0.410157 -1.664063 l 1.601563 -0.246094 z m 2.773437 -2.175781 l -0.777344 1.011719 l -1.464843 -0.890625 l 0.957031 -1.304688 z m 0.425781 -3.5 l 0.164063 1.265625 l -1.664063 0.410156 l -0.246094 -1.601562 z m -2.175781 -2.773437 l 1.011719 0.78125 l -0.890625 1.464843 l -1.304688 -0.957031 z m 0 0"
id="path3" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.5 KiB

47
image/gui/winehelper.svg Normal file

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 55 KiB

BIN
image/scadoffice.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

View File

@ -87,3 +87,7 @@ dfb44ce5e5af7dba1686932c63d6b05e5dd6919a21c78130a7d1d0271b93958e audiorecstatio
# winetricks dotnet48 gdiplus vcrun6sp6 vcrun2005 vcrun2019 d3dx11_42 d3dx11_43 d3dx9 d3dcompiler_42 d3dcompiler_43 d3dcompiler_46 d3dcompiler_47 richtx32 riched30 riched20 msxml6 dotnet20 # 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 # + addons with ODBC, SSH, *.reg
0f4ef434df07bc338ae308af44330590eaa1d9c94b64850514e55b960642d0eb scadoffice_addons_v02.tar.xz 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

View File

@ -0,0 +1,24 @@
#!/usr/bin/env bash
# info_ru: Автоматизация установки МИС Витакарта (AIS LPU Client).
########################################################################
export WH_WINE_USE="wine_x_tkg_10-0_i586"
export WINEPREFIX="ais-lpu-client"
export PROG_NAME="AIS LPU Client"
export PROG_ICON="ais_lpu_client"
export BASE_PFX="ais-lpu-client_pfx_x86_v01"
export WH_WINDOWS_VER="7"
export WINEARCH="win32"
export INSTALL_DLL="dotnet40 dotnet20sp2 7zip vcrun2005 vcrun2008 mfc42"
export WH_USE_EXTRA_FONTS="1"
if [[ -f "$2" ]] ; then
prepair_wine
wine_run_install "$2" # /q
WIN_FILE_EXEC="$DRIVE_C/Program Files/Vitacore/AIS LPU Client/Update/AKUZ.UpdateUtility.exe"
create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON"
else
fatal "Не найден файл установки для $PROG_NAME. Перезапустите по примеру:
winehelper install $1 \"/путь/до/установочногоайла\""
fi

View File

@ -7,17 +7,25 @@ if [[ $(id -u) -eq 0 ]] ; then
fi fi
##### DEFAULT PATH ##### ##### DEFAULT PATH #####
export SCRIPT_NAME USER_WORK_PATH RUN_SCRIPT DATA_PATH CHANGELOG_FILE WH_ICON_PATH LICENSE_FILE
SCRIPT_NAME="$(basename "$0")" SCRIPT_NAME="$(basename "$0")"
if [[ "$(realpath "$0")" == "/usr/bin/$SCRIPT_NAME" ]] ; then if [[ "$(realpath "$0")" == "/usr/bin/$SCRIPT_NAME" ]] ; then
# переменные для установленного WineHelper в систему # переменные для установленного WineHelper в систему
USER_WORK_PATH="$HOME/.local/share/$SCRIPT_NAME" USER_WORK_PATH="$HOME/.local/share/$SCRIPT_NAME"
RUN_SCRIPT="/usr/bin/$SCRIPT_NAME" RUN_SCRIPT="/usr/bin/$SCRIPT_NAME"
DATA_PATH="/usr/share/$SCRIPT_NAME" DATA_PATH="/usr/share/$SCRIPT_NAME"
CHANGELOG_FILE="$(realpath "/usr/share/doc/winehelper"-*/CHANGELOG)"
WH_ICON_PATH="$DATA_PATH/image/gui/winehelper.svg"
LICENSE_FILE="$(realpath "/usr/share/doc/winehelper"-*/LICENSE)"
else else
# переменные для тестового запуска WineHelper из репозитория # переменные для тестового запуска WineHelper из репозитория
USER_WORK_PATH="$HOME/test-$SCRIPT_NAME" USER_WORK_PATH="$HOME/test-$SCRIPT_NAME"
RUN_SCRIPT="$(realpath "$0")" RUN_SCRIPT="$(realpath "$0")"
DATA_PATH="$(dirname "$RUN_SCRIPT")" DATA_PATH="$(dirname "$RUN_SCRIPT")"
CHANGELOG_FILE="$DATA_PATH/CHANGELOG"
WH_ICON_PATH="$DATA_PATH/image/gui/winehelper-devel.svg"
LICENSE_FILE="$DATA_PATH/LICENSE"
# минимальная проверка синтаксиса скриптов # минимальная проверка синтаксиса скриптов
for self_check_script in "$RUN_SCRIPT" \ for self_check_script in "$RUN_SCRIPT" \
@ -28,18 +36,43 @@ else
done done
fi fi
if [[ $1 == "gui" ]] ; then
export WH_USE_GUI="1"
/usr/bin/env python3 "$DATA_PATH/winehelper_gui.py" &
exit 0
fi
##### MESSAGES FUNCTIONS ##### ##### MESSAGES FUNCTIONS #####
print_error () { printf "\E[31m%s Ошибка: $@ %s\e[0m\n" ;} if [[ $WH_USE_GUI != "1" ]] ; then
print_warning () { printf "\E[33m%s Предупреждение: $@ %s\e[0m\n" ;} print_error () { printf "\E[31m%s Ошибка: $@ %s\e[0m\n" ;}
print_info () { printf "\E[36m%s Информация: \"$@\" %s\e[0m\n" ;} print_warning () { printf "\E[33m%s Предупреждение: $@ %s\e[0m\n" ;}
print_ok () { printf "\E[35m%s Успех: $@ %s\e[0m\n" ;} print_info () { printf "\E[36m%s Информация: \"$@\" %s\e[0m\n" ;}
print_ok () { printf "\E[35m%s Успех: $@ %s\e[0m\n" ;}
else
print_error () { echo -e "Ошибка: $@" ;}
print_warning () { echo -e "Предупреждение: $@" ;}
print_info () { echo -e "Информация: \"$@\"" ;}
print_ok () { echo -e "Успех: $@" ;}
fi
print_var () { for vp in $@ ; do echo "${vp}=${!vp}" ; done ;} print_var () { for vp in $@ ; do echo "${vp}=${!vp}" ; done ;}
fatal () { fatal () {
print_error "$@" print_error "$@"
[[ -n "$WINESERVER" ]] && "$WINESERVER" -w [[ -n "$WINESERVER" ]] && "$WINESERVER" -w
exit 1 exit 1
} }
print_confirmation () {
local answer
read -p "$@ (y/N): " answer
if [[ ! "$answer" =~ ^[Yy]$ ]] ; then
print_info "Отменено пользователем."
return 1
fi
return 0
}
##### CHECK VARIABLES ##### ##### CHECK VARIABLES #####
check_variables () { [[ -z ${!1} ]] && export $1="$2" ;} check_variables () { [[ -z ${!1} ]] && export $1="$2" ;}
@ -135,6 +168,11 @@ check_variables VKD3D_VER "1.1-2602"
export CLOUD_URL="https://cloud.linux-gaming.ru/portproton" export CLOUD_URL="https://cloud.linux-gaming.ru/portproton"
if env | grep license_agreement_file
then fatal "Обнаружена подмена переменной license_agreement_file!"
else readonly license_agreement_file="$(mktemp -d)/$((RANDOM % RANDOM))"
fi
##### CHECK NOEXEC FOR /HOME ##### ##### CHECK NOEXEC FOR /HOME #####
if mount -l | grep -E "[[:space:]]/home[[:space:]]" | grep -q "noexec" ; then if mount -l | grep -E "[[:space:]]/home[[:space:]]" | grep -q "noexec" ; then
fatal "/home примонтирован в /etc/fstab с аргументом noexec.\nЗапуск портативной версии wine не возможен из домашнего каталога." fatal "/home примонтирован в /etc/fstab с аргументом noexec.\nЗапуск портативной версии wine не возможен из домашнего каталога."
@ -142,19 +180,23 @@ fi
##### ROOT ##### ##### ROOT #####
su_run () { su_run () {
if [[ $WH_USE_GUI != "1" ]] ; then
local i="1" local i="1"
while [[ $i -le "3" ]] ; do while [[ $i -le "3" ]] ; do
print_info "Для продолжения установки введите root пароль (попытка $i из 3)..." print_info "Для продолжения установки введите root пароль (попытка $i из 3)..."
su - -c "$@" && return 0 su - -c "$@" && return 0
((i++)) ((i++))
done done
return 1 else
pkexec "$@" && return 0
fi
fatal "Не удалось установить необходимые компоненты!"
} }
##### CHECK DEPENDENCIES ##### ##### CHECK DEPENDENCIES #####
# fonts-ttf-ms # fonts-ttf-ms
if ! rpm -q {i586-,}{wine,glibc-core,libstdc++6,glibc-pthread,glibc-nss,libOSMesa,\ if ! rpm -q {i586-,}{wine,glibc-core,libstdc++6,glibc-pthread,glibc-nss,\
libnss-mdns,libunixODBC2,ocl-icd,libfreetype,libfontconfig1,libgnutls30,libGL,\ libnss-mdns,libunixODBC2,ocl-icd,libfreetype,libfontconfig1,libgnutls30,libGL,\
libEGL,xorg-dri-swrast,xorg-dri-intel,xorg-dri-radeon,libvulkan1,libcups} 1>/dev/null libEGL,xorg-dri-swrast,xorg-dri-intel,xorg-dri-radeon,libvulkan1,libcups} 1>/dev/null
then then
@ -315,11 +357,50 @@ check_file_sum () {
return 0 return 0
else else
try_remove_file "$check_file_path" try_remove_file "$check_file_path"
fatal "Хэш-сумма файла $check_file_name не совпадает!" fatal "Хэш-сумма файла $check_file_name не совпадает!\n Попробуйте перезапустить установку."
fi
}
print_license_agreement () {
if [[ -f "$license_agreement_file" ]] \
&& [[ "$(stat -c %a "$license_agreement_file" 2>/dev/null)" == "600" ]]
then return 0
fi
echo
print_warning "Лицензионные соглашения использования сторонних компонентов:
Некоторые компоненты, установленные в префикс и необходимые для запуска приложений, могут
быть защищены авторским правом или лицензионными соглашениями. Вы обязаны самостоятельно
убедиться в законности использования этих компонентов в вашей юрисдикции.
Мы не несём ответственности за нарушение лицензионных соглашений, связанное с использованием
подготовленного префикса, а так же за программное обеспечение поставляемого из сторонних источников.
Подтверждая продолжение установки, вы соглашаетесь что ознакомились с данным отказом от
ответственности и принимаете все риски, связанные с использованием программного обеспечения.
"
if print_confirmation "Подтвердите продолжение установки" ; then
touch "$license_agreement_file"
chmod 600 "$license_agreement_file"
cleanup_laf () {
local cleanup_laf_dir="$(dirname "$license_agreement_file")"
rm -r "$cleanup_laf_dir" || echo "Не удалось удалить каталог $cleanup_laf_dir"
}
trap "cleanup_laf" EXIT
return 0
else
exit 1
fi fi
} }
try_download () { try_download () {
if [[ $WH_USE_GUI == "1" ]] \
&& [[ $(ps -o command= -p "$PPID" | awk '{print $2}') =~ "$DATA_PATH/winehelper_gui.py" ]]
then print_ok "Соглашения приняты из графического интерфейса."
else print_license_agreement
fi
local download_file_url output_file output_file_name local download_file_url output_file output_file_name
download_file_url="${1// /%20}" download_file_url="${1// /%20}"
output_file="$2" output_file="$2"
@ -432,6 +513,41 @@ var_ld_library_path_update () {
return 0 return 0
} }
extract_icon() {
check_prefix_var
local exe_file="$1"
local ico_name="$(basename "$exe_file" .exe).ico"
local png_name="$(basename "$exe_file" .exe).png"
local tmp_ico_dir="$WH_TMP_DIR/icons"
local user_icons="$WINEPREFIX/icons"
create_new_dir "$tmp_ico_dir"
if ! wrestool -x -t 14 "$exe_file" -o "$tmp_ico_dir/$ico_name" ; then
print_warning "Не удалось извлечь иконку из $exe_file"
try_remove_file "$tmp_ico_dir"
return 1
fi
if ! icotool -x -i 1 "$tmp_ico_dir/$ico_name" -o "$tmp_ico_dir/$png_name" ; then
print_warning "Не удалось извлечь иконку из $ico_name"
try_remove_file "$tmp_ico_dir"
return 1
fi
create_new_dir "$user_icons"
if ! try_copy_file "$tmp_ico_dir/$png_name" "$user_icons" ; then
print_warning "Не удалось копировать иконку в префикс"
try_remove_file "$user_icons"
return 1
fi
try_remove_dir "$tmp_ico_dir"
print_ok "Иконка сохранена: $user_icons/$png_name"
return 0
}
create_desktop () { create_desktop () {
local name_desktop exe_file desktop_filename icon_file desktop_path local name_desktop exe_file desktop_filename icon_file desktop_path
name_desktop="$1" name_desktop="$1"
@ -1194,25 +1310,6 @@ init_database () {
} }
prepair_wine () { prepair_wine () {
if [[ -n "$INSTALL_SCRIPT_NAME" ]] \
&& [[ "$FORCE_INSTALL" != "1" ]]
then
print_warning "Лицензионные соглашения использования сторонних компонентов:
Некоторые компоненты, установленные в префикс и необходимые для запуска приложений, могут
быть защищены авторским правом или лицензионными соглашениями. Вы обязаны самостоятельно
убедиться в законности использования этих компонентов в вашей юрисдикции.
Мы не несём ответственности за нарушение лицензионных соглашений, связанное с использованием
подготовленного префикса.
Продолжая использовать данное ПО вы подтверждаете, что ознакомились с данным отказом от
ответственности и принимаете все риски, связанные с его использованием.
"
print_info "Для продолжения нажмите любую клавишу на клавиатуре."
read -s -n 1
fi
var_winedlloverride_update "winemenubuilder.exe=d" var_winedlloverride_update "winemenubuilder.exe=d"
if [[ -n "$INSTALL_SCRIPT_NAME" ]] if [[ -n "$INSTALL_SCRIPT_NAME" ]]
@ -1233,6 +1330,11 @@ prepair_wine () {
} }
wine_run () { wine_run () {
if [[ $WINEARCH == "win32" ]] \
&& file "$WIN_FILE_EXEC" | grep -q "x86-64"
then fatal "Нельзя запустить 64-битное приложение в 32-битном префиксе!"
fi
WIN_FILE_PATH="$(dirname "$WIN_FILE_EXEC")" WIN_FILE_PATH="$(dirname "$WIN_FILE_EXEC")"
[[ -d "$WIN_FILE_PATH" ]] && cd "$WIN_FILE_PATH" [[ -d "$WIN_FILE_PATH" ]] && cd "$WIN_FILE_PATH"
@ -1345,11 +1447,8 @@ remove_prefix() {
echo " - Удалению всех программ, установленных в этом префиксе" echo " - Удалению всех программ, установленных в этом префиксе"
echo " - Удалению связанных ярлыков из меню и рабочего стола" echo " - Удалению связанных ярлыков из меню и рабочего стола"
echo "======================================================" echo "======================================================"
read -p "Продолжить удаление? (y/N): " answer if ! print_confirmation "Продолжить удаление?"
then exit 1
if [[ ! "$answer" =~ ^[YyДд]$ ]]; then
print_info "Удаление префикса отменено."
return 0
fi fi
fi fi
@ -1382,20 +1481,18 @@ remove_winehelper () {
echo " - Все приложения/программы, установленные через WineHelper" echo " - Все приложения/программы, установленные через WineHelper"
echo " - Все ярлыки из меню и с рабочего стола созданные с помощью WineHelper" echo " - Все ярлыки из меню и с рабочего стола созданные с помощью WineHelper"
echo "======================================================" echo "======================================================"
read -p "Продолжить? (y/N): " answer if print_confirmation "Продолжить?" ; then
if [[ "$answer" =~ ^[YyДд]$ ]] ; then
echo "----------------------------------------------" echo "----------------------------------------------"
print_warning " ВЫ ТОЧНО УВЕРЕНЫ?" print_warning " ВЫ ТОЧНО УВЕРЕНЫ?"
echo "----------------------------------------------" echo "----------------------------------------------"
read -p "Продолжить? (y/N): " answer if ! print_confirmation "Продолжить?"
then exit 1
fi
else else
print_info "Удаление отменено." exit 1
return 1
fi fi
fi fi
if [[ "$answer" =~ ^[YyДд]$ ]] ; then
# Удаление рабочих каталогов # Удаление рабочих каталогов
try_remove_dir "$USER_WORK_PATH" try_remove_dir "$USER_WORK_PATH"
@ -1418,9 +1515,6 @@ remove_winehelper () {
try_remove_file "$HOME/.winehelper" try_remove_file "$HOME/.winehelper"
print_info "WineHelper и все связанные данные успешно удалены." print_info "WineHelper и все связанные данные успешно удалены."
else
print_info "Удаление отменено."
fi
} }
create_base_pfx () { create_base_pfx () {
@ -1478,12 +1572,13 @@ backup_prefix() {
export WINEPREFIX="$1" export WINEPREFIX="$1"
check_prefix_var check_prefix_var
local backup_base_dir="$(xdg-user-dir DESKTOP)" local backup_base_dir backup_archive_name backup_dest_path temp_backup_dir temp_prefix_dir temp_users_dir
local backup_archive_name="backup_${PREFIX_NAME}_$(date +%Y.%m.%d).whpack" backup_base_dir="$(xdg-user-dir DESKTOP)"
local backup_dest_path="$backup_base_dir/$backup_archive_name" backup_archive_name="backup_${PREFIX_NAME}_$(date +%d.%m.%Y-%H.%M.%S).whpack"
local temp_backup_dir="$WH_TMP_DIR/backup_${PREFIX_NAME}_$(date +%Y.%m.%d)" backup_dest_path="$backup_base_dir/$backup_archive_name"
local temp_prefix_dir="$temp_backup_dir/prefixes/$PREFIX_NAME" temp_backup_dir="$WH_TMP_DIR/backup_${PREFIX_NAME}_$(date +%d.%m.%Y-%H.%M.%S)"
local temp_users_dir="$temp_prefix_dir/drive_c/users" temp_prefix_dir="$temp_backup_dir/prefixes/$PREFIX_NAME"
temp_users_dir="$temp_prefix_dir/drive_c/users"
print_info "Начало резервного копирования префикса: $PREFIX_NAME" print_info "Начало резервного копирования префикса: $PREFIX_NAME"
create_new_dir "$temp_backup_dir" create_new_dir "$temp_backup_dir"
@ -1527,9 +1622,11 @@ backup_prefix() {
fi fi
fi fi
# Сохраняем метаданные внутри временной директории
echo "$PREFIX_NAME" > "$temp_backup_dir/prefix_name.whmeta"
print_info "Создание squashfs архива..." print_info "Создание squashfs архива..."
if mksquashfs "$temp_backup_dir" "$backup_dest_path" -comp zstd ; then if mksquashfs "$temp_backup_dir" "$backup_dest_path" -comp zstd ; then
echo -e "\n# PREFIX_NAME=$PREFIX_NAME" >> "$backup_dest_path"
print_ok "Архив префикса $PREFIX_NAME успешно создан по пути:\n$backup_dest_path" print_ok "Архив префикса $PREFIX_NAME успешно создан по пути:\n$backup_dest_path"
else else
print_error "Не удалось создать архив префикса $PREFIX_NAME." print_error "Не удалось создать архив префикса $PREFIX_NAME."
@ -1561,15 +1658,7 @@ restore_prefix() {
print_info "Восстановление из резервной копии: $backup_archive_path" print_info "Восстановление из резервной копии: $backup_archive_path"
prefix_name="$(tail -n1 "$backup_archive_path" | sed -e 's/.*PREFIX_NAME=//')" temp_extract_dir="$WH_TMP_DIR/restore_$(basename "$backup_archive_path" .whpack)_$$"
if [[ -d "$WH_PREFIXES_DIR/$prefix_name" ]] ; then
fatal "Префикс $prefix_name уже существует!
Удалите его, если действительно желаете восстановить префикс заново.
Команда для удаления: $SCRIPT_NAME remove-prefix $prefix_name"
fi
temp_extract_dir="$WH_TMP_DIR/restore_$(basename "$backup_archive_path" .whpack)"
create_new_dir "$temp_extract_dir" create_new_dir "$temp_extract_dir"
print_info "Распаковка архива..." print_info "Распаковка архива..."
@ -1580,9 +1669,32 @@ restore_prefix() {
fatal "Не удалось распаковать архив." fatal "Не удалось распаковать архив."
fi fi
if [[ -d "$temp_extract_dir/prefixes" ]] ; then # Определяем имя префикса
local prefix_name if [[ -f "$temp_extract_dir/prefix_name.whmeta" ]]; then
prefix_name="$(ls -1 "$temp_extract_dir/prefixes")" prefix_name="$(cat "$temp_extract_dir/prefix_name.whmeta")"
try_remove_file "$temp_extract_dir/prefix_name.whmeta"
elif grep -q "PREFIX_NAME=" "$backup_archive_path" ; then
# Обратная совместимость со старыми бэкапами (с приписанной строкой)
prefix_name="$(tail -n1 "$backup_archive_path" | sed -e 's/.*PREFIX_NAME=//')"
elif [[ -d "$temp_extract_dir/prefixes" ]] && [[ $(find "$temp_extract_dir/prefixes" -mindepth 1 -maxdepth 1 -type d | wc -l) -eq 1 ]]; then
# Обратная совместимость со старыми бэкапами (по имени каталога)
prefix_name="$(basename "$(find "$temp_extract_dir/prefixes" -mindepth 1 -maxdepth 1 -type d)")"
else
try_remove_dir "$temp_extract_dir"
fatal "Не удалось определить имя префикса в архиве (метаданные не найдены)."
fi
if [[ -z "$prefix_name" ]]; then
try_remove_dir "$temp_extract_dir"
fatal "Не удалось определить имя префикса в архиве."
fi
if [[ -d "$WH_PREFIXES_DIR/$prefix_name" ]] ; then
try_remove_dir "$temp_extract_dir"
fatal "Префикс $prefix_name уже существует!\n Удалите его, если действительно желаете восстановить префикс заново.\n Команда для удаления: $SCRIPT_NAME remove-prefix $prefix_name"
fi
if [[ -d "$temp_extract_dir/prefixes/$prefix_name" ]] ; then
local prefix_dir="$temp_extract_dir/prefixes/$prefix_name" local prefix_dir="$temp_extract_dir/prefixes/$prefix_name"
print_info "Восстановление префикса: $prefix_name" print_info "Восстановление префикса: $prefix_name"
@ -1621,7 +1733,7 @@ restore_prefix() {
fi fi
else else
try_remove_dir "$temp_extract_dir" try_remove_dir "$temp_extract_dir"
fatal "Директория prefixes не найдена в архиве." fatal "Директория префикса '$prefix_name' не найдена в архиве."
fi fi
try_remove_dir "$temp_extract_dir" try_remove_dir "$temp_extract_dir"
@ -1641,12 +1753,13 @@ wh_info () {
run [программа] запуск программы (отладка) run [программа] запуск программы (отладка)
remove-all удалить WineHelper и все связанные данные remove-all удалить WineHelper и все связанные данные
remove-prefix [имя_префикса] удалить префикс и все связанные данные remove-prefix [имя_префикса] удалить префикс и все связанные данные
backup-prefix [имя_префикса] создать резерную копию префикса backup-prefix [имя_префикса] создать резервную копию префикса
restore-prefix \"путь/до/whpack\" восстановить префикс из резервной копии restore-prefix \"путь/до/whpack\" восстановить префикс из резервной копии
Параметры: Параметры:
--help показать эту справку и выйти --help показать эту справку и выйти
--version показать информацию о пакете и его версии --version показать информацию о пакете и его версии
--changelog показать историю изменений
--debug [команда] включить режим логирования работы WINE --debug [команда] включить режим логирования работы WINE
" "
@ -1671,8 +1784,9 @@ else
fi fi
case "$arg1" in case "$arg1" in
--version) rpm -qi "$SCRIPT_NAME" ; exit 0 ;; --version|version) rpm -qi "$SCRIPT_NAME" ; exit 0 ;;
--help) wh_info ; exit 0 ;; --help|help) wh_info ; exit 0 ;;
--changelog|changelog) less "$CHANGELOG_FILE" ; exit 0 ;;
killall) kill_wine ;; killall) kill_wine ;;
winecfg) prepair_wine ; wine_run "winecfg" ;; winecfg) prepair_wine ; wine_run "winecfg" ;;
winereg|regedit) prepair_wine ; wine_run "regedit" ;; winereg|regedit) prepair_wine ; wine_run "regedit" ;;

10
winehelper.desktop Normal file
View File

@ -0,0 +1,10 @@
[Desktop Entry]
Name=WineHelper
Exec=winehelper gui %F
Comment=Launching the graphics interface for Winehelper
Comment[ru]=Запуск графического интерфейса WineHelper
Type=Application
Categories=WineHelper;Utility;Emulator;
StartupNotify=true
Path=/usr/bin/winehelper
Icon=winehelper

1530
winehelper_gui.py Normal file

File diff suppressed because it is too large Load Diff