Compare commits
	
		
			65 Commits
		
	
	
		
			0.4.6
			...
			674a499c5e
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 674a499c5e | ||
|  | a3de3240b6 | ||
|  | f985c8d92e | ||
|  | cd934bab1c | ||
|  | f67c9ca3ec | ||
|  | 9304a5e19f | ||
|  | a0be9e7ce1 | ||
|  | 93b8b41fcc | ||
|  | d3df605806 | ||
|  | 3ea3fb5e53 | ||
|  | 80a425f421 | ||
|  | 8736bb8f53 | ||
|  | d553256a7a | ||
|  | 33dd0aa45e | ||
|  | 877689ab5e | ||
|  | 418493b7b8 | ||
|  | cadfe91198 | ||
|  | 615bcdd95b | ||
|  | 33a181fe4f | ||
|  | dfe41ea9c2 | ||
|  | e649261ff9 | ||
|  | 299ee7ed53 | ||
|  | 7c41d656aa | ||
|  | 10707bd010 | ||
|  | bd9d5b9561 | ||
|  | 9caea05eb5 | ||
|  | 0bb88f6bff | ||
|  | d238a37860 | ||
|  | fc6b2fb67d | ||
|  | 6ab84be100 | ||
|  | 341b821442 | ||
|  | 63d24ae584 | ||
|  | f7450529c8 | ||
|  | 37234c25bf | ||
|  | 8601dd600f | ||
|  | 9df3940ec9 | ||
|  | f1315115c7 | ||
|  | 036957c729 | ||
|  | c1791761d1 | ||
|  | 7dae7c4739 | ||
|  | ddb644b732 | ||
|  | d38b2ca2fb | ||
|  | 9ff0414693 | ||
|  | 3d13f3ca33 | ||
|  | 5e07495d9b | ||
|  | 34a60665ea | ||
|  | 670e9a4596 | ||
|  | 47747ddca1 | ||
|  | 97d302675f | ||
|  | a1c40fb9f7 | ||
|  | 0fc45bc85f | ||
|  | 62497c94c4 | ||
|  | f39911b1be | ||
|  | badc42fe5e | ||
|  | ce7da743fe | ||
|  | 4274b9d527 | ||
|  | 3388da66b9 | ||
|  | b768b4737f | ||
|  | 1500643f7a | ||
|  | 29cc5fae23 | ||
|  | 4f9da74185 | ||
|  | 3d91323db2 | ||
|  | 751ef7453c | ||
|  | 059d62c4e2 | ||
|  | b257dbaa7e | 
							
								
								
									
										20
									
								
								CHANGELOG
									
									
									
									
									
								
							
							
						
						| @@ -1,5 +1,25 @@ | |||||||
| История изменений: | История изменений: | ||||||
|  |  | ||||||
|  | 0.5.0: | ||||||
|  | * добавлен явный вывод отказа от ответственности и соглашения с ним | ||||||
|  | * обновлены все скрипты для установки t-flex-* | ||||||
|  | * добавлен wine_wh_tflex_10-9 с патчами для t-flex-* | ||||||
|  | * добавлена поддержка новых версий wine 10.3 и выше | ||||||
|  | * удален пакет libOSMesa из проверки на зависимости | ||||||
|  | * другие небольшие улучшения и оптимизации скриптов | ||||||
|  |  | ||||||
|  | 0.4.9: | ||||||
|  | * добавлено автодопонение команд для zsh (zsh_completion) | ||||||
|  |  | ||||||
|  | 0.4.8: | ||||||
|  | * все скрипты для программ daobit-* переведены из ручных установок в автоматические | ||||||
|  |  | ||||||
|  | 0.4.7: | ||||||
|  | * обновлены скрипты установки и префикс для программ ved-* и ctm-* | ||||||
|  | * обновлены скрипты установки для программ daobit-* | ||||||
|  | * улучшено отображение шрифтов в ПО: Справки БК | ||||||
|  | * добавлена проверка хэш-суммы для сохраненных архивов | ||||||
|  |  | ||||||
| 0.4.6: | 0.4.6: | ||||||
| * добавлено автодопонение команд для bash (bash_completion) | * добавлено автодопонение команд для bash (bash_completion) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,4 +1,4 @@ | |||||||
| # Auto-completion for winhelper | # Auto-completion for winehelper | ||||||
| _winehelper_completions() { | _winehelper_completions() { | ||||||
|     local cur prev opts |     local cur prev opts | ||||||
|     COMPREPLY=() |     COMPREPLY=() | ||||||
| @@ -22,7 +22,7 @@ _winehelper_completions() { | |||||||
|             return 0 |             return 0 | ||||||
|             ;; |             ;; | ||||||
|         run|installed) |         run|installed) | ||||||
|             local installed=$(grep -h "Exec=env" ~/.local/share/winehelper/*.desktop 2>/dev/null | awk -F'/' '{print $NF}' | awk -F'"' '{print $1}') |             local installed=$(ls -1 ~/.local/share/winehelper/ | grep ".desktop" | sed 's/.desktop//') | ||||||
|             COMPREPLY=( $(compgen -W "${installed}" -- "${cur}") ) |             COMPREPLY=( $(compgen -W "${installed}" -- "${cur}") ) | ||||||
|             return 0 |             return 0 | ||||||
|             ;; |             ;; | ||||||
|   | |||||||
							
								
								
									
										112
									
								
								auto_completion/zsh_completion/_winehelper
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,112 @@ | |||||||
|  | #compdef winehelper | ||||||
|  | # shellcheck disable=SC2034,SC2206 | ||||||
|  | _winehelper() { | ||||||
|  |   local -a opts wine_cmd scripts installed prefixes | ||||||
|  |  | ||||||
|  |   opts=( | ||||||
|  |     '--help[Вывести справку]' | ||||||
|  |     '--version[Показать информацию о пакете и его версии]' | ||||||
|  |     '--debug[Режим отладки]' | ||||||
|  |     'install[Запустить скрипт установки программы]' | ||||||
|  |     'installed[Список установленных программ]' | ||||||
|  |     '-r[Запуск программы (отладка)]' | ||||||
|  |     '-i[Запустить скрипт установки программы]' | ||||||
|  |     'remove-all[Удалить WineHelper и все связанные данные]' | ||||||
|  |     '--clear-pfx[Очистить префикс \[имя_префикса\]]' | ||||||
|  |     'killall[Убить все процессы]' | ||||||
|  |     'remove-prefix[Удалить префикс и все связанные данные]' | ||||||
|  |     'backup-prefix[Создать резерную копию префикса]' | ||||||
|  |     'restore-prefix[восстановить префикс из резервной копии "путь/до/whpack"]' | ||||||
|  |   ) | ||||||
|  |  | ||||||
|  |   wine_cmd=( | ||||||
|  |     winecfg | ||||||
|  |     winereg | ||||||
|  |     winefile | ||||||
|  |     wineconsole | ||||||
|  |     winetricks | ||||||
|  |     desktop | ||||||
|  |     regedit | ||||||
|  |     explorer | ||||||
|  |     cmd | ||||||
|  |     'run[Запуск программы (отладка)]' | ||||||
|  |   ) | ||||||
|  |  | ||||||
|  |   local context state line | ||||||
|  |   _arguments -C \ | ||||||
|  |     '1:command:->cmds' \ | ||||||
|  |     '2:subcommand or argument:->args' | ||||||
|  |  | ||||||
|  |   case $state in | ||||||
|  |     cmds) | ||||||
|  |       _values 'winehelper options' "${opts[@]}" "${wine_cmd[@]}" | ||||||
|  |       ;; | ||||||
|  |     args) | ||||||
|  |       case $words[2] in | ||||||
|  |         --debug) | ||||||
|  |           _values 'wine commands' "${wine_cmd[@]}" | ||||||
|  |           ;; | ||||||
|  |         install|-i) | ||||||
|  |           _get_list_for_install | ||||||
|  |           ;; | ||||||
|  |         run|installed) | ||||||
|  |           _get_installed_list | ||||||
|  |           ;; | ||||||
|  |         remove-prefix|backup-prefix) | ||||||
|  |           _get_prefixes | ||||||
|  |           ;; | ||||||
|  |         restore-prefix) | ||||||
|  |           _files | ||||||
|  |           ;; | ||||||
|  |         *) | ||||||
|  |           _values 'winehelper options' "${opts[@]}" "${wine_cmd[@]}" | ||||||
|  |           ;; | ||||||
|  |       esac | ||||||
|  |       ;; | ||||||
|  |   esac | ||||||
|  | } | ||||||
|  |  | ||||||
|  | _get_prefixes () { | ||||||
|  |   prefixes=( ${(f)"$(ls -1 ~/.local/share/winehelper/prefixes 2>/dev/null)"} ) | ||||||
|  |  | ||||||
|  |   if ((! ${#prefixes[@]} == 0 )); then | ||||||
|  |     _values 'prefixes' "${prefixes[@]}" | ||||||
|  |   fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | _get_list_for_install () { | ||||||
|  |    | ||||||
|  |   packages=(${(f)"$(winehelper install list 2>/dev/null | | ||||||
|  |     awk -F ' - ' ' | ||||||
|  |       /^[^ ]+ - \("/ {next} | ||||||
|  |       /^[[:space:]]*$/ {next} | ||||||
|  |       /^Информация:/ {next} | ||||||
|  |       /^[^ ]+ - / { | ||||||
|  |         name=$1; | ||||||
|  |         desc=$2; | ||||||
|  |         gsub(/^[[:space:]]+|[[:space:]]+$/, "", name); | ||||||
|  |         gsub(/^[[:space:]]*"?|"?[[:space:]]*$/, "", desc); | ||||||
|  |         if (name && desc) print name ":" desc | ||||||
|  |       } | ||||||
|  |     ')"}) | ||||||
|  |    | ||||||
|  |   packages+=( | ||||||
|  |     scadoffice:"SCAD Office" | ||||||
|  |     t-flex-cad17-applications:"Приложения для T-FLEX CAD 17" | ||||||
|  |     t-flex-cad17-resources:"Обучающие материалы T-FLEX CAD 17" | ||||||
|  |   ) | ||||||
|  |  | ||||||
|  |     _describe 'packages' packages | ||||||
|  | } | ||||||
|  |  | ||||||
|  | _get_installed_list () { | ||||||
|  |   installed=( | ||||||
|  |     ${(f)"$(ls -1 ~/.local/share/winehelper/ | grep ".desktop" | sed 's/.desktop//')"} | ||||||
|  |   ) | ||||||
|  |  | ||||||
|  |   if ((! ${#installed[@]} == 0 )); then | ||||||
|  |     _values 'installed apps' "${installed[@]}" | ||||||
|  |   fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | compdef _winehelper winehelper | ||||||
| @@ -6,13 +6,16 @@ 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_v04" | export BASE_PFX="ved_ctm_pfx_x86_v05" | ||||||
| export WINEARCH="win32" | export WINEARCH="win32" | ||||||
| export WH_WINDOWS_VER="7" | export WH_WINDOWS_VER="7" | ||||||
| export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8" | export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8 vcrun2019 dotnet7 dotnetdesktop7 renderer=gdi" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
|  |  | ||||||
|  | # фикс постоянного запроса обновления Windows | ||||||
|  | get_and_set_reg_file --add 'Software\CTM\CTMSETUP' 'SkipKBCheck' 'REG_DWORD' "1" "userdef" | ||||||
|  |  | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_fn.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_fn.exe" | ||||||
| AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_fn" | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_fn" | ||||||
| AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_fn/setup.exe" | AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_fn/setup.exe" | ||||||
|   | |||||||
| @@ -6,13 +6,16 @@ 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_v04" | export BASE_PFX="ved_ctm_pfx_x86_v05" | ||||||
| export WINEARCH="win32" | export WINEARCH="win32" | ||||||
| export WH_WINDOWS_VER="7" | export WH_WINDOWS_VER="7" | ||||||
| export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8" | export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8 vcrun2019 dotnet7 dotnetdesktop7 renderer=gdi" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
|  |  | ||||||
|  | # фикс постоянного запроса обновления Windows | ||||||
|  | get_and_set_reg_file --add 'Software\CTM\CTMSETUP' 'SkipKBCheck' 'REG_DWORD' "1" "userdef" | ||||||
|  |  | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_jr.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_jr.exe" | ||||||
| AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_jr" | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_jr" | ||||||
| AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_jr/setup.exe" | AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_jr/setup.exe" | ||||||
|   | |||||||
| @@ -6,13 +6,16 @@ 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_v04" | export BASE_PFX="ved_ctm_pfx_x86_v05" | ||||||
| export WINEARCH="win32" | export WINEARCH="win32" | ||||||
| export WH_WINDOWS_VER="7" | export WH_WINDOWS_VER="7" | ||||||
| export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8" | export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8 vcrun2019 dotnet7 dotnetdesktop7 renderer=gdi" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
|  |  | ||||||
|  | # фикс постоянного запроса обновления Windows | ||||||
|  | get_and_set_reg_file --add 'Software\CTM\CTMSETUP' 'SkipKBCheck' 'REG_DWORD' "1" "userdef" | ||||||
|  |  | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_me.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_me.exe" | ||||||
| AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_me" | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_me" | ||||||
| AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_me/setup.exe" | AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_me/setup.exe" | ||||||
|   | |||||||
| @@ -6,13 +6,16 @@ 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_v04" | export BASE_PFX="ved_ctm_pfx_x86_v05" | ||||||
| export WINEARCH="win32" | export WINEARCH="win32" | ||||||
| export WH_WINDOWS_VER="7" | export WH_WINDOWS_VER="7" | ||||||
| export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8" | export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8 vcrun2019 dotnet7 dotnetdesktop7 renderer=gdi" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
|  |  | ||||||
|  | # фикс постоянного запроса обновления Windows | ||||||
|  | get_and_set_reg_file --add 'Software\CTM\CTMSETUP' 'SkipKBCheck' 'REG_DWORD' "1" "userdef" | ||||||
|  |  | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_rp.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_rp.exe" | ||||||
| AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_rp" | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_rp" | ||||||
| AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_rp/setup.exe" | AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_rp/setup.exe" | ||||||
|   | |||||||
| @@ -6,13 +6,16 @@ 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_v04" | export BASE_PFX="ved_ctm_pfx_x86_v05" | ||||||
| export WINEARCH="win32" | export WINEARCH="win32" | ||||||
| export WH_WINDOWS_VER="7" | export WH_WINDOWS_VER="7" | ||||||
| export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8" | export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8 vcrun2019 dotnet7 dotnetdesktop7 renderer=gdi" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
|  |  | ||||||
|  | # фикс постоянного запроса обновления Windows | ||||||
|  | get_and_set_reg_file --add 'Software\CTM\CTMSETUP' 'SkipKBCheck' 'REG_DWORD' "1" "userdef" | ||||||
|  |  | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_cs.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_cs.exe" | ||||||
| AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_cs" | 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" | ||||||
|   | |||||||
| @@ -9,20 +9,22 @@ export BASE_PFX="daobit_pfx_x86_v01" | |||||||
| export WH_WINDOWS_VER="10" | export WH_WINDOWS_VER="10" | ||||||
| export WINEARCH="win32" | export WINEARCH="win32" | ||||||
| export INSTALL_DLL="dotnet7 dotnetdesktop7 arial renderer=gdi" | export INSTALL_DLL="dotnet7 dotnetdesktop7 arial renderer=gdi" | ||||||
|  | 
 | ||||||
|  | AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_cs.exe" | ||||||
| AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_cs" | 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" | ||||||
| EXE_SETUP_NAME="setup_cs.exe" |  | ||||||
| 
 | 
 | ||||||
| if [[ -f "$2" ]] && [[ $2 =~ $EXE_SETUP_NAME$ ]] ; then | prepair_wine | ||||||
|     prepair_wine | if try_download "https://files.daobit.ru/CSERVICE/SFX/setup_cs.exe" "${AUTOINSTALL_EXE}" ; then | ||||||
| 
 | 
 | ||||||
|     unpack "$2" "${AUTOINSTALL_UNPACK}" |     # фикс постоянного запроса обновления Windows | ||||||
|  |     get_and_set_reg_file --add 'Software\DAO\DAOSETUP' 'SkipKBCheck' 'REG_DWORD' "1" "userdef" | ||||||
|  | 
 | ||||||
|  |     unpack "${AUTOINSTALL_EXE}" "${AUTOINSTALL_UNPACK}" | ||||||
|     wine_run_install "${AUTOINSTALL_SETUP}" /cd /targetdir="C:\\\\Program Files\\\\DAO\\\\CSERVICE" /auto /hide |     wine_run_install "${AUTOINSTALL_SETUP}" /cd /targetdir="C:\\\\Program Files\\\\DAO\\\\CSERVICE" /auto /hide | ||||||
| 
 | 
 | ||||||
|     WIN_FILE_EXEC="$DRIVE_C/Program Files/DAO/CSERVICE/CService32.exe" |     WIN_FILE_EXEC="$DRIVE_C/Program Files/DAO/CSERVICE/CService32.exe" | ||||||
|     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" |     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" | ||||||
|     try_remove_dir "$AUTOINSTALL_UNPACK" |     try_remove_dir "$AUTOINSTALL_UNPACK" | ||||||
| else |     try_remove_file "$AUTOINSTALL_EXE" | ||||||
|     fatal "Не найден файл установки для $PROG_NAME. Перезапустите по примеру: |  | ||||||
|     winehelper install $1 \"/путь/до/$EXE_SETUP_NAME\"" |  | ||||||
| fi | fi | ||||||
| @@ -9,20 +9,22 @@ export BASE_PFX="daobit_pfx_x86_v01" | |||||||
| export WH_WINDOWS_VER="10" | export WH_WINDOWS_VER="10" | ||||||
| export WINEARCH="win32" | export WINEARCH="win32" | ||||||
| export INSTALL_DLL="dotnet7 dotnetdesktop7 arial renderer=gdi" | export INSTALL_DLL="dotnet7 dotnetdesktop7 arial renderer=gdi" | ||||||
|  | 
 | ||||||
|  | AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_rk.exe" | ||||||
| AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_rk" | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_rk" | ||||||
| AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_rk/setup.exe" | AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_rk/setup.exe" | ||||||
| EXE_SETUP_NAME="setup_rk.exe" |  | ||||||
| 
 | 
 | ||||||
| if [[ -f "$2" ]] && [[ $2 =~ $EXE_SETUP_NAME$ ]] ; then | prepair_wine | ||||||
|     prepair_wine | if try_download "https://files.daobit.ru/RATLAS/SFX/setup_rk.exe" "${AUTOINSTALL_EXE}" ; then | ||||||
| 
 | 
 | ||||||
|     unpack "$2" "${AUTOINSTALL_UNPACK}" |     # фикс постоянного запроса обновления Windows | ||||||
|  |     get_and_set_reg_file --add 'Software\DAO\DAOSETUP' 'SkipKBCheck' 'REG_DWORD' "1" "userdef" | ||||||
|  | 
 | ||||||
|  |     unpack "${AUTOINSTALL_EXE}" "${AUTOINSTALL_UNPACK}" | ||||||
|     wine_run_install "${AUTOINSTALL_SETUP}" /cd /targetdir="C:\\\\Program Files\\\\DAO\\\\RAtlas" /auto /hide |     wine_run_install "${AUTOINSTALL_SETUP}" /cd /targetdir="C:\\\\Program Files\\\\DAO\\\\RAtlas" /auto /hide | ||||||
| 
 | 
 | ||||||
|     WIN_FILE_EXEC="$DRIVE_C/Program Files/DAO/RAtlas/ratlas.exe" |     WIN_FILE_EXEC="$DRIVE_C/Program Files/DAO/RAtlas/ratlas.exe" | ||||||
|     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" |     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" | ||||||
|     try_remove_dir "$AUTOINSTALL_UNPACK" |     try_remove_dir "$AUTOINSTALL_UNPACK" | ||||||
| else |     try_remove_file "$AUTOINSTALL_EXE" | ||||||
|     fatal "Не найден файл установки для $PROG_NAME. Перезапустите по примеру: |  | ||||||
|     winehelper install $1 \"/путь/до/$EXE_SETUP_NAME\"" |  | ||||||
| fi | fi | ||||||
| @@ -9,20 +9,22 @@ export BASE_PFX="daobit_pfx_x86_v01" | |||||||
| export WH_WINDOWS_VER="10" | export WH_WINDOWS_VER="10" | ||||||
| export WINEARCH="win32" | export WINEARCH="win32" | ||||||
| export INSTALL_DLL="dotnet7 dotnetdesktop7 arial renderer=gdi" | export INSTALL_DLL="dotnet7 dotnetdesktop7 arial renderer=gdi" | ||||||
|  | 
 | ||||||
|  | AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_ri.exe" | ||||||
| AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_ri" | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_ri" | ||||||
| AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_ri/setup.exe" | AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_ri/setup.exe" | ||||||
| EXE_SETUP_NAME="setup_ri.exe" |  | ||||||
| 
 | 
 | ||||||
| if [[ -f "$2" ]] && [[ $2 =~ $EXE_SETUP_NAME$ ]] ; then | prepair_wine | ||||||
|     prepair_wine | if try_download "https://files.daobit.ru/RINFO/SFX/setup_ri.exe" "${AUTOINSTALL_EXE}" ; then | ||||||
| 
 | 
 | ||||||
|     unpack "$2" "${AUTOINSTALL_UNPACK}" |     # фикс постоянного запроса обновления Windows | ||||||
|  |     get_and_set_reg_file --add 'Software\DAO\DAOSETUP' 'SkipKBCheck' 'REG_DWORD' "1" "userdef" | ||||||
|  | 
 | ||||||
|  |     unpack "${AUTOINSTALL_EXE}" "${AUTOINSTALL_UNPACK}" | ||||||
|     wine_run_install "${AUTOINSTALL_SETUP}" /cd /targetdir="C:\\\\Program Files\\\\DAO\\\\RInfo" /auto /hide |     wine_run_install "${AUTOINSTALL_SETUP}" /cd /targetdir="C:\\\\Program Files\\\\DAO\\\\RInfo" /auto /hide | ||||||
| 
 | 
 | ||||||
|     WIN_FILE_EXEC="$DRIVE_C/Program Files/DAO/RInfo/rinfo.exe" |     WIN_FILE_EXEC="$DRIVE_C/Program Files/DAO/RInfo/rinfo.exe" | ||||||
|     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" |     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" | ||||||
|     try_remove_dir "$AUTOINSTALL_UNPACK" |     try_remove_dir "$AUTOINSTALL_UNPACK" | ||||||
| else |     try_remove_file "$AUTOINSTALL_EXE" | ||||||
|     fatal "Не найден файл установки для $PROG_NAME. Перезапустите по примеру: |  | ||||||
|     winehelper install $1 \"/путь/до/$EXE_SETUP_NAME\"" |  | ||||||
| fi | fi | ||||||
| @@ -9,20 +9,22 @@ export BASE_PFX="daobit_pfx_x86_v01" | |||||||
| export WH_WINDOWS_VER="10" | export WH_WINDOWS_VER="10" | ||||||
| export WINEARCH="win32" | export WINEARCH="win32" | ||||||
| export INSTALL_DLL="dotnet7 dotnetdesktop7 arial renderer=gdi" | export INSTALL_DLL="dotnet7 dotnetdesktop7 arial renderer=gdi" | ||||||
|  | 
 | ||||||
|  | AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_rt.exe" | ||||||
| AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_rt" | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_rt" | ||||||
| AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_rt/setup.exe" | AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_rt/setup.exe" | ||||||
| EXE_SETUP_NAME="setup_rt.exe" |  | ||||||
| 
 | 
 | ||||||
| if [[ -f "$2" ]] && [[ $2 =~ $EXE_SETUP_NAME$ ]] ; then | prepair_wine | ||||||
|     prepair_wine | if try_download "https://files.daobit.ru/RTARIFF/SFX/setup_rt.exe" "${AUTOINSTALL_EXE}" ; then | ||||||
| 
 | 
 | ||||||
|     unpack "$2" "${AUTOINSTALL_UNPACK}" |     # фикс постоянного запроса обновления Windows | ||||||
|  |     get_and_set_reg_file --add 'Software\DAO\DAOSETUP' 'SkipKBCheck' 'REG_DWORD' "1" "userdef" | ||||||
|  | 
 | ||||||
|  |     unpack "${AUTOINSTALL_EXE}" "${AUTOINSTALL_UNPACK}" | ||||||
|     wine_run_install "${AUTOINSTALL_SETUP}" /cd /targetdir="C:\\\\Program Files\\\\DAO\\\\RTariff" /auto /hide |     wine_run_install "${AUTOINSTALL_SETUP}" /cd /targetdir="C:\\\\Program Files\\\\DAO\\\\RTariff" /auto /hide | ||||||
| 
 | 
 | ||||||
|     WIN_FILE_EXEC="$DRIVE_C/Program Files/DAO/RTariff/Tariff.exe" |     WIN_FILE_EXEC="$DRIVE_C/Program Files/DAO/RTariff/Tariff.exe" | ||||||
|     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" |     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" | ||||||
|     try_remove_dir "$AUTOINSTALL_UNPACK" |     try_remove_dir "$AUTOINSTALL_UNPACK" | ||||||
| else |     try_remove_file "$AUTOINSTALL_EXE" | ||||||
|     fatal "Не найден файл установки для $PROG_NAME. Перезапустите по примеру: |  | ||||||
|     winehelper install $1 \"/путь/до/$EXE_SETUP_NAME\"" |  | ||||||
| fi | fi | ||||||
| @@ -9,6 +9,7 @@ export BASE_PFX="spravkibk_pfx_x86_v03" | |||||||
| export WH_WINDOWS_VER="10" | export WH_WINDOWS_VER="10" | ||||||
| export WINEARCH="win32" | export WINEARCH="win32" | ||||||
| export INSTALL_DLL="msxml3 msxml6 dotnet35sp1 renderer=gdi" | export INSTALL_DLL="msxml3 msxml6 dotnet35sp1 renderer=gdi" | ||||||
|  | export WH_USE_EXTRA_FONTS="1" | ||||||
|  |  | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/СПО-Справки-БК-(версия-2.5.5)-от-31.01.2024.zip" | AUTOINSTALL_EXE="${WH_TMP_DIR}/СПО-Справки-БК-(версия-2.5.5)-от-31.01.2024.zip" | ||||||
| AUTOINSTALL_UNPACK="${WH_TMP_DIR}/SpravkiBk" | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/SpravkiBk" | ||||||
|   | |||||||
| @@ -3,11 +3,13 @@ | |||||||
| ######################################################################## | ######################################################################## | ||||||
| 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_x_tkg_10-0_amd64" | export WH_WINE_USE="wine_wh_tflex_10-9_amd64" | ||||||
|  | export BASE_PFX="tflex17_pfx_x64_v02" | ||||||
| export WINEARCH="win64" | export WINEARCH="win64" | ||||||
| export WH_WINDOWS_VER="10" | export WH_WINDOWS_VER="10" | ||||||
| export WINEPREFIX="tflex17" | export WINEPREFIX="tflex17" | ||||||
| export WH_XDG_OPEN="log" | export WH_XDG_OPEN="log" | ||||||
|  | export WH_USE_MESA_GL_OVERRIDE="1" | ||||||
|  |  | ||||||
| # используем общий whdb файл для подготовки префикса и сервисов | # используем общий whdb файл для подготовки префикса и сервисов | ||||||
| # prepair_wine используется из файла настроек | # prepair_wine используется из файла настроек | ||||||
| @@ -33,5 +35,5 @@ if try_download "https://www.tflexcad.ru/download/t-flex-cad-free/files/TFCAD_ST | |||||||
|     try_remove_dir "${WH_TMP_DIR}/Стандартные элементы 17" |     try_remove_dir "${WH_TMP_DIR}/Стандартные элементы 17" | ||||||
|  |  | ||||||
|     WIN_FILE_EXEC="$DRIVE_C/Program Files/T-FLEX CAD Учебная Версия 17/Program/TFlexCad.exe" |     WIN_FILE_EXEC="$DRIVE_C/Program Files/T-FLEX CAD Учебная Версия 17/Program/TFlexCad.exe" | ||||||
|     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" |     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" "TFlexCadEDU" | ||||||
| fi | fi | ||||||
|   | |||||||
| @@ -3,11 +3,13 @@ | |||||||
| ######################################################################## | ######################################################################## | ||||||
| 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_x_tkg_10-0_amd64" | export WH_WINE_USE="wine_wh_tflex_10-9_amd64" | ||||||
|  | export BASE_PFX="tflex17_pfx_x64_v02" | ||||||
| export WINEARCH="win64" | export WINEARCH="win64" | ||||||
| export WH_WINDOWS_VER="10" | export WH_WINDOWS_VER="10" | ||||||
| export WINEPREFIX="tflex17" | export WINEPREFIX="tflex17" | ||||||
| export WH_XDG_OPEN="log" | export WH_XDG_OPEN="log" | ||||||
|  | export WH_USE_MESA_GL_OVERRIDE="1" | ||||||
|  |  | ||||||
| # используем общий whdb файл для подготовки префикса и сервисов | # используем общий whdb файл для подготовки префикса и сервисов | ||||||
| # prepair_wine используется из файла настроек | # prepair_wine используется из файла настроек | ||||||
| @@ -26,5 +28,5 @@ if try_download "https://www.tflex.ru/downloads/T-FLEX%20CAD%2017.zip" "${AUTOIN | |||||||
|     try_remove_file "${AUTOINSTALL_EXE}" |     try_remove_file "${AUTOINSTALL_EXE}" | ||||||
|  |  | ||||||
|     WIN_FILE_EXEC="$DRIVE_C/Program Files/T-FLEX CAD 17/Program/TFlexCad.exe" |     WIN_FILE_EXEC="$DRIVE_C/Program Files/T-FLEX CAD 17/Program/TFlexCad.exe" | ||||||
|     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" |     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" "TFlexCad" | ||||||
| fi | fi | ||||||
|   | |||||||
| @@ -2,11 +2,12 @@ | |||||||
| # 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 WH_WINDOWS_VER="10" | export WH_WINDOWS_VER="10" | ||||||
| export WH_WINE_USE="wine_x_tkg_10-0_amd64" | export WH_WINE_USE="wine_wh_tflex_10-9_amd64" | ||||||
| export BASE_PFX="tflex17_pfx_x64_v01" | export BASE_PFX="tflex17_pfx_x64_v02" | ||||||
| export WINEARCH="win64" | export WINEARCH="win64" | ||||||
| export WINEPREFIX="tflex17" | export WINEPREFIX="tflex17" | ||||||
| export WH_XDG_OPEN="log" | export WH_XDG_OPEN="log" | ||||||
|  | export WH_USE_MESA_GL_OVERRIDE="1" | ||||||
|  |  | ||||||
| check_prefix_var | check_prefix_var | ||||||
| if [[ ! -f "$WINEPREFIX/drive_c/Program Files/T-FLEX CAD 17/Program/TFlexCad.exe" ]] | if [[ ! -f "$WINEPREFIX/drive_c/Program Files/T-FLEX CAD 17/Program/TFlexCad.exe" ]] | ||||||
|   | |||||||
| @@ -2,11 +2,12 @@ | |||||||
| # 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 WH_WINDOWS_VER="10" | export WH_WINDOWS_VER="10" | ||||||
| export WH_WINE_USE="wine_x_tkg_10-0_amd64" | export WH_WINE_USE="wine_wh_tflex_10-9_amd64" | ||||||
| export BASE_PFX="tflex17_pfx_x64_v01" | export BASE_PFX="tflex17_pfx_x64_v02" | ||||||
| export WINEARCH="win64" | export WINEARCH="win64" | ||||||
| export WINEPREFIX="tflex17" | export WINEPREFIX="tflex17" | ||||||
| export WH_XDG_OPEN="log" | export WH_XDG_OPEN="log" | ||||||
|  | export WH_USE_MESA_GL_OVERRIDE="1" | ||||||
|  |  | ||||||
| check_prefix_var | check_prefix_var | ||||||
| if [[ ! -f "$WINEPREFIX/drive_c/Program Files/T-FLEX CAD 17/Program/TFlexCad.exe" ]] | if [[ ! -f "$WINEPREFIX/drive_c/Program Files/T-FLEX CAD 17/Program/TFlexCad.exe" ]] | ||||||
|   | |||||||
| @@ -3,11 +3,13 @@ | |||||||
| ######################################################################## | ######################################################################## | ||||||
| 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_x_tkg_10-0_amd64" | export WH_WINE_USE="wine_wh_tflex_10-9_amd64" | ||||||
|  | export BASE_PFX="tflex17_pfx_x64_v02" | ||||||
| export WINEARCH="win64" | export WINEARCH="win64" | ||||||
| export WH_WINDOWS_VER="10" | export WH_WINDOWS_VER="10" | ||||||
| export WINEPREFIX="tflex17" | export WINEPREFIX="tflex17" | ||||||
| export WH_XDG_OPEN="log" | export WH_XDG_OPEN="log" | ||||||
|  | export WH_USE_MESA_GL_OVERRIDE="1" | ||||||
|  |  | ||||||
| # используем общий whdb файл для подготовки префикса и сервисов | # используем общий whdb файл для подготовки префикса и сервисов | ||||||
| # prepair_wine используется из файла настроек | # prepair_wine используется из файла настроек | ||||||
| @@ -26,5 +28,5 @@ if try_download "https://www.tflex.ru/downloads/T-FLEX%20CAD%202D+%2017.zip" "${ | |||||||
|     try_remove_file "${AUTOINSTALL_EXE}" |     try_remove_file "${AUTOINSTALL_EXE}" | ||||||
|  |  | ||||||
|     WIN_FILE_EXEC="$DRIVE_C/Program Files/T-FLEX CAD 2D+ 17/Program/TFlexCad.exe" |     WIN_FILE_EXEC="$DRIVE_C/Program Files/T-FLEX CAD 2D+ 17/Program/TFlexCad.exe" | ||||||
|     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" |     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" "TFlexCad2D" | ||||||
| fi | fi | ||||||
|   | |||||||
| @@ -3,11 +3,13 @@ | |||||||
| ######################################################################## | ######################################################################## | ||||||
| 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_x_tkg_10-0_amd64" | export WH_WINE_USE="wine_wh_tflex_10-9_amd64" | ||||||
|  | export BASE_PFX="tflex17_pfx_x64_v02" | ||||||
| export WINEARCH="win64" | export WINEARCH="win64" | ||||||
| export WH_WINDOWS_VER="10" | export WH_WINDOWS_VER="10" | ||||||
| export WINEPREFIX="tflex17" | export WINEPREFIX="tflex17" | ||||||
| export WH_XDG_OPEN="log" | export WH_XDG_OPEN="log" | ||||||
|  | export WH_USE_MESA_GL_OVERRIDE="1" | ||||||
| 
 | 
 | ||||||
| # используем общий whdb файл для подготовки префикса и сервисов | # используем общий whdb файл для подготовки префикса и сервисов | ||||||
| # prepair_wine используется из файла настроек | # prepair_wine используется из файла настроек | ||||||
| @@ -3,11 +3,13 @@ | |||||||
| ######################################################################## | ######################################################################## | ||||||
| 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_x_tkg_10-0_amd64" | export WH_WINE_USE="wine_wh_tflex_10-9_amd64" | ||||||
|  | export BASE_PFX="tflex17_pfx_x64_v02" | ||||||
| export WINEARCH="win64" | export WINEARCH="win64" | ||||||
| export WH_WINDOWS_VER="10" | export WH_WINDOWS_VER="10" | ||||||
| export WINEPREFIX="tflex17" | export WINEPREFIX="tflex17" | ||||||
| export WH_XDG_OPEN="log" | export WH_XDG_OPEN="log" | ||||||
|  | export WH_USE_MESA_GL_OVERRIDE="1" | ||||||
|  |  | ||||||
| # используем общий whdb файл для подготовки префикса и сервисов | # используем общий whdb файл для подготовки префикса и сервисов | ||||||
| # prepair_wine используется из файла настроек | # prepair_wine используется из файла настроек | ||||||
|   | |||||||
| @@ -6,13 +6,16 @@ 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_v04" | export BASE_PFX="ved_ctm_pfx_x86_v05" | ||||||
| export WINEARCH="win32" | export WINEARCH="win32" | ||||||
| export WH_WINDOWS_VER="7" | export WH_WINDOWS_VER="7" | ||||||
| export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8" | export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8 vcrun2019 dotnet7 dotnetdesktop7 renderer=gdi" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
|  |  | ||||||
|  | # фикс постоянного запроса обновления Windows | ||||||
|  | get_and_set_reg_file --add 'Software\CTM\CTMSETUP' 'SkipKBCheck' 'REG_DWORD' "1" "userdef" | ||||||
|  |  | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_al.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_al.exe" | ||||||
| AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_al" | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_al" | ||||||
| AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_al/setup.exe" | AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_al/setup.exe" | ||||||
|   | |||||||
| @@ -6,13 +6,16 @@ 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_v04" | export BASE_PFX="ved_ctm_pfx_x86_v05" | ||||||
| export WINEARCH="win32" | export WINEARCH="win32" | ||||||
| export WH_WINDOWS_VER="7" | export WH_WINDOWS_VER="7" | ||||||
| export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8" | export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8 vcrun2019 dotnet7 dotnetdesktop7 renderer=gdi" | ||||||
|  |  | ||||||
| prepair_wine | 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_EXE="${WH_TMP_DIR}/setup_cl.exe" | ||||||
| AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_cl" | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_cl" | ||||||
| AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_cl/setup.exe" | AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_cl/setup.exe" | ||||||
|   | |||||||
| @@ -6,13 +6,16 @@ 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_v04" | export BASE_PFX="ved_ctm_pfx_x86_v05" | ||||||
| export WINEARCH="win32" | export WINEARCH="win32" | ||||||
| export WH_WINDOWS_VER="7" | export WH_WINDOWS_VER="7" | ||||||
| export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8" | export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8 vcrun2019 dotnet7 dotnetdesktop7 renderer=gdi" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
|  |  | ||||||
|  | # фикс постоянного запроса обновления Windows | ||||||
|  | get_and_set_reg_file --add 'Software\CTM\CTMSETUP' 'SkipKBCheck' 'REG_DWORD' "1" "userdef" | ||||||
|  |  | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_dl.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_dl.exe" | ||||||
| AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_dl" | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_dl" | ||||||
| AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_dl/setup.exe" | AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_dl/setup.exe" | ||||||
|   | |||||||
| @@ -6,13 +6,16 @@ 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_v04" | export BASE_PFX="ved_ctm_pfx_x86_v05" | ||||||
| export WINEARCH="win32" | export WINEARCH="win32" | ||||||
| export WH_WINDOWS_VER="7" | export WH_WINDOWS_VER="7" | ||||||
| export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8" | export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8 vcrun2019 dotnet7 dotnetdesktop7 renderer=gdi" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
|  |  | ||||||
|  | # фикс постоянного запроса обновления Windows | ||||||
|  | get_and_set_reg_file --add 'Software\CTM\CTMSETUP' 'SkipKBCheck' 'REG_DWORD' "1" "userdef" | ||||||
|  |  | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_vi.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_vi.exe" | ||||||
| AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_vi" | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_vi" | ||||||
| AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_vi/setup.exe" | AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_vi/setup.exe" | ||||||
|   | |||||||
| @@ -6,13 +6,16 @@ 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_v04" | export BASE_PFX="ved_ctm_pfx_x86_v05" | ||||||
| export WINEARCH="win32" | export WINEARCH="win32" | ||||||
| export WH_WINDOWS_VER="7" | export WH_WINDOWS_VER="7" | ||||||
| export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8" | export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8 vcrun2019 dotnet7 dotnetdesktop7 renderer=gdi" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
|  |  | ||||||
|  | # фикс постоянного запроса обновления Windows | ||||||
|  | get_and_set_reg_file --add 'Software\CTM\CTMSETUP' 'SkipKBCheck' 'REG_DWORD' "1" "userdef" | ||||||
|  |  | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_pa.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_pa.exe" | ||||||
| AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_pa" | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_pa" | ||||||
| AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_pa/setup.exe" | AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_pa/setup.exe" | ||||||
|   | |||||||
| @@ -6,13 +6,16 @@ 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_v04" | export BASE_PFX="ved_ctm_pfx_x86_v05" | ||||||
| export WINEARCH="win32" | export WINEARCH="win32" | ||||||
| export WH_WINDOWS_VER="7" | export WH_WINDOWS_VER="7" | ||||||
| export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8" | export INSTALL_DLL="vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8 vcrun2019 dotnet7 dotnetdesktop7 renderer=gdi" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
|  |  | ||||||
|  | # фикс постоянного запроса обновления Windows | ||||||
|  | get_and_set_reg_file --add 'Software\CTM\CTMSETUP' 'SkipKBCheck' 'REG_DWORD' "1" "userdef" | ||||||
|  |  | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_st.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/setup_st.exe" | ||||||
| AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_st" | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/setup_st" | ||||||
| AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_st/setup.exe" | AUTOINSTALL_SETUP="${WH_TMP_DIR}/setup_st/setup.exe" | ||||||
|   | |||||||
| @@ -2,13 +2,26 @@ | |||||||
| # info_ru: Компоненты сервисов поддержки T-FLEX 17 | # info_ru: Компоненты сервисов поддержки T-FLEX 17 | ||||||
| ######################################################################## | ######################################################################## | ||||||
| export WH_WINDOWS_VER="10" | export WH_WINDOWS_VER="10" | ||||||
| export WH_WINE_USE="wine_x_tkg_10-0_amd64" | export WH_WINE_USE="wine_wh_tflex_10-9_amd64" | ||||||
| export BASE_PFX="tflex17_pfx_x64_v01" | export BASE_PFX="tflex17_pfx_x64_v02" | ||||||
| export WINEARCH="win64" | export WINEARCH="win64" | ||||||
| export WINEPREFIX="tflex17" | export WINEPREFIX="tflex17" | ||||||
| export PROG_VERSION="" | export PROG_VERSION="" | ||||||
| export WH_XDG_OPEN="log" | 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" | ||||||
|  |  | ||||||
|  | # Компоненты поддержки T-FLEX PLM 17 (Linux) | ||||||
|  | AUTOINSTALL_ZIP_LIN="$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux.zip" | ||||||
|  | AUTOINSTALL_DIR_LIN="$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux" | ||||||
|  | AUTOINSTALL_REG_LIN="$AUTOINSTALL_DIR_LIN/Components/fake_hasp.reg" | ||||||
|  |  | ||||||
|  | # Компоненты поддержки T-FLEX PLM 17 (Windows) | ||||||
|  | AUTOINSTALL_ZIP_WIN="$WH_TMP_DIR/T-FLEX 17 Prerequisites.zip" | ||||||
|  | AUTOINSTALL_DIR_WIN="$WH_TMP_DIR/Компоненты поддержки T-FLEX 17" | ||||||
|  | AUTOINSTALL_EXE_WIN1="$AUTOINSTALL_DIR_WIN/Access Database Engine 2007/AccessDatabaseEngine.exe" | ||||||
|  | AUTOINSTALL_EXE_WIN_MSI="$AUTOINSTALL_DIR_WIN/Access Database Engine 2007" | ||||||
|  | AUTOINSTALL_EXE_WIN2="$AUTOINSTALL_DIR_WIN/TSC2/Setup_TSC2.msi" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
|  |  | ||||||
| @@ -28,41 +41,29 @@ else | |||||||
|     || ! systemctl list-units --type service --state running | grep hasplmd |     || ! systemctl list-units --type service --state running | grep hasplmd | ||||||
|     then |     then | ||||||
|         # Компоненты поддержки T-FLEX PLM 17 (Linux) |         # Компоненты поддержки T-FLEX PLM 17 (Linux) | ||||||
|         AUTOINSTALL_ZIP_LIN="${WH_TMP_DIR}/Prerequisites_T-FLEX_17_Linux.zip" |  | ||||||
|         AUTOINSTALL_DIR_LIN="${WH_TMP_DIR}/Prerequisites_T-FLEX_17_Linux" |  | ||||||
|         AUTOINSTALL_EXE_LIN1="${WH_TMP_DIR}/Prerequisites_T-FLEX_17_Linux/Components/fake_hasp.reg" |  | ||||||
|         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_17_Linux.zip" "${AUTOINSTALL_ZIP_LIN}" ; then | ||||||
|             unpack "${AUTOINSTALL_ZIP_LIN}" "${AUTOINSTALL_DIR_LIN}" |             unpack "$AUTOINSTALL_ZIP_LIN" "$AUTOINSTALL_DIR_LIN" | ||||||
|             try_remove_file "$AUTOINSTALL_ZIP_LIN" |             "$WINELOADER" regedit "$AUTOINSTALL_REG_LIN" | ||||||
|             "$WINELOADER" regedit "${AUTOINSTALL_EXE_LIN1}" |  | ||||||
|         fi |         fi | ||||||
|  |  | ||||||
|         if [[ "$BASE_PFX" == "none" ]] ; then |         if [[ "$BASE_PFX" == "none" ]] ; then | ||||||
|             # Компоненты поддержки T-FLEX PLM 17 (Windows) |             # Компоненты поддержки T-FLEX PLM 17 (Windows) | ||||||
|             AUTOINSTALL_ZIP_WIN="${WH_TMP_DIR}/T-FLEX 17 Prerequisites.zip" |  | ||||||
|             AUTOINSTALL_DIRWIN="${WH_TMP_DIR}" |  | ||||||
|             AUTOINSTALL_EXE_WIN1="${WH_TMP_DIR}/Компоненты поддержки T-FLEX 17/Access Database Engine 2007/AccessDatabaseEngine.exe" |  | ||||||
|             AUTOINSTALL_EXE_WIN_MSY="${WH_TMP_DIR}/Компоненты поддержки T-FLEX 17/Access Database Engine 2007" |  | ||||||
|             AUTOINSTALL_EXE_WIN2="${WH_TMP_DIR}/Компоненты поддержки T-FLEX 17/TSC2/Setup_TSC2.msi" |  | ||||||
|             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}" "${AUTOINSTALL_DIRWIN}" |                 unpack "$AUTOINSTALL_ZIP_WIN" "$WH_TMP_DIR" | ||||||
|                 try_remove_file "$AUTOINSTALL_ZIP_WIN" |                 unpack "$AUTOINSTALL_EXE_WIN1" "$AUTOINSTALL_EXE_WIN_MSI" | ||||||
|  |  | ||||||
|                 unpack "${AUTOINSTALL_EXE_WIN1}" "${AUTOINSTALL_EXE_WIN_MSY}" |                 wine_run_install "$AUTOINSTALL_EXE_WIN_MSI/AceRedist.msi" /q | ||||||
|                 try_remove_file "$AUTOINSTALL_EXE_WIN1" |                 wine_run_install "$AUTOINSTALL_EXE_WIN2" /q | ||||||
|  |  | ||||||
|                 wine_run_install "${AUTOINSTALL_EXE_WIN_MSY}/AceRedist.msi" /q |  | ||||||
|                 wine_run_install "${AUTOINSTALL_EXE_WIN2}" /q |  | ||||||
|             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/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" |             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" |             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" |             "$WINELOADER" regedit "$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/Components/ado-32.reg" | ||||||
|             "$WINELOADER"64 regedit "${WH_TMP_DIR}/Prerequisites_T-FLEX_17_Linux/Components/ado-64.reg" |             "$WINELOADER"64 regedit "$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/Components/ado-64.reg" | ||||||
|             "$WINELOADER" regedit "${WH_TMP_DIR}/Prerequisites_T-FLEX_17_Linux/Components/tflex.reg" |             "$WINELOADER" regedit "$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/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 \ | ||||||
| @@ -71,23 +72,27 @@ 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 \"$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/HASP_Linux/aksusbd/\" | ||||||
|             bash ./dinst |             bash ./dinst | ||||||
|             mv -f \"${WH_TMP_DIR}/Prerequisites_T-FLEX_17_Linux/HASP_Linux/\"*.so /var/hasplm/ |             mv -f \"$WH_TMP_DIR/Prerequisites_T-FLEX_17_Linux/HASP_Linux/\"*.so /var/hasplm/ | ||||||
|             systemctl restart hasplmd.service" > "${WH_TMP_DIR}/tflex17_aksusbd.sh" |             systemctl restart hasplmd.service" > "$WH_TMP_DIR/tflex17_aksusbd.sh" | ||||||
|             chmod +x ${WH_TMP_DIR}/tflex17_aksusbd.sh |             chmod +x $WH_TMP_DIR/tflex17_aksusbd.sh | ||||||
|             unset TFLEX_ERROR |             unset TFLEX_ERROR | ||||||
|             su_run "${WH_TMP_DIR}/tflex17_aksusbd.sh" || TFLEX_ERROR=1 |             print_info "Будут установлены и запущены службы aksusbd и hasplmd." | ||||||
|             try_remove_file "${WH_TMP_DIR}/tflex17_aksusbd.sh" |             su_run "$WH_TMP_DIR/tflex17_aksusbd.sh" || TFLEX_ERROR=1 | ||||||
|  |             try_remove_file "$WH_TMP_DIR/tflex17_aksusbd.sh" | ||||||
|         fi |         fi | ||||||
|  |     fi | ||||||
|  |  | ||||||
|     try_remove_dir "$AUTOINSTALL_DIR_LIN" |     try_remove_dir "$AUTOINSTALL_DIR_LIN" | ||||||
|         try_remove_dir "${WH_TMP_DIR}/Компоненты поддержки T-FLEX 17/" |     try_remove_dir "$AUTOINSTALL_DIR_WIN" | ||||||
|     fi |  | ||||||
|  |  | ||||||
|     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-cad17-prepair" >> "$WINEPREFIX/winetricks.log" | ||||||
|  |         try_remove_file "$AUTOINSTALL_ZIP_LIN" | ||||||
|  |         try_remove_file "$AUTOINSTALL_ZIP_WIN" | ||||||
|         print_info "Подготовка префикса и установка компонентов завершены." |         print_info "Подготовка префикса и установка компонентов завершены." | ||||||
|     fi |     fi | ||||||
| fi | fi | ||||||
|   | |||||||
| @@ -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/animator.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 14 KiB | 
							
								
								
									
										
											BIN
										
									
								
								image/commfort-client.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 25 KiB | 
							
								
								
									
										
											BIN
										
									
								
								image/commfort-server.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 24 KiB | 
							
								
								
									
										
											BIN
										
									
								
								image/ol.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 11 KiB | 
							
								
								
									
										
											BIN
										
									
								
								image/resmanagdb.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 33 KiB | 
							
								
								
									
										
											BIN
										
									
								
								image/rtsim.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 25 KiB | 
							
								
								
									
										
											BIN
										
									
								
								image/sdedit.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 29 KiB | 
							
								
								
									
										
											BIN
										
									
								
								image/sexplore.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 29 KiB | 
							
								
								
									
										
											BIN
										
									
								
								image/simswitch.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 16 KiB | 
							
								
								
									
										
											BIN
										
									
								
								image/swimitator.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 22 KiB | 
| @@ -3,11 +3,13 @@ | |||||||
| ######################################################################## | ######################################################################## | ||||||
| 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_x_tkg_10-0_amd64" | export WH_WINE_USE="wine_wh_tflex_10-9_amd64" | ||||||
|  | export BASE_PFX="tflex17_pfx_x64_v02" | ||||||
| export WINEARCH="win64" | export WINEARCH="win64" | ||||||
| export WH_WINDOWS_VER="10" | export WH_WINDOWS_VER="10" | ||||||
| export WINEPREFIX="tflex17" | export WINEPREFIX="tflex17" | ||||||
| export WH_XDG_OPEN="log" | export WH_XDG_OPEN="log" | ||||||
|  | export WH_USE_MESA_GL_OVERRIDE="1" | ||||||
|  |  | ||||||
| if [[ -f "$2" ]] ; then | if [[ -f "$2" ]] ; then | ||||||
|     # используем общий whdb файл для подготовки префикса и сервисов |     # используем общий whdb файл для подготовки префикса и сервисов | ||||||
|   | |||||||
| @@ -1,10 +1,13 @@ | |||||||
| ##### WINE ##### | ##### WINE ##### | ||||||
|  |  | ||||||
|  | 009c95bfe2df3f9264c9c5092f3e30ea7a168dd7869046058a718a70739602d4  wine_wh_tflex_10-9_amd64.tar.xz | ||||||
| 3571c40a787f0386e0160b5d471b1bf11fa2a235b497156cd38198b90bcb4a9f  wine_x_tkg_10-0_i586.tar.xz | 3571c40a787f0386e0160b5d471b1bf11fa2a235b497156cd38198b90bcb4a9f  wine_x_tkg_10-0_i586.tar.xz | ||||||
| 71d6fdfd23d7988471d345c68e81699b8af931352b03dd216424b398f63c7b12  wine_x_tkg_10-0_amd64.tar.xz | 71d6fdfd23d7988471d345c68e81699b8af931352b03dd216424b398f63c7b12  wine_x_tkg_10-0_amd64.tar.xz | ||||||
| fb7fdfde96de10a1b3b051bdf2727b6a7c1768b878483726454dd6726e9e0193  wine-9.0.14-alt1-i586-spravkibk.tar.xz | fb7fdfde96de10a1b3b051bdf2727b6a7c1768b878483726454dd6726e9e0193  wine-9.0.14-alt1-i586-spravkibk.tar.xz | ||||||
| e0a84bb4908c3927954d7eef6b8ac7212e442b8c107d000c6890fec340f96183  wine-9.0.14-alt1-amd64.tar.xz | e0a84bb4908c3927954d7eef6b8ac7212e442b8c107d000c6890fec340f96183  wine-9.0.14-alt1-amd64.tar.xz | ||||||
| 6f86d2220b65b709bf88c6f829a4998de3b929cc2091cd1333a51c32e1491b79  wine-9.0.9-alt1-i586.tar.xz | 6f86d2220b65b709bf88c6f829a4998de3b929cc2091cd1333a51c32e1491b79  wine-9.0.9-alt1-i586.tar.xz | ||||||
|  | 61bec1230b37b8fcc69fd45f848b44fd88cc41fcdd5dc3080336d7da63660f40  wine-7.16.1-alt1-amd64.tar.xz | ||||||
|  | 6fea17fd131f57c2ebf7ca4c60d3c5a9e819afe16e5d0b77ecb750da99ae0e38  wine-7.16.1-alt1-i586.tar.xz | ||||||
|  |  | ||||||
| ##### DXVK ##### | ##### DXVK ##### | ||||||
|  |  | ||||||
| @@ -17,6 +20,9 @@ df1a940d2e072a884524f66a16e0f0ef74048bc6a6642b96eb257528a522109f  vkd3d-proton-1 | |||||||
| ##### CPCSP_PROXY ##### | ##### CPCSP_PROXY ##### | ||||||
| 3153088ff28d6af415c3504a421e5382554dbb305f38d5a87dd84df90d680421  wine-cpcsp_proxy-0.6.1-alt1.tar.xz | 3153088ff28d6af415c3504a421e5382554dbb305f38d5a87dd84df90d680421  wine-cpcsp_proxy-0.6.1-alt1.tar.xz | ||||||
|  |  | ||||||
|  | ##### FONTS ##### | ||||||
|  | 405bfe3b7c7f80034837c05656535053305727ee4bf1d993521b67b71d08ebc6  extra_fonts_v01.tar.xz | ||||||
|  |  | ||||||
| ##### PREFIX ##### | ##### PREFIX ##### | ||||||
|  |  | ||||||
| 0e86cd9958d1bd1bfac99e23165a091a4ea2fa3e693c551f69aabeed5f681fea  defpfx_x86_v01.tar.xz | 0e86cd9958d1bd1bfac99e23165a091a4ea2fa3e693c551f69aabeed5f681fea  defpfx_x86_v01.tar.xz | ||||||
| @@ -39,6 +45,10 @@ f4cb2f380ad8887f334c6eb3c272b343ae8de327764945266e9e74f8acbac69f  tflex17_pfx_x6 | |||||||
| # create with wine_x_tkg_10-0_amd64 (universal user: xuser) | # create with wine_x_tkg_10-0_amd64 (universal user: xuser) | ||||||
| # winetricks isolate_home msxml6 ipamona opensymbol wenquanyi ucrtbase2019 uff unifont droid wenquanyizenhei remove_mono internal dotnet40 dotnet48 dotnet20sp2 eufonts takao d3dcompiler_47 fontsmooth=rgb vcrun2022 vlgothic andale arial comicsans courier georgia impact times trebuchet verdana webdings corefonts liberation sourcehansans baekmuk tahoma lucida | # winetricks isolate_home msxml6 ipamona opensymbol wenquanyi ucrtbase2019 uff unifont droid wenquanyizenhei remove_mono internal dotnet40 dotnet48 dotnet20sp2 eufonts takao d3dcompiler_47 fontsmooth=rgb vcrun2022 vlgothic andale arial comicsans courier georgia impact times trebuchet verdana webdings corefonts liberation sourcehansans baekmuk tahoma lucida | ||||||
|  |  | ||||||
|  | be09f25bb795c5f912fad2d122c68c8aed937821255f161c2d75a4773d11a044  tflex17_pfx_x64_v02.tar.xz | ||||||
|  | # create with wine_wh_tflex_10-9_amd64 | ||||||
|  | # winetricks isolate_home msxml6 ipamona opensymbol wenquanyi ucrtbase2019 uff unifont droid wenquanyizenhei remove_mono internal dotnet40 dotnet48 dotnet20 eufonts takao d3dcompiler_47 fontsmooth=rgb vcrun2022 vlgothic andale arial comicsans courier georgia impact times trebuchet verdana webdings corefonts liberation sourcehansans baekmuk tahoma lucida | ||||||
|  |  | ||||||
| 7edbd69b40b8ca3fb3594933c6cd37030180c494c08fd13cbd1a5b46565d65e6  ved_ctm_pfx_x86_v03.tar.xz | 7edbd69b40b8ca3fb3594933c6cd37030180c494c08fd13cbd1a5b46565d65e6  ved_ctm_pfx_x86_v03.tar.xz | ||||||
| # create with wine_x_tkg_10-0_amd64 (universal user: xuser) | # 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 | # 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 | ||||||
| @@ -47,6 +57,10 @@ f4cb2f380ad8887f334c6eb3c272b343ae8de327764945266e9e74f8acbac69f  tflex17_pfx_x6 | |||||||
| # create with wine_x_tkg_10-0_amd64 (universal user: xuser) | # create with wine_x_tkg_10-0_amd64 (universal user: xuser) | ||||||
| # winetricks vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8 | # winetricks vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8 | ||||||
|  |  | ||||||
|  | 25ccbd6ac4f5e4f0f4c609a016db9251160e3559b56676d97751f870a43fe7ef  ved_ctm_pfx_x86_v05.tar.xz | ||||||
|  | # create with wine_x_tkg_10-0_amd64 (universal user: xuser) | ||||||
|  | # winetricks vb6run art2kmin mdac27 mdac28 arial jet40 dotnet452 dotnet46 msxml3 ie8 vcrun2019 dotnet7 dotnetdesktop7 | ||||||
|  |  | ||||||
| 7ce0ff53b66bf6f3b1f8d398dddeec476a6ad9b0d0ab25cd303bf242c86c5513  alta_pfx_x86_v01.tar.xz | 7ce0ff53b66bf6f3b1f8d398dddeec476a6ad9b0d0ab25cd303bf242c86c5513  alta_pfx_x86_v01.tar.xz | ||||||
| # create with wine_x_tkg_10-0_amd64 (universal user: xuser) | # create with wine_x_tkg_10-0_amd64 (universal user: xuser) | ||||||
| # winetricks isolate_home msxml6 mdac27 wsh57 jet40 vb6run mdac28 opensymbol msxml4 msxml3 native_oleaut32 eufonts mfc42 andale arial comicsans courier georgia impact times trebuchet verdana webdings corefonts tahoma lucida sourcehansans fakechinese fakejapanese fakekorean unifont cjkfonts | # winetricks isolate_home msxml6 mdac27 wsh57 jet40 vb6run mdac28 opensymbol msxml4 msxml3 native_oleaut32 eufonts mfc42 andale arial comicsans courier georgia impact times trebuchet verdana webdings corefonts tahoma lucida sourcehansans fakechinese fakejapanese fakekorean unifont cjkfonts | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| # info_ru: Автоматизация контроля координации организационно-распорядительной деятельности. ПОС Редакция. | # info_ru: Автоматизация контроля координации организационно-распорядительной деятельности. ПОС Редакция. | ||||||
| ######################################################################## | ######################################################################## | ||||||
| export WH_WINE_USE="wine-9.0.14-alt1-amd64" | export WH_WINE_USE="wine-9.0.14-alt1-amd64" | ||||||
| export WINEPREFIX="abc" | export WINEPREFIX="abccenter" | ||||||
| export PROG_NAME="АВС АККОРД ПОС" | export PROG_NAME="АВС АККОРД ПОС" | ||||||
| export PROG_ICON="abc_akkord" | export PROG_ICON="abc_akkord" | ||||||
| export BASE_PFX="none" | export BASE_PFX="none" | ||||||
| @@ -10,13 +10,12 @@ export WH_WINDOWS_VER="10" | |||||||
| export WINEARCH="win64" | export WINEARCH="win64" | ||||||
| # export INSTALL_DLL="" | # export INSTALL_DLL="" | ||||||
|  |  | ||||||
|  | prepair_wine | ||||||
| # Возможны точки либо нижнее подчеркивание в URL-адресе | # Возможны точки либо нижнее подчеркивание в URL-адресе | ||||||
| try_get_page "https://abccenter.ru/download-ru/" | try_get_page "https://abccenter.ru/download-ru/" | ||||||
| VERDATE=$(read_page | grep -oP 'akkord_pos_\K\d+[._]\d+[._]\d+[._]\d+_\d+-\d+-\d+') | VERDATE=$(read_page | grep -oP 'akkord_pos_\K\d+[._]\d+[._]\d+[._]\d+_\d+-\d+-\d+') | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/akkord_pos_${VERDATE}.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/akkord_pos_${VERDATE}.exe" | ||||||
|  |  | ||||||
| prepair_wine |  | ||||||
|  |  | ||||||
| if try_download "https://abccenter.ru/wp-content/soft/akkord_pos_${VERDATE}.exe" "${AUTOINSTALL_EXE}" ; then | if try_download "https://abccenter.ru/wp-content/soft/akkord_pos_${VERDATE}.exe" "${AUTOINSTALL_EXE}" ; then | ||||||
|     wine_run_install "${AUTOINSTALL_EXE}" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- |     wine_run_install "${AUTOINSTALL_EXE}" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- | ||||||
|     try_remove_file "$AUTOINSTALL_EXE" |     try_remove_file "$AUTOINSTALL_EXE" | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| # info_ru: Автоматизация контроля координации организационно-распорядительной деятельности. Профессиональная Редакция. | # info_ru: Автоматизация контроля координации организационно-распорядительной деятельности. Профессиональная Редакция. | ||||||
| ######################################################################## | ######################################################################## | ||||||
| export WH_WINE_USE="wine-9.0.14-alt1-amd64" | export WH_WINE_USE="wine-9.0.14-alt1-amd64" | ||||||
| export WINEPREFIX="abc" | export WINEPREFIX="abccenter" | ||||||
| export PROG_NAME="АВС АККОРД Профессиональный" | export PROG_NAME="АВС АККОРД Профессиональный" | ||||||
| export PROG_ICON="abc_akkord" | export PROG_ICON="abc_akkord" | ||||||
| export BASE_PFX="none" | export BASE_PFX="none" | ||||||
| @@ -11,24 +11,14 @@ export WINEARCH="win64" | |||||||
| # export INSTALL_DLL="" | # export INSTALL_DLL="" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
| print_info "Загрузка страницы..." |  | ||||||
| ABC_FILE="${WH_TMP_DIR}/abc_akkord_pro.html" |  | ||||||
| curl -o "$ABC_FILE" -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "https://abccenter.ru/download-ru/" |  | ||||||
|  |  | ||||||
| if [[ ! -f "$ABC_FILE" ]] \ |  | ||||||
| || grep -q "Forbidden" "$ABC_FILE" |  | ||||||
| then |  | ||||||
|     fatal "Страница сайта не доступна, или превышено количество запросов к странице." |  | ||||||
| fi |  | ||||||
|  |  | ||||||
| # Возможны точки либо нижнее подчеркивание в URL-адресе | # Возможны точки либо нижнее подчеркивание в URL-адресе | ||||||
| VERDATE=$(grep -oP 'akkord_pro_\K\d+[._]\d+[._]\d+[._]\d+_\d+-\d+-\d+' "$ABC_FILE") | try_get_page "https://abccenter.ru/download-ru/" | ||||||
|  | VERDATE=$(read_page | grep -oP 'akkord_pro_\K\d+[._]\d+[._]\d+[._]\d+_\d+-\d+-\d+') | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/akkord_pro_${VERDATE}.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/akkord_pro_${VERDATE}.exe" | ||||||
|  |  | ||||||
| if try_download "https://abccenter.ru/wp-content/soft/akkord_pro_${VERDATE}.exe" "${AUTOINSTALL_EXE}" ; then | if try_download "https://abccenter.ru/wp-content/soft/akkord_pro_${VERDATE}.exe" "${AUTOINSTALL_EXE}" ; then | ||||||
|     wine_run_install "${AUTOINSTALL_EXE}" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- |     wine_run_install "${AUTOINSTALL_EXE}" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- | ||||||
|     try_remove_file "$AUTOINSTALL_EXE" |     try_remove_file "$AUTOINSTALL_EXE" | ||||||
|     try_remove_file "$ABC_FILE" |  | ||||||
|  |  | ||||||
|     WIN_FILE_EXEC="$DRIVE_C/ABC-Soft/AKKORD PRO/ABCAKKORD.exe" |     WIN_FILE_EXEC="$DRIVE_C/ABC-Soft/AKKORD PRO/ABCAKKORD.exe" | ||||||
|     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" |     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| # info_ru: Комплект плагинов «Сметная система АВС» к BIM-системам. | # info_ru: Комплект плагинов «Сметная система АВС» к BIM-системам. | ||||||
| ######################################################################## | ######################################################################## | ||||||
| export WH_WINE_USE="wine-9.0.14-alt1-amd64" | export WH_WINE_USE="wine-9.0.14-alt1-amd64" | ||||||
| export WINEPREFIX="abc" | export WINEPREFIX="abccenter" | ||||||
| export PROG_NAME="ABC-BIM-Plugins-RU" | export PROG_NAME="ABC-BIM-Plugins-RU" | ||||||
| export BASE_PFX="none" | export BASE_PFX="none" | ||||||
| export WH_WINDOWS_VER="10" | export WH_WINDOWS_VER="10" | ||||||
| @@ -10,21 +10,12 @@ export WINEARCH="win64" | |||||||
| # export INSTALL_DLL="" | # export INSTALL_DLL="" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
| print_info "Загрузка страницы..." | # Возможны точки либо нижнее подчеркивание в URL-адресе | ||||||
| ABC_FILE="${WH_TMP_DIR}/ABC-BIM-Plugins-RU.html" | try_get_page "https://abccenter.ru/download-ru/" | ||||||
| curl -o "$ABC_FILE" -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "https://abccenter.ru/download-ru/" | VERSION=$(read_page | grep -oP 'ABC-BIM-Plugins-RU_\K\d+[._]\d+[._]\d+'| sed -E 's/[._]/./g') | ||||||
|  |  | ||||||
| if [[ ! -f "$ABC_FILE" ]] \ |  | ||||||
| || grep -q "Forbidden" "$ABC_FILE" |  | ||||||
| then |  | ||||||
|     fatal "Страница сайта не доступна, или превышено количество запросов к странице." |  | ||||||
| fi |  | ||||||
|  |  | ||||||
| VERSION=$(grep -oP 'ABC-BIM-Plugins-RU_\K\d+[._]\d+[._]\d+' "$ABC_FILE" | sed -E 's/[._]/./g') |  | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/ABC-BIM-Plugins-RU_${VERSION}.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/ABC-BIM-Plugins-RU_${VERSION}.exe" | ||||||
|  |  | ||||||
| if try_download "https://abccenter.ru/wp-content/soft/ABC-BIM-Plugins-RU_${VERSION}_Setup.exe" "${AUTOINSTALL_EXE}" ; then | if try_download "https://abccenter.ru/wp-content/soft/ABC-BIM-Plugins-RU_${VERSION}_Setup.exe" "${AUTOINSTALL_EXE}" ; then | ||||||
|     wine_run_install "${AUTOINSTALL_EXE}" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- |     wine_run_install "${AUTOINSTALL_EXE}" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- | ||||||
|     try_remove_file "$AUTOINSTALL_EXE" |     try_remove_file "$AUTOINSTALL_EXE" | ||||||
|     try_remove_file "$ABC_FILE" |  | ||||||
| fi | fi | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| # info_ru: Интеграция сметной системы АВС с BIM-платформами. | # info_ru: Интеграция сметной системы АВС с BIM-платформами. | ||||||
| ######################################################################## | ######################################################################## | ||||||
| export WH_WINE_USE="wine-9.0.14-alt1-amd64" | export WH_WINE_USE="wine-9.0.14-alt1-amd64" | ||||||
| export WINEPREFIX="abc" | export WINEPREFIX="abccenter" | ||||||
| PROG_NAME=("BIM-смета АВС-RU" "АВС Рекомпозитор") | PROG_NAME=("BIM-смета АВС-RU" "АВС Рекомпозитор") | ||||||
| export BASE_PFX="none" | export BASE_PFX="none" | ||||||
| export WH_WINDOWS_VER="10" | export WH_WINDOWS_VER="10" | ||||||
| @@ -10,25 +10,15 @@ export WINEARCH="win64" | |||||||
| # export INSTALL_DLL="" | # export INSTALL_DLL="" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
| print_info "Загрузка страницы..." |  | ||||||
| ABC_FILE="${WH_TMP_DIR}/ABC-BIM-RU.html" |  | ||||||
| curl -o "$ABC_FILE" -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "https://abccenter.ru/download-ru/" |  | ||||||
|  |  | ||||||
| if [[ ! -f "$ABC_FILE" ]] \ |  | ||||||
| || grep -q "Forbidden" "$ABC_FILE" |  | ||||||
| then |  | ||||||
|     fatal "Страница сайта не доступна, или превышено количество запросов к странице." |  | ||||||
| fi |  | ||||||
|  |  | ||||||
| # Возможны точки либо нижнее подчеркивание в URL-адресе | # Возможны точки либо нижнее подчеркивание в URL-адресе | ||||||
| VERDATE=$(grep -oP 'Setup_ABC-BIM-RU_\K\d+[._]\d+_\d+-\d+-\d+' "$ABC_FILE") | try_get_page "https://abccenter.ru/download-ru/" | ||||||
| VERSION=$(grep -oP 'Setup_ABC-BIM-RU_\K\d+[._]\d+' "$ABC_FILE" | sed -E 's/[._]/./g') | VERDATE=$(read_page | grep -oP 'Setup_ABC-BIM-RU_\K\d+[._]\d+_\d+-\d+-\d+') | ||||||
|  | VERSION=$(read_page | grep -oP 'Setup_ABC-BIM-RU_\K\d+[._]\d+' | sed -E 's/[._]/./g') | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/Setup_ABC-BIM-RU_${VERDATE}_trial.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/Setup_ABC-BIM-RU_${VERDATE}_trial.exe" | ||||||
|  |  | ||||||
| if try_download "https://abccenter.ru/wp-content/soft/Setup_ABC-BIM-RU_${VERDATE}_trial.exe" "${AUTOINSTALL_EXE}" ; then | if try_download "https://abccenter.ru/wp-content/soft/Setup_ABC-BIM-RU_${VERDATE}_trial.exe" "${AUTOINSTALL_EXE}" ; then | ||||||
|     wine_run_install "${AUTOINSTALL_EXE}" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- |     wine_run_install "${AUTOINSTALL_EXE}" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- | ||||||
|     try_remove_file "$AUTOINSTALL_EXE" |     try_remove_file "$AUTOINSTALL_EXE" | ||||||
|     try_remove_file "$ABC_FILE" |  | ||||||
|  |  | ||||||
|     WIN_FILE_EXEC="$DRIVE_C/ABC-Soft/ABC-RU/${VERSION}/Abc_win/Exec/Abc.exe" |     WIN_FILE_EXEC="$DRIVE_C/ABC-Soft/ABC-RU/${VERSION}/Abc_win/Exec/Abc.exe" | ||||||
|     WIN_FILE_EXEC1="$DRIVE_C/ABC-Soft/ABC RECOMPOSER/abcrecomposerwl.exe" |     WIN_FILE_EXEC1="$DRIVE_C/ABC-Soft/ABC RECOMPOSER/abcrecomposerwl.exe" | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| # info_ru: АВС-ЦСП предназначен для автоматизированного составления и выпуска спецификаций материалов и оборудования, а также формирования ведомостей объемов работ (ВОР) путем связывания материальных ресурсов, включаемых в спецификации, с видами работ. | # info_ru: АВС-ЦСП предназначен для автоматизированного составления и выпуска спецификаций материалов и оборудования, а также формирования ведомостей объемов работ (ВОР) путем связывания материальных ресурсов, включаемых в спецификации, с видами работ. | ||||||
| ######################################################################## | ######################################################################## | ||||||
| export WH_WINE_USE="wine-9.0.14-alt1-amd64" | export WH_WINE_USE="wine-9.0.14-alt1-amd64" | ||||||
| export WINEPREFIX="abc" | export WINEPREFIX="abccenter" | ||||||
| export PROG_NAME="Цифровая спецификация проекта" | export PROG_NAME="Цифровая спецификация проекта" | ||||||
| export PROG_ICON="abc-dps" | export PROG_ICON="abc-dps" | ||||||
| export BASE_PFX="none" | export BASE_PFX="none" | ||||||
| @@ -11,25 +11,15 @@ export WINEARCH="win64" | |||||||
| # export INSTALL_DLL="" | # export INSTALL_DLL="" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
| print_info "Загрузка страницы..." |  | ||||||
| ABC_FILE="${WH_TMP_DIR}/ABC_DPS_RU.html" |  | ||||||
| curl -o "$ABC_FILE" -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "https://abccenter.ru/download-ru/" |  | ||||||
|  |  | ||||||
| if [[ ! -f "$ABC_FILE" ]] \ |  | ||||||
| || grep -q "Forbidden" "$ABC_FILE" |  | ||||||
| then |  | ||||||
|     fatal "Страница сайта не доступна, или превышено количество запросов к странице." |  | ||||||
| fi |  | ||||||
|  |  | ||||||
| # Возможны точки либо нижнее подчеркивание в URL-адресе | # Возможны точки либо нижнее подчеркивание в URL-адресе | ||||||
| VERDATE=$(grep -oP 'Setup_ABC_DPS_RU_\K\d+[._]\d+_\d+-\d+-\d+' "$ABC_FILE") | try_get_page "https://abccenter.ru/download-ru/" | ||||||
| VERSION=$(grep -oP 'Setup_ABC_DPS_RU_\K\d+[._]\d+' "$ABC_FILE" | sed -E 's/[._]/./g') | VERDATE=$(read_page | grep -oP 'Setup_ABC_DPS_RU_\K\d+[._]\d+_\d+-\d+-\d+') | ||||||
|  | VERSION=$(read_page | grep -oP 'Setup_ABC_DPS_RU_\K\d+[._]\d+'| sed -E 's/[._]/./g') | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/Setup_ABC_DPS_RU_${VERDATE}.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/Setup_ABC_DPS_RU_${VERDATE}.exe" | ||||||
|  |  | ||||||
| if try_download "https://abccenter.ru/wp-content/soft/Setup_ABC_DPS_RU_${VERDATE}.exe" "${AUTOINSTALL_EXE}" ; then | if try_download "https://abccenter.ru/wp-content/soft/Setup_ABC_DPS_RU_${VERDATE}.exe" "${AUTOINSTALL_EXE}" ; then | ||||||
|     wine_run_install "${AUTOINSTALL_EXE}" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- |     wine_run_install "${AUTOINSTALL_EXE}" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- | ||||||
|     try_remove_file "$AUTOINSTALL_EXE" |     try_remove_file "$AUTOINSTALL_EXE" | ||||||
|     try_remove_file "$ABC_FILE" |  | ||||||
|  |  | ||||||
|     WIN_FILE_EXEC="$DRIVE_C/ABC-Soft/ABC-DPS RU/${VERSION}/ABCSpecificate.exe" |     WIN_FILE_EXEC="$DRIVE_C/ABC-Soft/ABC-DPS RU/${VERSION}/ABCSpecificate.exe" | ||||||
|     create_desktop "$PROG_NAME RU ${VERSION}" "$WIN_FILE_EXEC" "$PROG_ICON" |     create_desktop "$PROG_NAME RU ${VERSION}" "$WIN_FILE_EXEC" "$PROG_ICON" | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| # info_ru: Конвертер в формат АВС_ERP_BIM_XML. | # info_ru: Конвертер в формат АВС_ERP_BIM_XML. | ||||||
| ######################################################################## | ######################################################################## | ||||||
| export WH_WINE_USE="wine-9.0.14-alt1-amd64" | export WH_WINE_USE="wine-9.0.14-alt1-amd64" | ||||||
| export WINEPREFIX="abc" | export WINEPREFIX="abccenter" | ||||||
| export PROG_NAME="Конвертер в формат АВС_ERP_BIM_XML" | export PROG_NAME="Конвертер в формат АВС_ERP_BIM_XML" | ||||||
| export PROG_ICON="abc-erp-bim" | export PROG_ICON="abc-erp-bim" | ||||||
| export BASE_PFX="none" | export BASE_PFX="none" | ||||||
| @@ -11,24 +11,13 @@ export WINEARCH="win64" | |||||||
| # export INSTALL_DLL="" | # export INSTALL_DLL="" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
| print_info "Загрузка страницы..." |  | ||||||
| ABC_FILE="${WH_TMP_DIR}/abc_erp_bim_converter.html" |  | ||||||
| curl -o "$ABC_FILE" -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "https://abccenter.ru/download-ru/" |  | ||||||
|  |  | ||||||
| if [[ ! -f "$ABC_FILE" ]] \ |  | ||||||
| || grep -q "Forbidden" "$ABC_FILE" |  | ||||||
| then |  | ||||||
|     fatal "Страница сайта не доступна, или превышено количество запросов к странице." |  | ||||||
| fi |  | ||||||
|  |  | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/abc_erp_bim_converter.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/abc_erp_bim_converter.exe" | ||||||
| # https://abccenter.ru/wp-content/soft/abc_erp_bim_converter.exe |  | ||||||
| if try_download "https://abccenter.ru/wp-content/soft/abc_erp_bim_converter.exe" "${AUTOINSTALL_EXE}" ; then | if try_download "https://abccenter.ru/wp-content/soft/abc_erp_bim_converter.exe" "${AUTOINSTALL_EXE}" ; then | ||||||
|     mkdir -p "$DRIVE_C/ABC-Soft/abc_erp_bim_converter" |     mkdir -p "$DRIVE_C/ABC-Soft/abc_erp_bim_converter" | ||||||
|     try_copy_file "${AUTOINSTALL_EXE}" "$DRIVE_C/ABC-Soft/abc_erp_bim_converter" |     try_copy_file "${AUTOINSTALL_EXE}" "$DRIVE_C/ABC-Soft/abc_erp_bim_converter" | ||||||
|  |  | ||||||
|     try_remove_file "$AUTOINSTALL_EXE" |     try_remove_file "$AUTOINSTALL_EXE" | ||||||
|     try_remove_file "$ABC_FILE" |  | ||||||
|  |  | ||||||
|     WIN_FILE_EXEC="$DRIVE_C/ABC-Soft/abc_erp_bim_converter.exe" |     WIN_FILE_EXEC="$DRIVE_C/ABC-Soft/abc_erp_bim_converter.exe" | ||||||
|     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" |     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| # info_ru: Программный продукт АВС «ПИР» предназначен для подготовки, расчета и выпуска смет на проектно-изыскательские работы. | # info_ru: Программный продукт АВС «ПИР» предназначен для подготовки, расчета и выпуска смет на проектно-изыскательские работы. | ||||||
| ######################################################################## | ######################################################################## | ||||||
| export WH_WINE_USE="wine-9.0.14-alt1-amd64" | export WH_WINE_USE="wine-9.0.14-alt1-amd64" | ||||||
| export WINEPREFIX="abc" | export WINEPREFIX="abccenter" | ||||||
| export PROG_NAME="АВС-ПИР" | export PROG_NAME="АВС-ПИР" | ||||||
| export PROG_ICON="abc-pir" | export PROG_ICON="abc-pir" | ||||||
| export BASE_PFX="none" | export BASE_PFX="none" | ||||||
| @@ -11,25 +11,15 @@ export WINEARCH="win64" | |||||||
| # export INSTALL_DLL="" | # export INSTALL_DLL="" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
| print_info "Загрузка страницы..." |  | ||||||
| ABC_FILE="${WH_TMP_DIR}/ABC-PIR-RU.html" |  | ||||||
| curl -o "$ABC_FILE" -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "https://abccenter.ru/download-ru/" |  | ||||||
|  |  | ||||||
| if [[ ! -f "$ABC_FILE" ]] \ |  | ||||||
| || grep -q "Forbidden" "$ABC_FILE" |  | ||||||
| then |  | ||||||
|     fatal "Страница сайта не доступна, или превышено количество запросов к странице." |  | ||||||
| fi |  | ||||||
|  |  | ||||||
| # Возможны точки либо нижнее подчеркивание в URL-адресе | # Возможны точки либо нижнее подчеркивание в URL-адресе | ||||||
| VERDATE=$(grep -oP 'Setup_ABC-PIR-RU_\K\d+[._]\d+_\d+-\d+-\d+' "$ABC_FILE") | try_get_page "https://abccenter.ru/download-ru/" | ||||||
| VERSION=$(grep -oP 'Setup_ABC-PIR-RU_\K\d+[._]\d+' "$ABC_FILE" | sed -E 's/[._]/./g') | VERDATE=$(read_page | grep -oP 'Setup_ABC-PIR-RU_\K\d+[._]\d+_\d+-\d+-\d+') | ||||||
|  | VERSION=$(read_page | grep -oP 'Setup_ABC-PIR-RU_\K\d+[._]\d+'| sed -E 's/[._]/./g') | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/Setup_ABC-PIR-RU_${VERDATE}.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/Setup_ABC-PIR-RU_${VERDATE}.exe" | ||||||
|  |  | ||||||
| if try_download "https://abccenter.ru/wp-content/soft/Setup_ABC-PIR-RU_${VERDATE}.exe" "${AUTOINSTALL_EXE}" ; then | if try_download "https://abccenter.ru/wp-content/soft/Setup_ABC-PIR-RU_${VERDATE}.exe" "${AUTOINSTALL_EXE}" ; then | ||||||
|     wine_run_install "${AUTOINSTALL_EXE}" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- |     wine_run_install "${AUTOINSTALL_EXE}" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- | ||||||
|     try_remove_file "$AUTOINSTALL_EXE" |     try_remove_file "$AUTOINSTALL_EXE" | ||||||
|     try_remove_file "$ABC_FILE" |  | ||||||
|  |  | ||||||
|     WIN_FILE_EXEC="$DRIVE_C/ABC-Soft/ABC-PIR/${VERSION}RU/ABC-PIR.exe" |     WIN_FILE_EXEC="$DRIVE_C/ABC-Soft/ABC-PIR/${VERSION}RU/ABC-PIR.exe" | ||||||
|     create_desktop "$PROG_NAME ${VERSION}RU" "$WIN_FILE_EXEC" "$PROG_ICON" |     create_desktop "$PROG_NAME ${VERSION}RU" "$WIN_FILE_EXEC" "$PROG_ICON" | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| # info_ru: Программный комплекс АВС-Рекомпозитор. | # info_ru: Программный комплекс АВС-Рекомпозитор. | ||||||
| ######################################################################## | ######################################################################## | ||||||
| export WH_WINE_USE="wine-9.0.14-alt1-amd64" | export WH_WINE_USE="wine-9.0.14-alt1-amd64" | ||||||
| export WINEPREFIX="abc" | export WINEPREFIX="abccenter" | ||||||
| export PROG_NAME="АВС Рекомпозитор" | export PROG_NAME="АВС Рекомпозитор" | ||||||
| export PROG_ICON="abc-recomposerwl" | export PROG_ICON="abc-recomposerwl" | ||||||
| export BASE_PFX="none" | export BASE_PFX="none" | ||||||
| @@ -11,23 +11,15 @@ export WINEARCH="win64" | |||||||
| # export INSTALL_DLL="" | # export INSTALL_DLL="" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
| ABC_FILE="${WH_TMP_DIR}/abcrecomposer.html" | # Возможны точки либо нижнее подчеркивание в URL-адресе | ||||||
| curl -o "$ABC_FILE" -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "https://abccenter.ru/download-ru/" | try_get_page "https://abccenter.ru/download-ru/" | ||||||
|  | VERDATE=$(read_page | grep -oP 'abcrecomposer_\K\d+[._]\d+[._]\d+-\d+-\d+') | ||||||
| if [[ ! -f "$ABC_FILE" ]] \ | VERSION=$(read_page | grep -oP 'abcrecomposer_\K\d+[._]\d+' | sed -E 's/[._]/./g') | ||||||
| || grep -q "Forbidden" "$ABC_FILE" |  | ||||||
| then |  | ||||||
|     fatal "Страница сайта не доступна, или превышено количество запросов к странице." |  | ||||||
| fi |  | ||||||
|  |  | ||||||
| VERDATE=$(grep -oP 'abcrecomposer_\K\d+[._]\d+[._]\d+-\d+-\d+' "$ABC_FILE") |  | ||||||
| VERSION=$(grep -oP 'abcrecomposer_\K\d+[._]\d+' "$ABC_FILE" | sed -E 's/[._]/./g') |  | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/Setup_ABC-RU_${VERDATE}.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/Setup_ABC-RU_${VERDATE}.exe" | ||||||
|  |  | ||||||
| if try_download "https://abccenter.ru/wp-content/soft/abcrecomposer_${VERDATE}.exe" "${AUTOINSTALL_EXE}" ; then | if try_download "https://abccenter.ru/wp-content/soft/abcrecomposer_${VERDATE}.exe" "${AUTOINSTALL_EXE}" ; then | ||||||
|     wine_run_install "${AUTOINSTALL_EXE}" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- |     wine_run_install "${AUTOINSTALL_EXE}" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- | ||||||
|     try_remove_file "$AUTOINSTALL_EXE" |     try_remove_file "$AUTOINSTALL_EXE" | ||||||
|     try_remove_file "$ABC_FILE" |  | ||||||
|  |  | ||||||
|     WIN_FILE_EXEC="$DRIVE_C/ABC-Soft/ABC RECOMPOSER/${VERSION}/abcrecomposerwl.exe" |     WIN_FILE_EXEC="$DRIVE_C/ABC-Soft/ABC RECOMPOSER/${VERSION}/abcrecomposerwl.exe" | ||||||
|     create_desktop "$PROG_NAME $VERSION" "$WIN_FILE_EXEC" "$PROG_ICON" |     create_desktop "$PROG_NAME $VERSION" "$WIN_FILE_EXEC" "$PROG_ICON" | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
| # info_ru: Система АВС предназначена для разработки сметной и ресурсной документации всеми участниками инвестиционного процесса: проектными, подрядными организациями и заказчиками строительства. | # info_ru: Система АВС предназначена для разработки сметной и ресурсной документации всеми участниками инвестиционного процесса: проектными, подрядными организациями и заказчиками строительства. | ||||||
| ######################################################################## | ######################################################################## | ||||||
| export WH_WINE_USE="wine-9.0.14-alt1-amd64" | export WH_WINE_USE="wine-9.0.14-alt1-amd64" | ||||||
| export WINEPREFIX="abc" | export WINEPREFIX="abccenter" | ||||||
| export PROG_NAME="ABC-RU" | export PROG_NAME="ABC-RU" | ||||||
| export PROG_ICON="abc" | export PROG_ICON="abc" | ||||||
| export BASE_PFX="none" | export BASE_PFX="none" | ||||||
| @@ -11,24 +11,15 @@ export WINEARCH="win64" | |||||||
| # export INSTALL_DLL="" | # export INSTALL_DLL="" | ||||||
|  |  | ||||||
| prepair_wine | prepair_wine | ||||||
| print_info "Загрузка страницы..." | # Возможны точки либо нижнее подчеркивание в URL-адресе | ||||||
| ABC_FILE="${WH_TMP_DIR}/abc.html" | try_get_page "https://abccenter.ru/download-ru/" | ||||||
| curl -o "$ABC_FILE" -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "https://abccenter.ru/download-ru/" | VERDATE=$(read_page | grep -oP 'Setup_ABC-RU_\K\d+[._]\d+[._]\d+-\d+-\d+') | ||||||
|  | VERSION=$(read_page | grep -oP 'Setup_ABC-RU_\K\d+[._]\d+' | sed -E 's/[._]/./g') | ||||||
| if [[ ! -f "$ABC_FILE" ]] \ |  | ||||||
| || grep -q "Forbidden" "$ABC_FILE" |  | ||||||
| then |  | ||||||
|     fatal "Страница сайта не доступна, или превышено количество запросов к странице." |  | ||||||
| fi |  | ||||||
|  |  | ||||||
| VERDATE=$(grep -oP 'Setup_ABC-RU_\K\d+[._]\d+[._]\d+-\d+-\d+' "$ABC_FILE") |  | ||||||
| VERSION=$(grep -oP 'Setup_ABC-RU_\K\d+[._]\d+' "$ABC_FILE" | sed -E 's/[._]/./g') |  | ||||||
| AUTOINSTALL_EXE="${WH_TMP_DIR}/Setup_ABC-RU_${VERDATE}.exe" | AUTOINSTALL_EXE="${WH_TMP_DIR}/Setup_ABC-RU_${VERDATE}.exe" | ||||||
|  |  | ||||||
| if try_download "https://abccenter.ru/wp-content/soft/Setup_ABC-RU_${VERDATE}.exe" "${AUTOINSTALL_EXE}" ; then | if try_download "https://abccenter.ru/wp-content/soft/Setup_ABC-RU_${VERDATE}.exe" "${AUTOINSTALL_EXE}" ; then | ||||||
|     wine_run_install "${AUTOINSTALL_EXE}" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- |     wine_run_install "${AUTOINSTALL_EXE}" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- | ||||||
|     try_remove_file "$AUTOINSTALL_EXE" |     try_remove_file "$AUTOINSTALL_EXE" | ||||||
|     try_remove_file "$ABC_FILE" |  | ||||||
|  |  | ||||||
|     WIN_FILE_EXEC="$DRIVE_C/ABC-Soft/ABC-RU/${VERSION}/Abc_win/Exec/Abc.exe" |     WIN_FILE_EXEC="$DRIVE_C/ABC-Soft/ABC-RU/${VERSION}/Abc_win/Exec/Abc.exe" | ||||||
|     create_desktop "$PROG_NAME $VERSION" "$WIN_FILE_EXEC" "$PROG_ICON" |     create_desktop "$PROG_NAME $VERSION" "$WIN_FILE_EXEC" "$PROG_ICON" | ||||||
|   | |||||||
							
								
								
									
										20
									
								
								testinstall/commfort-client
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,20 @@ | |||||||
|  | #!/usr/bin/env bash | ||||||
|  | # info_ru: Локальный корпоративный чат/мессенджер с поддержкой видеоконференций. | ||||||
|  | ######################################################################## | ||||||
|  | export WH_WINE_USE="wine_x_tkg_10-0_amd64" | ||||||
|  | export WINEPREFIX="commfort" | ||||||
|  | export PROG_NAME="CommFort" | ||||||
|  | export PROG_ICON="commfort-client" | ||||||
|  | export WH_WINDOWS_VER="10" | ||||||
|  | export WINEARCH="win32" | ||||||
|  |  | ||||||
|  | AUTOINSTALL_MSI="${WH_TMP_DIR}/commfort_client.msi" | ||||||
|  |  | ||||||
|  | prepair_wine | ||||||
|  | if try_download "https://www.commfort.com/download/commfort_client.msi" "${AUTOINSTALL_MSI}" ; then | ||||||
|  |     wine_run_install "${AUTOINSTALL_MSI}" /q | ||||||
|  |     try_remove_file "$AUTOINSTALL_MSI" | ||||||
|  |  | ||||||
|  |     WIN_FILE_EXEC="$DRIVE_C/Program Files/CommFort/CommFort.exe" | ||||||
|  |     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" | ||||||
|  | fi | ||||||
							
								
								
									
										24
									
								
								testinstall/commfort-server
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,24 @@ | |||||||
|  | #!/usr/bin/env bash | ||||||
|  | # info_ru: (Сервер) Локальный корпоративный чат/мессенджер с поддержкой видеоконференций. | ||||||
|  | ######################################################################## | ||||||
|  | export WH_WINE_USE="wine_x_tkg_10-0_amd64" | ||||||
|  | export WINEPREFIX="commfort" | ||||||
|  | export PROG_NAME="CommFort server" | ||||||
|  | export PROG_ICON="commfort-server" | ||||||
|  | export WH_WINDOWS_VER="10" | ||||||
|  | export WINEARCH="win32" | ||||||
|  |  | ||||||
|  | PACKZIP="${WH_TMP_DIR}/commfort_server.zip" | ||||||
|  | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/commfort_server" | ||||||
|  | AUTOINSTALL_EXE="${WH_TMP_DIR}/commfort_server/commfort_server_599.exe" | ||||||
|  |  | ||||||
|  | prepair_wine | ||||||
|  | if try_download "https://www.commfort.com/download/commfort_server.zip" "${PACKZIP}" ; then | ||||||
|  |     unpack "${PACKZIP}" "$AUTOINSTALL_UNPACK" | ||||||
|  |     wine_run_install "$AUTOINSTALL_EXE" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- | ||||||
|  |     try_remove_file "$PACKZIP" | ||||||
|  |     try_remove_dir "$AUTOINSTALL_UNPACK" | ||||||
|  |  | ||||||
|  |     WIN_FILE_EXEC="$DRIVE_C/Program Files/CommFort_server/CommFort_server.exe" | ||||||
|  |     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" | ||||||
|  | fi | ||||||
							
								
								
									
										25
									
								
								testinstall/rtsim
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,25 @@ | |||||||
|  | #!/usr/bin/env bash | ||||||
|  | # info_ru: Цифровая платформа для обучения и оценки специалистов нефтегазовой отрасли. | ||||||
|  | ######################################################################## | ||||||
|  | export WH_WINE_USE="wine_x_tkg_10-0_i586" | ||||||
|  | export PROG_NAME="РТСИМ.Карьера" | ||||||
|  | export WINEPREFIX="rtsim" | ||||||
|  | export PROG_ICON="rtsim" | ||||||
|  | export WH_WINDOWS_VER="10" | ||||||
|  | export BASE_PFX="none" | ||||||
|  | export WINEARCH="win32" | ||||||
|  | export INSTALL_DLL="dotnet48" | ||||||
|  |  | ||||||
|  | AUTOINSTALL_RAR="${WH_TMP_DIR}/РТСИМ.Карьера.rar" | ||||||
|  | AUTOINSTALL_MSI="${WH_TMP_DIR}/РТСИМ.Карьера/РТСИМ.Карьера.msi" | ||||||
|  |  | ||||||
|  | prepair_wine | ||||||
|  | if try_download "https://rtsim.ru/РТСИМ.Карьера.rar" "$AUTOINSTALL_RAR" ; then | ||||||
|  |     unpack "${AUTOINSTALL_RAR}" "${WH_TMP_DIR}" | ||||||
|  |     wine_run_install "$AUTOINSTALL_MSI" /q | ||||||
|  |     try_remove_file "$AUTOINSTALL_RAR" | ||||||
|  |     try_remove_dir "${WH_TMP_DIR}/РТСИМ.Карьера" | ||||||
|  |  | ||||||
|  |     WIN_FILE_EXEC="$DRIVE_C/РТСИМ/Карьера/RTsimTrenager.exe" | ||||||
|  |     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" | ||||||
|  | fi | ||||||
							
								
								
									
										29
									
								
								testinstall/swman-modus
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,29 @@ | |||||||
|  | #!/usr/bin/env bash | ||||||
|  | # info_ru: Программный комплекс для энергетики. | ||||||
|  | ######################################################################## | ||||||
|  | export WH_WINE_USE="wine-9.0.14-alt1-amd64" | ||||||
|  | export WINEPREFIX="swmanmodus" | ||||||
|  | export BASE_PFX="none" | ||||||
|  | export WH_WINDOWS_VER="10" | ||||||
|  | export WINEARCH="win64" | ||||||
|  | # export INSTALL_DLL="" | ||||||
|  |  | ||||||
|  | prepair_wine | ||||||
|  | # Ссылка для загрузки дистрибутива меняется в зависимости от версии | ||||||
|  | AUTOINSTALL_EXE="${WH_TMP_DIR}/modus710.msi" | ||||||
|  | DRIVE_C_MODUS="$DRIVE_C/Program Files (x86)/Modus 7.10/bin" | ||||||
|  |  | ||||||
|  | if try_download "https://www.swman.ru/download/710/modus710.msi" "${AUTOINSTALL_EXE}" ; then | ||||||
|  |     wine_run_install "${AUTOINSTALL_EXE}" /q | ||||||
|  |     try_remove_file "$AUTOINSTALL_EXE" | ||||||
|  |  | ||||||
|  |     declare -a PROG_NAME=("Аниматор" "Диспетчер" "Графический Редактор" "Имитатор АРМ" "Просмотрщик" "Просмот Результатов" "Тренажер") | ||||||
|  |  | ||||||
|  |     declare -a PROG_ICON=("animator" "ol" "sdedit" "swimitator" "sexplore" "resmanagdb" "simswitch") | ||||||
|  |  | ||||||
|  |     declare -a WIN_FILE_EXEC=("${DRIVE_C_MODUS}/Animator.exe" "${DRIVE_C_MODUS}/OL.exe" "${DRIVE_C_MODUS}/Sdedit32.exe" "${DRIVE_C_MODUS}/SwImitator.exe" "${DRIVE_C_MODUS}/SExplore.exe" "${DRIVE_C_MODUS}/ResManagDB.exe" "${DRIVE_C_MODUS}/SimSwitch.exe") | ||||||
|  |  | ||||||
|  |     for i in "${!PROG_NAME[@]}"; do | ||||||
|  |         create_desktop "${PROG_NAME[i]}" "${WIN_FILE_EXEC[i]}" "${PROG_ICON[i]}" | ||||||
|  |     done | ||||||
|  | fi | ||||||
							
								
								
									
										502
									
								
								winehelper
									
									
									
									
									
								
							
							
						
						| @@ -13,16 +13,19 @@ if [[ "$(realpath "$0")" == "/usr/bin/$SCRIPT_NAME" ]] ; then | |||||||
|     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)" | ||||||
| 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" | ||||||
|  |  | ||||||
|     # минимальная проверка синтаксиса скриптов |     # минимальная проверка синтаксиса скриптов | ||||||
|     for self_check_script in "$RUN_SCRIPT" \ |     for self_check_script in "$RUN_SCRIPT" \ | ||||||
|     "$DATA_PATH/dependencies.sh" "$DATA_PATH/autoinstall"/* \ |     "$DATA_PATH/dependencies.sh" "$DATA_PATH/autoinstall"/* \ | ||||||
|     "$DATA_PATH/manualinstall"/* "$DATA_PATH/database"/* |     "$DATA_PATH/manualinstall"/* "$DATA_PATH/testinstall"/* \ | ||||||
|  |     "$DATA_PATH/database"/* | ||||||
|     do /usr/bin/env bash -n "$self_check_script" || exit 1 |     do /usr/bin/env bash -n "$self_check_script" || exit 1 | ||||||
|     done |     done | ||||||
| fi | fi | ||||||
| @@ -38,6 +41,15 @@ fatal () { | |||||||
|     [[ -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" ;} | ||||||
| @@ -95,12 +107,16 @@ WH_MENU_CONFIG="$HOME/.config/menus/applications-merged/WineHelper.menu" | |||||||
| check_variables WINEESYNC "0" | check_variables WINEESYNC "0" | ||||||
| check_variables WINEFSYNC "0" | check_variables WINEFSYNC "0" | ||||||
|  |  | ||||||
|  | check_variables WINEUSERNAME "xuser" | ||||||
| check_variables WINEARCH "win64" # or "win32" | check_variables WINEARCH "win64" # or "win32" | ||||||
| check_variables WH_WINE_USE "wine_x_tkg_10-0_amd64" # or system | check_variables WH_WINE_USE "wine_x_tkg_10-0_amd64" # or system | ||||||
|  |  | ||||||
| check_variables WH_USE_CPCSP_PROXY "0" | check_variables WH_USE_CPCSP_PROXY "0" | ||||||
| check_variables CPCSP_PROXY_VER "0.6.1-alt1" | check_variables CPCSP_PROXY_VER "0.6.1-alt1" | ||||||
|  |  | ||||||
|  | check_variables WH_USE_EXTRA_FONTS "0" | ||||||
|  | check_variables EXTRA_FONTS_VER "01" | ||||||
|  |  | ||||||
| check_variables STAGING_SHARED_MEMORY "1" | check_variables STAGING_SHARED_MEMORY "1" | ||||||
| check_variables WINE_LARGE_ADDRESS_AWARE "1" | check_variables WINE_LARGE_ADDRESS_AWARE "1" | ||||||
| check_variables WINE_FULLSCREEN_FSR "1" | check_variables WINE_FULLSCREEN_FSR "1" | ||||||
| @@ -130,6 +146,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 не возможен из домашнего каталога." | ||||||
| @@ -137,14 +158,19 @@ fi | |||||||
|  |  | ||||||
| ##### ROOT ##### | ##### ROOT ##### | ||||||
| su_run () { | su_run () { | ||||||
|     print_info "Для продолжения установки введите root пароль..." |     local i="1" | ||||||
|     su - -c "$@" |     while [[ $i -le "3" ]] ; do | ||||||
|  |         print_info "Для продолжения установки введите root пароль (попытка $i из 3)..." | ||||||
|  |         su - -c "$@" && return 0 | ||||||
|  |         ((i++)) | ||||||
|  |     done | ||||||
|  |     return 1 | ||||||
| } | } | ||||||
|  |  | ||||||
| ##### 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 | ||||||
| @@ -238,6 +264,12 @@ create_new_dir () { | |||||||
| } | } | ||||||
|  |  | ||||||
| unpack () { | unpack () { | ||||||
|  |     if [[ $1 == "--skip-xattr" ]] ; then | ||||||
|  |         local skip_xattr="1" | ||||||
|  |         shift | ||||||
|  |     else | ||||||
|  |         unset skip_xattr | ||||||
|  |     fi | ||||||
|     print_info "Запуск распаковки архива $1" |     print_info "Запуск распаковки архива $1" | ||||||
|     local command outarg |     local command outarg | ||||||
|     case $1 in |     case $1 in | ||||||
| @@ -245,15 +277,19 @@ unpack () { | |||||||
|         *.tar.gz) command="tar -xhzf" ; outarg="-C " ;; |         *.tar.gz) command="tar -xhzf" ; outarg="-C " ;; | ||||||
|         *.tar.zst) command="tar -I zstd -xhf" ; outarg="-C " ;; |         *.tar.zst) command="tar -I zstd -xhf" ; outarg="-C " ;; | ||||||
|         *.tar) command="tar -xhf" ; outarg="-C " ;; |         *.tar) command="tar -xhf" ; outarg="-C " ;; | ||||||
|         *.zip|*.exe|*.rar) command="7z x -y" ; outarg="-o" ;; |         *.zip|*.exe|*.rar) command="7z x -y -bso0" ; outarg="-o" ;; | ||||||
|     esac |     esac | ||||||
|     create_new_dir "$2" |     create_new_dir "$2" | ||||||
|     if $command "$1" ${outarg}"$2" ; then |     if [[ $skip_xattr == "1" ]] \ | ||||||
|         print_ok "Файл $1 распакован." |     && $command "$1" ${outarg}"$2" 2>&1 | sed "/xattr/d" | ||||||
|         return 0 |     then print_ok "Файл $1 распакован." | ||||||
|  |     elif $command "$1" ${outarg}"$2" | ||||||
|  |     then print_ok "Файл $1 распакован." | ||||||
|     else |     else | ||||||
|  |         try_remove_file "$1" | ||||||
|         fatal "Распаковать файл $1 не удалось!" |         fatal "Распаковать файл $1 не удалось!" | ||||||
|     fi |     fi | ||||||
|  |     return 0 | ||||||
| } | } | ||||||
|  |  | ||||||
| try_get_page () { | try_get_page () { | ||||||
| @@ -278,36 +314,86 @@ read_page () { | |||||||
|         try_remove_file "$OUT_PAGE_TMP" |         try_remove_file "$OUT_PAGE_TMP" | ||||||
|         unset OUT_PAGE_TMP |         unset OUT_PAGE_TMP | ||||||
|     else |     else | ||||||
|         echo "Исользуй try_get_page перед read_page" |         echo "Используй try_get_page перед read_page" | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | check_file_sum () { | ||||||
|  |     local sha256sum_ext sha256sum_int check_file_path check_file_name | ||||||
|  |     check_file_path="$1" | ||||||
|  |     check_file_name="$(basename "$check_file_path")" | ||||||
|  |  | ||||||
|  |     sha256sum_ext=$(sha256sum "$check_file_path" | awk '{print $1}') | ||||||
|  |     sha256sum_int="$(grep "$check_file_name" "$DATA_PATH/sha256sum.list" | awk '{print $1}')" | ||||||
|  |  | ||||||
|  |     if [[ "$sha256sum_ext" == "$sha256sum_int" ]] ; then | ||||||
|  |         print_ok "Хэш-сумма файла $check_file_name успешно проверена." | ||||||
|  |         return 0 | ||||||
|  |     else | ||||||
|  |         try_remove_file "$check_file_path" | ||||||
|  |         fatal "Хэш-сумма файла $check_file_name не совпадает!" | ||||||
|  |     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 () { | ||||||
|     local DOWNLOAD_FILE_URL="${1// /%20}" |     print_license_agreement | ||||||
|     local OUTPUT_FILE="$2" |     local download_file_url output_file output_file_name | ||||||
|     local OUTPUT_FILE_NAME="$(basename "$OUTPUT_FILE")" |     download_file_url="${1// /%20}" | ||||||
|  |     output_file="$2" | ||||||
|  |     output_file_name="$(basename "$output_file")" | ||||||
|  |  | ||||||
|     print_info "Скачивание файла $OUTPUT_FILE_NAME..." |     if [[ -f "$output_file" ]] ; then | ||||||
|  |         print_info "Файл найден: $output_file" | ||||||
|  |         [[ $3 == "check256sum" ]] && check_file_sum "$output_file" | ||||||
|  |         return 0 | ||||||
|  |     else | ||||||
|  |         print_info "Скачивание файла $output_file_name..." | ||||||
|         if curl -f --progress-bar -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" \ |         if curl -f --progress-bar -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" \ | ||||||
|        -L "$DOWNLOAD_FILE_URL" -o "$OUTPUT_FILE" |         -L "$download_file_url" -o "$output_file" | ||||||
|         then |         then | ||||||
|         print_ok "Скачивание файла $OUTPUT_FILE_NAME прошло успешно." |             print_ok "Скачивание файла $output_file_name прошло успешно." | ||||||
|         if [[ "$3" == check256sum ]] ; then |             [[ $3 == "check256sum" ]] && check_file_sum "$output_file" | ||||||
|             SHA256SUM_EXT=$(sha256sum "$OUTPUT_FILE" | awk '{print $1}') |  | ||||||
|             SHA256SUM_INT="$(grep "$OUTPUT_FILE_NAME" "$DATA_PATH/sha256sum.list" | awk '{print $1}')" |  | ||||||
|             if [[ "$SHA256SUM_EXT" == "$SHA256SUM_INT" ]] ; then |  | ||||||
|                 print_ok "Хэш-сумма файла $OUTPUT_FILE_NAME успешно проверена." |  | ||||||
|             return 0 |             return 0 | ||||||
|         else |         else | ||||||
|                 fatal "Хэш-сумма файла $OUTPUT_FILE_NAME не совподает!" |             try_remove_file "$output_file" | ||||||
|  |             fatal "Скачивание файла: $output_file_name завершилось с ошибкой!" | ||||||
|             return 1 |             return 1 | ||||||
|         fi |         fi | ||||||
|     fi |     fi | ||||||
|         return 0 |  | ||||||
|     else |  | ||||||
|         fatal "Скачивание файла: $OUTPUT_FILE_NAME завершилось с ошибкой!" |  | ||||||
|         return 1 |  | ||||||
|     fi |  | ||||||
| } | } | ||||||
|  |  | ||||||
| try_copy_other_dll_to_pfx_64 () { | try_copy_other_dll_to_pfx_64 () { | ||||||
| @@ -329,9 +415,9 @@ try_copy_other_dll_to_pfx_32() { | |||||||
|  |  | ||||||
| try_copy_wine_dll_to_pfx_64 () { | try_copy_wine_dll_to_pfx_64 () { | ||||||
|     if [[ "$WINEARCH" == "win64" ]] ; then |     if [[ "$WINEARCH" == "win64" ]] ; then | ||||||
|         if [[ -d "${WINEDIR}/lib64/wine/x86_64-windows" ]] |         if [[ -d "$WINEDIR/lib64/wine/x86_64-windows" ]] | ||||||
|         then WINE_BUILD_DLL_64="${WINEDIR}/lib64/wine/x86_64-windows" |         then WINE_BUILD_DLL_64="$WINEDIR/lib64/wine/x86_64-windows" | ||||||
|         else WINE_BUILD_DLL_64="${WINEDIR}/lib64/wine" |         else WINE_BUILD_DLL_64="$WINEDIR/lib64/wine" | ||||||
|         fi |         fi | ||||||
|         cmp -s "$WINE_BUILD_DLL_64/$1" "${WINEPREFIX}/drive_c/windows/system32/$(basename $1)" && return 0 |         cmp -s "$WINE_BUILD_DLL_64/$1" "${WINEPREFIX}/drive_c/windows/system32/$(basename $1)" && return 0 | ||||||
|         try_copy_file "$WINE_BUILD_DLL_64/$1" "${WINEPREFIX}/drive_c/windows/system32/" && return 0 || return 1 |         try_copy_file "$WINE_BUILD_DLL_64/$1" "${WINEPREFIX}/drive_c/windows/system32/" && return 0 || return 1 | ||||||
| @@ -339,9 +425,9 @@ try_copy_wine_dll_to_pfx_64 () { | |||||||
| } | } | ||||||
|  |  | ||||||
| try_copy_wine_dll_to_pfx_32() { | try_copy_wine_dll_to_pfx_32() { | ||||||
|     if [[ -d "${WINEDIR}/lib/wine/i386-windows" ]] |     if [[ -d "$WINEDIR/lib/wine/i386-windows" ]] | ||||||
|     then WINE_BUILD_DLL_32="${WINEDIR}/lib/wine/i386-windows" |     then WINE_BUILD_DLL_32="$WINEDIR/lib/wine/i386-windows" | ||||||
|     else WINE_BUILD_DLL_32="${WINEDIR}/lib/wine" |     else WINE_BUILD_DLL_32="$WINEDIR/lib/wine" | ||||||
|     fi |     fi | ||||||
|     if [[ "$WINEARCH" == "win64" ]] ; then |     if [[ "$WINEARCH" == "win64" ]] ; then | ||||||
|         cmp -s "$WINE_BUILD_DLL_32/$1" "${WINEPREFIX}/drive_c/windows/syswow64/$1" && return 0 |         cmp -s "$WINE_BUILD_DLL_32/$1" "${WINEPREFIX}/drive_c/windows/syswow64/$1" && return 0 | ||||||
| @@ -398,10 +484,13 @@ var_ld_library_path_update () { | |||||||
| } | } | ||||||
|  |  | ||||||
| create_desktop () { | create_desktop () { | ||||||
|     local name_desktop="$1" |     local name_desktop exe_file desktop_filename icon_file desktop_path | ||||||
|     local exe_file="$2" |     name_desktop="$1" | ||||||
|     local desktop_filename="$(basename "$exe_file" .exe | sed "s| |_|")" |     exe_file="$2" | ||||||
|     local icon_file |     if [[ -n $4 ]] && [[ $4 != "nocopy" ]]; | ||||||
|  |     then desktop_filename="$4" | ||||||
|  |     else desktop_filename="$(basename "$exe_file" .exe | sed "s| |_|")" | ||||||
|  |     fi | ||||||
|     if [[ "$RESTORE_FROM_BACKUP" == "1" ]] && [[ -f "$3" ]] |     if [[ "$RESTORE_FROM_BACKUP" == "1" ]] && [[ -f "$3" ]] | ||||||
|     then icon_file="$3" |     then icon_file="$3" | ||||||
|     elif [[ -f "$WH_IMAGE_PATH/$3.png" ]] |     elif [[ -f "$WH_IMAGE_PATH/$3.png" ]] | ||||||
| @@ -458,7 +547,6 @@ create_desktop () { | |||||||
|         echo "$name_desktop=${exe_file//$WINEPREFIX/}=$(basename "$icon_file")" >> "$WINEPREFIX/desktop.list" |         echo "$name_desktop=${exe_file//$WINEPREFIX/}=$(basename "$icon_file")" >> "$WINEPREFIX/desktop.list" | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|  |  | ||||||
|     # создаем файл категории для меню |     # создаем файл категории для меню | ||||||
|     create_new_dir "$HOME/.local/share/desktop-directories" |     create_new_dir "$HOME/.local/share/desktop-directories" | ||||||
|     if [[ ! -f "$WH_MENU_CATEGORY" ]] ; then |     if [[ ! -f "$WH_MENU_CATEGORY" ]] ; then | ||||||
| @@ -493,14 +581,8 @@ EOF | |||||||
|     update-desktop-database "$HOME/.local/share/applications" |     update-desktop-database "$HOME/.local/share/applications" | ||||||
|  |  | ||||||
|     if [[ $4 != "nocopy" ]] ; then |     if [[ $4 != "nocopy" ]] ; then | ||||||
|         if [[ -n $4 ]] ; then |         desktop_path="$(xdg-user-dir DESKTOP)" | ||||||
|             local desktop_path="$(xdg-user-dir DESKTOP)/$4" |  | ||||||
|             create_new_dir "$desktop_path" |  | ||||||
|             print_info "В меню создан $desktop_filename.desktop и скопирован на рабочий стол в каталог $4" |  | ||||||
|         else |  | ||||||
|             local desktop_path="$(xdg-user-dir DESKTOP)" |  | ||||||
|         print_info "В меню и на рабочем столе создан $desktop_filename.desktop" |         print_info "В меню и на рабочем столе создан $desktop_filename.desktop" | ||||||
|         fi |  | ||||||
|         cp -f "$USER_WORK_PATH/$desktop_filename.desktop" "$desktop_path" |         cp -f "$USER_WORK_PATH/$desktop_filename.desktop" "$desktop_path" | ||||||
|     else |     else | ||||||
|         print_info "В меню создан $desktop_filename.desktop" |         print_info "В меню создан $desktop_filename.desktop" | ||||||
| @@ -554,7 +636,7 @@ check_installed_programs () { | |||||||
|                     print_info "Список установленных программ:" |                     print_info "Список установленных программ:" | ||||||
|                     check_installed_programs |                     check_installed_programs | ||||||
|                     exit 1 |                     exit 1 | ||||||
|                 elif [[ "$EXE_PATH" =~ ${2}$ ]] ; then |                 elif [[ "$desktop_file" =~ ${2}.desktop ]] ; then | ||||||
|                     export EXE_PATH |                     export EXE_PATH | ||||||
|                     return 0 |                     return 0 | ||||||
|                 fi |                 fi | ||||||
| @@ -562,7 +644,8 @@ check_installed_programs () { | |||||||
|             *) |             *) | ||||||
|                 if [[ -f "$EXE_PATH.whdb" ]] ; then |                 if [[ -f "$EXE_PATH.whdb" ]] ; then | ||||||
|                     WH_INFO_RU="$(grep "info_ru:" "$EXE_PATH.whdb" | awk -F"info_ru: " '{print $2}')" |                     WH_INFO_RU="$(grep "info_ru:" "$EXE_PATH.whdb" | awk -F"info_ru: " '{print $2}')" | ||||||
|                     printf "\E[36m%s $SCRIPT_NAME run $(basename "$EXE_PATH") - $(basename "$desktop_file") %s\e[0m\n" |                     WH_PROG_NAME="$(grep "PROG_NAME" "$EXE_PATH.whdb" | awk -F"=" '{print $2}')" | ||||||
|  |                     printf "\E[36m%s $SCRIPT_NAME run $(basename "$desktop_file" .desktop) %s\e[0m- $WH_PROG_NAME\n" | ||||||
|                     echo -e "$WH_INFO_RU\n" |                     echo -e "$WH_INFO_RU\n" | ||||||
|                 fi |                 fi | ||||||
|             ;; |             ;; | ||||||
| @@ -667,77 +750,66 @@ init_wine_ver () { | |||||||
|         export WINEDIR="$WH_DIST_DIR/$WH_WINE_USE" |         export WINEDIR="$WH_DIST_DIR/$WH_WINE_USE" | ||||||
|  |  | ||||||
|         if [[ ! -d "$WINEDIR" ]] ; then |         if [[ ! -d "$WINEDIR" ]] ; then | ||||||
|             WINE_URL="$CLOUD_URL/$WH_WINE_USE.tar.xz" |             local wine_package="$WH_TMP_DIR/$WH_WINE_USE.tar.xz" | ||||||
|             local WINE_PACKAGE="$WH_TMP_DIR/${WH_WINE_USE}.tar.xz" |             try_download "$CLOUD_URL/$WH_WINE_USE.tar.xz" "$wine_package" check256sum | ||||||
|             if try_download "$WINE_URL" "$WINE_PACKAGE" check256sum ; then |             unpack "$wine_package" "$WH_DIST_DIR/" | ||||||
|                 if unpack "$WINE_PACKAGE" "$WH_DIST_DIR/" ; then |             try_remove_file "$wine_package" | ||||||
|                     echo "$WH_WINE_USE" > "$WH_DIST_DIR/$WH_WINE_USE/version" |  | ||||||
|                     try_remove_file "$WINE_PACKAGE" |  | ||||||
|                 fi |  | ||||||
|             fi |  | ||||||
|         fi |         fi | ||||||
|  |  | ||||||
|         export WINE="${WINEDIR}/bin/wine" |         [[ ! -f "$WINEDIR/version" ]] && echo "$WH_WINE_USE" > "$WINEDIR/version" | ||||||
|         export WINELOADER="${WINEDIR}/bin/wine" |  | ||||||
|         export WINESERVER="${WINEDIR}/bin/wineserver" |         export WINE="$WINEDIR/bin/wine" | ||||||
|  |         export WINELOADER="$WINEDIR/bin/wine" | ||||||
|  |         export WINESERVER="$WINEDIR/bin/wineserver" | ||||||
|  |  | ||||||
|         if [[ -n "${PATH}" ]] |         if [[ -n "${PATH}" ]] | ||||||
|         then export PATH="${WINEDIR}/bin:${PATH}" |         then export PATH="$WINEDIR/bin:${PATH}" | ||||||
|         else export PATH="${WINEDIR}/bin" |         else export PATH="$WINEDIR/bin" | ||||||
|         fi |         fi | ||||||
|  |  | ||||||
|         if [[ -n "${LD_LIBRARY_PATH}" ]] |         var_ld_library_path_update "$WINEDIR/lib" | ||||||
|         then export LD_LIBRARY_PATH="${WINEDIR}/lib:${LD_LIBRARY_PATH}" |         export WINEDLLPATH="$WINEDIR/lib/wine" | ||||||
|         else export LD_LIBRARY_PATH="${WINEDIR}/lib" |  | ||||||
|  |         if [[ ! -d "$WINEDIR/lib64/wine" ]] \ | ||||||
|  |         && [[ -d "$WINEDIR/lib/wine/x86_64-unix" ]] | ||||||
|  |         then | ||||||
|  |             create_new_dir "$WINEDIR/lib64/" | ||||||
|  |             try_force_link_dir "$WINEDIR/lib/wine/" "$WINEDIR/lib64/" | ||||||
|         fi |         fi | ||||||
|  |  | ||||||
|         export WINEDLLPATH="${WINEDIR}/lib/wine" |         if [[ -d "$WINEDIR/lib64" ]] \ | ||||||
|  |         && [[ ! -L "$WINEDIR/lib64/wine" ]] | ||||||
|         if [[ -d "${WINEDIR}/lib/gstreamer-1.0" ]] ; then |         then | ||||||
|             export GST_PLUGIN_SYSTEM_PATH_1_0="${WINEDIR}/lib/gstreamer-1.0" |             var_ld_library_path_update "$WINEDIR/lib64" | ||||||
|  |             export WINEDLLPATH+=":$WINEDIR/lib64/wine" | ||||||
|         fi |         fi | ||||||
|  |  | ||||||
|         [[ ! -f "${WINEDIR}/version" ]] && echo "${WH_WINE_USE}" > "${WINEDIR}/version" |         if [[ -d "$WINEDIR/lib/gstreamer-1.0" ]] ; then | ||||||
|  |             export GST_PLUGIN_SYSTEM_PATH_1_0="$WINEDIR/lib/gstreamer-1.0" | ||||||
|         if [[ ! -d "${WINEDIR}/lib64/wine" ]] && [[ -d "${WINEDIR}/lib/wine/x86_64-unix" ]] ; then |             if [[ -d "$WINEDIR/lib64/gstreamer-1.0" ]] ; then | ||||||
|             create_new_dir "${WINEDIR}/lib64/" |                 export GST_PLUGIN_SYSTEM_PATH_1_0+=":$WINEDIR/lib64/gstreamer-1.0" | ||||||
|             try_force_link_dir "${WINEDIR}/lib/wine/" "${WINEDIR}/lib64/" |  | ||||||
|         fi |  | ||||||
|  |  | ||||||
|         if [[ -d "${WINEDIR}/lib64" ]] ; then |  | ||||||
|             export LD_LIBRARY_PATH+=":${WINEDIR}/lib64" |  | ||||||
|             export WINEDLLPATH+=":${WINEDIR}/lib64/wine" |  | ||||||
|             if [[ -d "${WINEDIR}/lib64/gstreamer-1.0" ]] ; then |  | ||||||
|                 export GST_PLUGIN_SYSTEM_PATH_1_0+=":${WINEDIR}/lib64/gstreamer-1.0" |  | ||||||
|             fi |             fi | ||||||
|         fi |         fi | ||||||
|  |  | ||||||
|         if [[ $WH_USE_CPCSP_PROXY == "1" ]] \ |         if [[ $WH_USE_CPCSP_PROXY == "1" ]] \ | ||||||
|         && ! grep -q "$CPCSP_PROXY_VER" "${WINEDIR}/cpcsp_proxy.ver" |         && ! grep -q "$CPCSP_PROXY_VER" "$WINEDIR/cpcsp_proxy.ver" | ||||||
|         then |         then | ||||||
|             CPCSP_PROXY_NAME="wine-cpcsp_proxy-$CPCSP_PROXY_VER" |             CPCSP_PROXY_NAME="wine-cpcsp_proxy-$CPCSP_PROXY_VER" | ||||||
|             CPCSP_PROXY_URL="$CLOUD_URL/$CPCSP_PROXY_NAME.tar.xz" |             CPCSP_PROXY_URL="$CLOUD_URL/$CPCSP_PROXY_NAME.tar.xz" | ||||||
|  |  | ||||||
|             if [[ ! -f "$WH_TMP_DIR/$CPCSP_PROXY_NAME" ]] ; then |             try_download "$CPCSP_PROXY_URL" "$WH_TMP_DIR/$CPCSP_PROXY_NAME.tar.xz" check256sum | ||||||
|                 print_info "Загрузка $CPCSP_PROXY_NAME.tar.xz" |  | ||||||
|                 if try_download "$CPCSP_PROXY_URL" "$WH_TMP_DIR/$CPCSP_PROXY_NAME.tar.xz" check256sum |  | ||||||
|                 then unpack "$WH_TMP_DIR/$CPCSP_PROXY_NAME.tar.xz" "$WH_TMP_DIR" |  | ||||||
|                 else try_remove_file "$WH_TMP_DIR/$CPCSP_PROXY_NAME.tar.xz" |  | ||||||
|                 fi |  | ||||||
|             else |  | ||||||
|             unpack "$WH_TMP_DIR/$CPCSP_PROXY_NAME.tar.xz" "$WH_TMP_DIR" |             unpack "$WH_TMP_DIR/$CPCSP_PROXY_NAME.tar.xz" "$WH_TMP_DIR" | ||||||
|             fi |  | ||||||
|  |  | ||||||
|             cp -fr "$WH_TMP_DIR/$CPCSP_PROXY_NAME/"i386-* "${WINEDIR}/lib/wine/" |             cp -fr "$WH_TMP_DIR/$CPCSP_PROXY_NAME/"i386-* "$WINEDIR/lib/wine/" | ||||||
|             if [[ -d "${WINEDIR}/lib64" ]] ; then |             if [[ -d "$WINEDIR/lib64" ]] ; then | ||||||
|                 cp -fr "$WH_TMP_DIR/$CPCSP_PROXY_NAME/"x86_64-* "${WINEDIR}/lib64/wine/" |                 cp -fr "$WH_TMP_DIR/$CPCSP_PROXY_NAME/"x86_64-* "$WINEDIR/lib64/wine/" | ||||||
|             fi |             fi | ||||||
|             try_remove_dir "$WH_TMP_DIR/$CPCSP_PROXY_NAME" |             try_remove_dir "$WH_TMP_DIR/$CPCSP_PROXY_NAME" | ||||||
|             echo "$CPCSP_PROXY_VER" > "${WINEDIR}/cpcsp_proxy.ver" |             echo "$CPCSP_PROXY_VER" > "$WINEDIR/cpcsp_proxy.ver" | ||||||
|         fi |         fi | ||||||
|     else |     else | ||||||
|         # use system WINE |         # use system WINE | ||||||
|         if ! command -v "wine" &>/dev/null ; then |         if [[ ! -f "/usr/bin/wine" ]] ; then | ||||||
|             fatal "system WINE - not found." |             fatal "system WINE - not found." | ||||||
|         fi |         fi | ||||||
|         export WINEDIR="/usr" |         export WINEDIR="/usr" | ||||||
| @@ -861,46 +933,46 @@ wait_wineserver () { | |||||||
| } | } | ||||||
|  |  | ||||||
| get_base_pfx () { | get_base_pfx () { | ||||||
|     local FILE_NAME_PFX="$1" |     local pfx_file_name pfx_file_url pfx_tmp_path | ||||||
|     local PFX_URL="$CLOUD_URL/${FILE_NAME_PFX}.tar.xz" |     pfx_file_name="${1}.tar.xz" | ||||||
|     local PFX_TMP="$WH_TMP_DIR/pfx" |     pfx_file_url="$CLOUD_URL/$pfx_file_name" | ||||||
|     create_new_dir "$PFX_TMP" |     pfx_tmp_path="$WH_TMP_DIR/pfx" | ||||||
|  |  | ||||||
|     if [[ ! -f "$PFX_TMP/$FILE_NAME_PFX.tar.xz" ]] ; then |     create_new_dir "$pfx_tmp_path" | ||||||
|         print_info "Загрузка базового префикса: ${FILE_NAME_PFX}" |     print_info "Загрузка архива базового префикса: $pfx_file_name" | ||||||
|         if try_download "$PFX_URL" "$PFX_TMP/$FILE_NAME_PFX.tar.xz" check256sum |     try_download "$pfx_file_url" "$pfx_tmp_path/$pfx_file_name" check256sum | ||||||
|         then unpack "$PFX_TMP/$FILE_NAME_PFX.tar.xz" "$WINEPREFIX/" |     unpack --skip-xattr "$pfx_tmp_path/$pfx_file_name" "$WINEPREFIX/" | ||||||
|         else try_remove_file "$PFX_TMP/$FILE_NAME_PFX.tar.xz" |  | ||||||
|         fi |  | ||||||
|     else |  | ||||||
|         if ! unpack "$PFX_TMP/$FILE_NAME_PFX.tar.xz" "$WINEPREFIX/" ; then |  | ||||||
|             try_remove_file "${PFX_TMP}/${FILE_NAME_PFX}.tar.xz" |  | ||||||
|             get_base_pfx "$FILE_NAME_PFX" |  | ||||||
|         fi |  | ||||||
|     fi |  | ||||||
| } | } | ||||||
|  |  | ||||||
| check_prefix_var () { | check_prefix_var () { | ||||||
|     if [[ -z "$WINEPREFIX" ]] ; then |     if [[ -z "$WINEPREFIX" ]] ; then | ||||||
|         print_warning "Префикс не выбран." |  | ||||||
|  |  | ||||||
|         local prefixes=() |         local prefixes=() | ||||||
|         local count=1 |         local count=1 | ||||||
|         print_info "Доступные префиксы WineHelper:" |  | ||||||
|         for prefix in "$WH_PREFIXES_DIR"/* ; do |         for prefix in "$WH_PREFIXES_DIR"/* ; do | ||||||
|             if [[ -d "$prefix" ]]; then |             if [[ -d "$prefix" ]]; then | ||||||
|                 prefixes+=("$prefix") |                 prefixes+=("$prefix") | ||||||
|                 echo "$count. $(basename "$prefix")" |  | ||||||
|                 ((count++)) |                 ((count++)) | ||||||
|             fi |             fi | ||||||
|         done |         done | ||||||
|  |  | ||||||
|         [[ ${#prefixes[@]} -eq 0 ]] && fatal "Не найдено ни одного префикса!" |         if [[ ${#prefixes[@]} -eq 0 ]] | ||||||
|  |         then fatal "Не найдено ни одного префикса!" | ||||||
|  |         else print_info "Доступные префиксы WineHelper:" | ||||||
|  |         fi | ||||||
|  |  | ||||||
|  |         echo "0 - Отмена" | ||||||
|  |  | ||||||
|  |         for ((i=0; i<${#prefixes[@]}; i++)); do | ||||||
|  |             echo "$((i+1)) - $(basename "${prefixes[$i]}")" | ||||||
|  |         done | ||||||
|  |  | ||||||
|         local max_choice=${#prefixes[@]} |         local max_choice=${#prefixes[@]} | ||||||
|         read -p "Выберите префикс (1-$max_choice): " choice |         read -p "Выберите префикс (0-$max_choice): " choice | ||||||
|  |  | ||||||
|         if [[ "$choice" -ge 1 && "$choice" -le "$max_choice" ]] ; then |         if [[ "$choice" == "0" ]]; then | ||||||
|  |             print_info "Выбор префикса отменен." | ||||||
|  |             exit 0 | ||||||
|  |         elif [[ "$choice" -ge 1 && "$choice" -le "$max_choice" ]] ; then | ||||||
|             export WINEPREFIX="${prefixes[$choice-1]}" |             export WINEPREFIX="${prefixes[$choice-1]}" | ||||||
|         else |         else | ||||||
|             fatal "Неверный выбор." |             fatal "Неверный выбор." | ||||||
| @@ -926,6 +998,7 @@ init_wineprefix () { | |||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     export DRIVE_C="$WINEPREFIX/drive_c" |     export DRIVE_C="$WINEPREFIX/drive_c" | ||||||
|  |     export XUSER_PATH="$DRIVE_C/users/xuser" | ||||||
|  |  | ||||||
|     if [[ ! -f "$WINEPREFIX/.firstboot" ]] ; then |     if [[ ! -f "$WINEPREFIX/.firstboot" ]] ; then | ||||||
|         create_new_dir "$WINEPREFIX" |         create_new_dir "$WINEPREFIX" | ||||||
| @@ -955,10 +1028,10 @@ init_wineprefix () { | |||||||
|         print_info "Windows версия изменена на win${WH_WINDOWS_VER}" |         print_info "Windows версия изменена на win${WH_WINDOWS_VER}" | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     if [[ -d "$DRIVE_C/users/xuser" ]] && [[ ! -d "$DRIVE_C/users/$USER" ]] |     if [[ -d "$XUSER_PATH" ]] && [[ ! -d "$DRIVE_C/users/$USER" ]] | ||||||
|     then try_force_link_dir "$DRIVE_C/users/xuser" "$DRIVE_C/users/$USER" |     then try_force_link_dir "$XUSER_PATH" "$DRIVE_C/users/$USER" | ||||||
|     elif [[ ! -d "$DRIVE_C/users/xuser" ]] && [[ -d "$DRIVE_C/users/$USER" ]] |     elif [[ ! -d "$XUSER_PATH" ]] && [[ -d "$DRIVE_C/users/$USER" ]] | ||||||
|     then try_force_link_dir "$DRIVE_C/users/$USER" "$DRIVE_C/users/xuser" |     then try_force_link_dir "$DRIVE_C/users/$USER" "$XUSER_PATH" | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     if [[ ! -f "$WINEPREFIX/.update-timestamp" ]] ; then |     if [[ ! -f "$WINEPREFIX/.update-timestamp" ]] ; then | ||||||
| @@ -967,18 +1040,23 @@ init_wineprefix () { | |||||||
|         wait_wineserver |         wait_wineserver | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|  |     if [[ -L "$XUSER_PATH/Desktop" ]] | ||||||
|  |     then rm -f "$XUSER_PATH/Desktop" | ||||||
|  |     fi | ||||||
|  |     create_new_dir "$XUSER_PATH/Desktop" | ||||||
|  |  | ||||||
|     if [[ ! -L "$WINEPREFIX/dosdevices/h:" ]] |     if [[ ! -L "$WINEPREFIX/dosdevices/h:" ]] | ||||||
|     then try_force_link_dir "$HOME" "$WINEPREFIX/dosdevices/h:" |     then try_force_link_dir "$HOME" "$WINEPREFIX/dosdevices/h:" | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     try_remove_file "$DRIVE_C/windows/system32/winemenubuilder.exe" |     if [[ $WH_USE_MESA_GL_OVERRIDE == "1" ]] \ | ||||||
|  |     && ! lspci | grep -i nvidia > /dev/null ; then | ||||||
|     # хак для XRDP сессии |  | ||||||
|     if [[ $DISPLAY == *:10.0 ]] ; then |  | ||||||
|         if ! lspci | grep -i nvidia > /dev/null ; then |  | ||||||
|         export MESA_GL_VERSION_OVERRIDE="3.3" |         export MESA_GL_VERSION_OVERRIDE="3.3" | ||||||
|         export MESA_GLSL_VERSION_OVERRIDE="330" |         export MESA_GLSL_VERSION_OVERRIDE="330" | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|  |     # хак для XRDP сессии | ||||||
|  |     if [[ $DISPLAY == *:10.0 ]] ; then | ||||||
|         print_warning "Обнаружена сессия XRDP, настраиваем реестр:" |         print_warning "Обнаружена сессия XRDP, настраиваем реестр:" | ||||||
|         get_and_set_reg_file --add 'Software\Wine\X11 Driver' 'UseXRandR' 'REG_SZ' "N" "user" |         get_and_set_reg_file --add 'Software\Wine\X11 Driver' 'UseXRandR' 'REG_SZ' "N" "user" | ||||||
|         get_and_set_reg_file --add 'Software\Wine\X11 Driver' 'UseXVidMode' 'REG_SZ' "N" "user" |         get_and_set_reg_file --add 'Software\Wine\X11 Driver' 'UseXVidMode' 'REG_SZ' "N" "user" | ||||||
| @@ -1061,10 +1139,26 @@ init_wineprefix () { | |||||||
|         fi |         fi | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|  |     # Устанавливаем дополнительные шрифты (включая штрих-код) | ||||||
|  |     local fonts_dir="$DRIVE_C/windows/Fonts" | ||||||
|  |     local x_fonts_name="extra_fonts_v${EXTRA_FONTS_VER}" | ||||||
|  |  | ||||||
|  |     if [[ $WH_USE_EXTRA_FONTS == "1" ]] \ | ||||||
|  |     && [[ ! -e "$fonts_dir/${x_fonts_name}.installed" ]] | ||||||
|  |     then | ||||||
|  |         local x_fonts_url="$CLOUD_URL/${x_fonts_name}.tar.xz" | ||||||
|  |         local x_fonts_tar="$WH_TMP_DIR/${x_fonts_name}.tar.xz" | ||||||
|  |  | ||||||
|  |         print_info "Устанавливаем дополнительные шрифты..." | ||||||
|  |         try_download "$x_fonts_url" "$x_fonts_tar" check256sum | ||||||
|  |         unpack "$x_fonts_tar" "$fonts_dir/" | ||||||
|  |         touch "$fonts_dir/${x_fonts_name}.installed" | ||||||
|  |     fi | ||||||
|  |  | ||||||
|     echo "# переменные последнего использования префикса:" > "$WINEPREFIX/last.conf" |     echo "# переменные последнего использования префикса:" > "$WINEPREFIX/last.conf" | ||||||
|     for var in WH_WINE_USE BASE_PFX WINEARCH WH_WINDOWS_VER WINEESYNC WINEFSYNC \ |     for var in WH_WINE_USE BASE_PFX WINEARCH WH_WINDOWS_VER WINEESYNC WINEFSYNC \ | ||||||
|     STAGING_SHARED_MEMORY WINE_LARGE_ADDRESS_AWARE WH_USE_SHADER_CACHE WH_USE_WINE_DXGI \ |     STAGING_SHARED_MEMORY WINE_LARGE_ADDRESS_AWARE WH_USE_SHADER_CACHE WH_USE_WINE_DXGI \ | ||||||
|     WINE_CPU_TOPOLOGY USE_RENDERER DXVK_VER VKD3D_VER |     WINE_CPU_TOPOLOGY USE_RENDERER DXVK_VER VKD3D_VER WH_XDG_OPEN WH_USE_MESA_GL_OVERRIDE | ||||||
|     do |     do | ||||||
|         echo "export $var=\"${!var}\"" >> "$WINEPREFIX/last.conf" |         echo "export $var=\"${!var}\"" >> "$WINEPREFIX/last.conf" | ||||||
|     done |     done | ||||||
| @@ -1151,25 +1245,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" ]] | ||||||
| @@ -1190,6 +1265,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" | ||||||
|  |  | ||||||
| @@ -1246,21 +1326,35 @@ run_autoinstall () { | |||||||
|     export INSTALL_SCRIPT INSTALL_MODE |     export INSTALL_SCRIPT INSTALL_MODE | ||||||
|  |  | ||||||
|     if [[ $INSTALL_SCRIPT_NAME == "list" ]] || [[ -z "$INSTALL_SCRIPT_NAME" ]] ; then |     if [[ $INSTALL_SCRIPT_NAME == "list" ]] || [[ -z "$INSTALL_SCRIPT_NAME" ]] ; then | ||||||
|         print_info "Список программ с возможностью автоматической установки:" |  | ||||||
|         for list in $(ls "$WH_AUTOINSTALL_DIR") ; do |         list_install_scripts() { | ||||||
|             AI_INFO="$(grep "info_ru:" "$WH_AUTOINSTALL_DIR/$list" | awk -F"info_ru: " '{print $2}')" |             local dir="$1" | ||||||
|             AI_PROGNAME="$(grep "PROG_NAME=" "$WH_AUTOINSTALL_DIR/$list" | awk -F"PROG_NAME=" '{print $2}')" |             local title="$2" | ||||||
|             echo -e "\n$list - $AI_PROGNAME" |             [[ ! -d "$dir" ]] || [[ -z "$(ls -A "$dir" 2>/dev/null)" ]] && return | ||||||
|             echo "$AI_INFO" |  | ||||||
|         done |             print_info "$title" | ||||||
|  |  | ||||||
|  |             awk ' | ||||||
|  |                 FNR==1 { | ||||||
|  |                     if (progname) { | ||||||
|  |                         printf "\n%s - %s\n%s\n", filename, progname, info | ||||||
|  |                     } | ||||||
|  |                     progname=""; info=""; filename=FILENAME | ||||||
|  |                     sub(".*/", "", filename) | ||||||
|  |                 } | ||||||
|  |                 /info_ru:/ { sub(/.*info_ru: /, ""); info=$0 } | ||||||
|  |                 /PROG_NAME=/ { sub(/.*PROG_NAME=/, ""); progname=$0 } | ||||||
|  |                 END { | ||||||
|  |                     if (progname) { | ||||||
|  |                          printf "\n%s - %s\n%s\n", filename, progname, info | ||||||
|  |                     } | ||||||
|  |                 } | ||||||
|  |             ' "$dir"/* | ||||||
|  |         } | ||||||
|  |  | ||||||
|  |         list_install_scripts "$WH_AUTOINSTALL_DIR" "Список программ с возможностью автоматической установки:" | ||||||
|         echo |         echo | ||||||
|         print_info "Список программ с возможностью установки из существующего дистрибутива:" |         list_install_scripts "$WH_MANUALINSTALL_DIR" "Список программ с возможностью установки из существующего дистрибутива:" | ||||||
|         for list in $(ls "$WH_MANUALINSTALL_DIR") ; do |  | ||||||
|             AI_INFO="$(grep "info_ru:" "$WH_MANUALINSTALL_DIR/$list" | awk -F"info_ru: " '{print $2}')" |  | ||||||
|             AI_PROGNAME="$(grep "PROG_NAME=" "$WH_MANUALINSTALL_DIR/$list" | awk -F"PROG_NAME=" '{print $2}')" |  | ||||||
|             echo -e "\n$list - $AI_PROGNAME" |  | ||||||
|             echo "$AI_INFO" |  | ||||||
|         done |  | ||||||
|     elif [[ "$INSTALL_SCRIPT" != "0" ]] ; then |     elif [[ "$INSTALL_SCRIPT" != "0" ]] ; then | ||||||
|         source "$INSTALL_SCRIPT" "$@" |         source "$INSTALL_SCRIPT" "$@" | ||||||
|         print_info "Завершена установка $INSTALL_SCRIPT_NAME" |         print_info "Завершена установка $INSTALL_SCRIPT_NAME" | ||||||
| @@ -1273,7 +1367,7 @@ run_autoinstall () { | |||||||
| remove_prefix() { | remove_prefix() { | ||||||
|     export WINEPREFIX="$1" |     export WINEPREFIX="$1" | ||||||
|     if [[ -z "$WINEPREFIX" ]] |     if [[ -z "$WINEPREFIX" ]] | ||||||
|     then print_error "Не указано имя префикса для удаления!" |     then print_warning "Не указано имя префикса для удаления. Выберите из списка..." | ||||||
|     fi |     fi | ||||||
|     check_prefix_var |     check_prefix_var | ||||||
|     if [[ ! -d "$WINEPREFIX" ]] |     if [[ ! -d "$WINEPREFIX" ]] | ||||||
| @@ -1288,11 +1382,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 | ||||||
|  |  | ||||||
| @@ -1325,23 +1416,18 @@ remove_winehelper () { | |||||||
|         echo " - Все приложения/программы, установленные через WineHelper" |         echo " - Все приложения/программы, установленные через WineHelper" | ||||||
|         echo " - Все ярлыки из меню и с рабочего стола созданные с помощью WineHelper" |         echo " - Все ярлыки из меню и с рабочего стола созданные с помощью WineHelper" | ||||||
|         echo "======================================================" |         echo "======================================================" | ||||||
|         echo "Продолжить? (y/N)" |         if print_confirmation "Продолжить?" ; then | ||||||
|         read -r answer |  | ||||||
|  |  | ||||||
|         if [[ "$answer" =~ ^[YyДд]$ ]] ; then |  | ||||||
|             # Второе подтверждение |  | ||||||
|             echo "----------------------------------------------" |             echo "----------------------------------------------" | ||||||
|             print_warning " ВЫ ТОЧНО УВЕРЕНЫ?" |             print_warning " ВЫ ТОЧНО УВЕРЕНЫ?" | ||||||
|             echo "----------------------------------------------" |             echo "----------------------------------------------" | ||||||
|             echo "Продолжить? (y/N)" |             if ! print_confirmation "Продолжить?" | ||||||
|             read -r answer |             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" | ||||||
|  |  | ||||||
| @@ -1364,8 +1450,56 @@ remove_winehelper () { | |||||||
|     try_remove_file "$HOME/.winehelper" |     try_remove_file "$HOME/.winehelper" | ||||||
|  |  | ||||||
|     print_info "WineHelper и все связанные данные успешно удалены." |     print_info "WineHelper и все связанные данные успешно удалены." | ||||||
|  | } | ||||||
|  |  | ||||||
|  | create_base_pfx () { | ||||||
|  |     export WINEPREFIX="$1" | ||||||
|  |     check_prefix_var | ||||||
|  |  | ||||||
|  |     local prefix_dir drive_c_dir users_dir archive_path | ||||||
|  |     prefix_dir="$WINEPREFIX" | ||||||
|  |     drive_c_dir="$prefix_dir/drive_c" | ||||||
|  |     users_dir="$drive_c_dir/users" | ||||||
|  |     archive_path="$WH_TMP_DIR/pfx/new_${PREFIX_NAME}.tar.xz" | ||||||
|  |  | ||||||
|  |     try_copy_dir "$prefix_dir" "${prefix_dir}_bak" | ||||||
|  |     create_new_dir "$WH_TMP_DIR/pfx/" | ||||||
|  |  | ||||||
|  |     for wtlog in workaround isolate internal winxp win2 win7 win10 | ||||||
|  |     do sed -i "/$wtlog/d" "$prefix_dir/winetricks.log" | ||||||
|  |     done | ||||||
|  |  | ||||||
|  |     if [[ -d "$users_dir/$USER" ]] \ | ||||||
|  |     && [[ ! -L "$users_dir/$USER" ]] | ||||||
|  |     then | ||||||
|  |         if [[ -L "$users_dir/xuser" ]] | ||||||
|  |         then try_remove_dir "$users_dir/xuser/" | ||||||
|  |         fi | ||||||
|  |         create_new_dir "$users_dir/xuser/" | ||||||
|  |         cp -fr "$users_dir/$USER"/* "$users_dir/xuser/" | ||||||
|  |     fi | ||||||
|  |  | ||||||
|  |     try_remove_file "$prefix_dir/.update-timestamp" | ||||||
|  |     try_remove_file "$prefix_dir/.firstboot" | ||||||
|  |     try_remove_file "$prefix_dir/last.conf" | ||||||
|  |     try_remove_dir "$prefix_dir/dosdevices/" | ||||||
|  |     try_remove_dir "$users_dir/$USER" | ||||||
|  |     try_remove_dir "$users_dir/xuser/AppData/Local/Temp/" | ||||||
|  |     try_remove_dir "$drive_c_dir/ProgramData/Package Cache/" | ||||||
|  |     try_remove_dir "$drive_c_dir/windows/temp/" | ||||||
|  |     try_remove_dir "$drive_c_dir/windows/Installer/" | ||||||
|  |  | ||||||
|  |     rm -fr "$drive_c_dir/windows/Microsoft.NET"/*/*/SetupCache/ | ||||||
|  |  | ||||||
|  |     cd "$prefix_dir" | ||||||
|  |     if tar --no-xattrs -c -I 'xz --memlimit=8000MiB -9 -T0' -f "$archive_path" ./* ; then | ||||||
|  |         print_ok "Архив создан по пути: $archive_path" | ||||||
|  |         xdg-open "$(dirname "$archive_path")" & | ||||||
|  |         cd - | ||||||
|     else |     else | ||||||
|         print_info "Удаление отменено." |         try_remove_file "$archive_path" | ||||||
|  |         cd - | ||||||
|  |         fatal "Не удалось создать архив." | ||||||
|     fi |     fi | ||||||
| } | } | ||||||
|  |  | ||||||
| @@ -1499,10 +1633,7 @@ restore_prefix() { | |||||||
|  |  | ||||||
|             print_info "Восстановление ярлыков для префикса $prefix_name..." |             print_info "Восстановление ярлыков для префикса $prefix_name..." | ||||||
|             export RESTORE_FROM_BACKUP="1"  # Устанавливаем флаг восстановления |             export RESTORE_FROM_BACKUP="1"  # Устанавливаем флаг восстановления | ||||||
|             while IFS='=' read -r line; do |             while IFS='=' read -r name_desktop exe_path icon_name ; do | ||||||
|                 local name_desktop=$(echo "$line" | cut -d'=' -f1) |  | ||||||
|                 local exe_path=$(echo "$line" | cut -d'=' -f2) |  | ||||||
|                 local icon_name=$(echo "$line" | cut -d'=' -f3) |  | ||||||
|  |  | ||||||
|                 local full_exe_path="$WH_PREFIXES_DIR/$prefix_name${exe_path}" |                 local full_exe_path="$WH_PREFIXES_DIR/$prefix_name${exe_path}" | ||||||
|                 local full_icon_path="$WH_PREFIXES_DIR/$prefix_name/icons/$icon_name" |                 local full_icon_path="$WH_PREFIXES_DIR/$prefix_name/icons/$icon_name" | ||||||
| @@ -1536,15 +1667,16 @@ wh_info () { | |||||||
|     install [скрипт] --clear-pfx    не использовать готовый префикс для установки ПО |     install [скрипт] --clear-pfx    не использовать готовый префикс для установки ПО | ||||||
|  |  | ||||||
|     installed                       список установленных программ |     installed                       список установленных программ | ||||||
|     run [программа.exe]             запуск программы (отладка) |     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 | ||||||
|  |  | ||||||
| " | " | ||||||
| @@ -1569,14 +1701,15 @@ 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" ;; | ||||||
|     winefile|explorer) prepair_wine ; wine_run "winefile" ;; |     winefile|explorer) prepair_wine ; wine_run "winefile" ;; | ||||||
|     wineconsole|cmd) prepair_wine ; wine_run "wineconsole" ;; |     wineconsole|cmd) prepair_wine ; wine_run "wineconsole" ;; | ||||||
|     winetricks) prepair_wine ; "$WINETRICKS" -q "$@" ;; |     winetricks) prepair_wine ; "$WH_WINETRICKS" -q "$@" ;; | ||||||
|     desktop) create_desktop "$@" ; exit 0 ;; |     desktop) create_desktop "$@" ; exit 0 ;; | ||||||
|     install|-i) run_autoinstall "$@" ;; |     install|-i) run_autoinstall "$@" ;; | ||||||
|     installed) check_installed_programs "$1" ;; |     installed) check_installed_programs "$1" ;; | ||||||
| @@ -1585,6 +1718,7 @@ case "$arg1" in | |||||||
|     restore-prefix) restore_prefix "$@" ;; |     restore-prefix) restore_prefix "$@" ;; | ||||||
|     remove-all) remove_winehelper "$@" ;; |     remove-all) remove_winehelper "$@" ;; | ||||||
|     remove-prefix) remove_prefix "$@" ;; |     remove-prefix) remove_prefix "$@" ;; | ||||||
|  |     create-base-pfx) create_base_pfx "$@" ;; | ||||||
|     *) |     *) | ||||||
|         if [[ -f "$arg1" ]] ; then |         if [[ -f "$arg1" ]] ; then | ||||||
|             WIN_FILE_EXEC="$(readlink -f "$arg1")" |             WIN_FILE_EXEC="$(readlink -f "$arg1")" | ||||||
|   | |||||||