forked from CastroFidel/winehelper
		
	Compare commits
	
		
			13 Commits
		
	
	
		
			15712f0a0a
			...
			0.6.3
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | da3d5cd7af | ||
|  | 3ee499c758 | ||
|  | 6286cccbab | ||
|  | e8d462b665 | ||
|  | 6476a84ce7 | ||
|  | db7e3f5220 | ||
|  | a817d1a6f5 | ||
|  | e1fc25bb72 | ||
|  | 7c90da2088 | ||
|  | 108316148a | ||
|  | 9029f4d0e8 | ||
|  | cedebe73c1 | ||
|  | e04811446c | 
							
								
								
									
										17
									
								
								autoinstall/ksamu
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								autoinstall/ksamu
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,17 @@ | |||||||
|  | #!/usr/bin/env bash | ||||||
|  | # info_ru: Программа “КСАМУ”. | ||||||
|  | ######################################################################## | ||||||
|  | export PROG_URL="https://docs.medicine-it.ru/" | ||||||
|  | export WH_WINE_USE="wine_x_tkg_10-0_amd64" | ||||||
|  | export WINEPREFIX="ksamu" | ||||||
|  | export PROG_NAME="КСАМУ" | ||||||
|  | export PROG_ICON="ksamu" | ||||||
|  | export BASE_PFX="ksamu_pfx_x64_v01" | ||||||
|  | export WINEARCH="win64" | ||||||
|  | export INSTALL_DLL="richtx32 riched20 riched30 msls31 msftedit msxml6 msxml3 msxml4 fontsmooth=gray" #riched32 | ||||||
|  | export WH_USE_EXTRA_FONTS="1" | ||||||
|  | export WH_WINDOWS_VER="7" | ||||||
|  |  | ||||||
|  | prepair_wine | ||||||
|  |  | ||||||
|  | create_desktop "$PROG_NAME" "$DRIVE_C/KSAMU/KSAMU.exe" "$PROG_ICON" | ||||||
| @@ -62,6 +62,8 @@ fi | |||||||
| if try_download "https://scadhelp.ru/files/10/download" "${AUTOINSTALL_EXE}" ; then | if try_download "https://scadhelp.ru/files/10/download" "${AUTOINSTALL_EXE}" ; then | ||||||
|     create_new_dir "$DRIVE_C/SDATA" |     create_new_dir "$DRIVE_C/SDATA" | ||||||
|     create_new_dir "$DRIVE_C/SWORK" |     create_new_dir "$DRIVE_C/SWORK" | ||||||
|  |     # временно запрещаем запуск hasplms.exe, hasplmv.exe для успешного завершения установки | ||||||
|  |     tmp_winedlloverride_update "hasplms.exe,hasplmv.exe=d" | ||||||
|     wine_run_install "$AUTOINSTALL_EXE" |     wine_run_install "$AUTOINSTALL_EXE" | ||||||
|     try_remove_file "$AUTOINSTALL_EXE" |     try_remove_file "$AUTOINSTALL_EXE" | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										34
									
								
								autoinstall/t-flex-cad18
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								autoinstall/t-flex-cad18
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,34 @@ | |||||||
|  | #!/usr/bin/env bash | ||||||
|  | # info_ru: Профессиональная САПР, объединяющая в себе мощные параметрические возможности 2D и 3D-моделирования со средствами создания и оформления чертежей и конструкторской документации по ЕСКД. | ||||||
|  | ######################################################################## | ||||||
|  | export PROG_URL="https://www.tflexcad.ru" | ||||||
|  | export PROG_NAME="T-FLEX CAD 18" | ||||||
|  | export PROG_ICON="tflexcad" | ||||||
|  | export WH_WINE_USE="wine_wh_tflex_10-9_amd64" | ||||||
|  | export BASE_PFX="tflex_pfx_x64_v03" | ||||||
|  | export WINEARCH="win64" | ||||||
|  | export WH_WINDOWS_VER="10" | ||||||
|  | export WINEPREFIX="tflex" | ||||||
|  | export WH_XDG_OPEN="log" | ||||||
|  | export WH_USE_MESA_GL_OVERRIDE="1" | ||||||
|  |  | ||||||
|  | # используем общий whdb файл для подготовки префикса и сервисов | ||||||
|  | # prepair_wine используется из файла настроек | ||||||
|  | source "$WH_DB_DIR/t-flex-cad.whdb" | ||||||
|  |  | ||||||
|  | # Программа T-FLEX CAD | ||||||
|  | AUTOINSTALL_ZIP="${WH_TMP_DIR}/T-FLEX CAD 18.zip" | ||||||
|  | AUTOINSTALL_DIR="${WH_TMP_DIR}" | ||||||
|  | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/T-FLEX CAD 18" | ||||||
|  | AUTOINSTALL_EXE="${WH_TMP_DIR}/T-FLEX CAD 18/T-FLEX CAD 18.msi" | ||||||
|  |  | ||||||
|  | if try_download "https://www.tflex.ru/downloads/V18/T-FLEX%20CAD%2018.zip" "${AUTOINSTALL_ZIP}" ; then | ||||||
|  |     unpack "${AUTOINSTALL_ZIP}" "${AUTOINSTALL_DIR}" | ||||||
|  |     try_remove_file "${AUTOINSTALL_ZIP}" | ||||||
|  |  | ||||||
|  |     wine_run_install "${AUTOINSTALL_EXE}" /q | ||||||
|  |     try_remove_dir "${AUTOINSTALL_UNPACK}" | ||||||
|  |  | ||||||
|  |     WIN_FILE_EXEC="$DRIVE_C/Program Files/T-FLEX CAD 18/Program/TFlexCad.exe" | ||||||
|  |     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" "TFlexCad" | ||||||
|  | fi | ||||||
							
								
								
									
										52
									
								
								autoinstall/t-flex-cad18-applications
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								autoinstall/t-flex-cad18-applications
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,52 @@ | |||||||
|  | #!/usr/bin/env bash | ||||||
|  | # info_ru: Приложения для T-FLEX CAD 18 (T-FLEX Анализ 18, T-FLEX Динамика 18, T-FLEX Детали машин 18, T-FLEX Раскрой 18, T-FLEX VR 18, T-FLEX Печатные платы 18) | ||||||
|  | ######################################################################## | ||||||
|  | export PROG_URL="https://www.tflexcad.ru" | ||||||
|  | export PROG_NAME="Приложения для T-FLEX CAD 18" | ||||||
|  | export PROG_ICON="tflexcad" | ||||||
|  | export WH_WINDOWS_VER="10" | ||||||
|  | export WH_WINE_USE="wine_wh_tflex_10-9_amd64" | ||||||
|  | export BASE_PFX="tflex_pfx_x64_v03" | ||||||
|  | export WINEARCH="win64" | ||||||
|  | export WINEPREFIX="tflex" | ||||||
|  | export WH_XDG_OPEN="log" | ||||||
|  | export WH_USE_MESA_GL_OVERRIDE="1" | ||||||
|  |  | ||||||
|  | check_prefix_var | ||||||
|  | if [[ ! -f "$WINEPREFIX/drive_c/Program Files/T-FLEX CAD 18/Program/TFlexCad.exe" ]] | ||||||
|  | then fatal "Изначально установите T-FLEX CAD 18." | ||||||
|  | fi | ||||||
|  |  | ||||||
|  | BASE_URL="https://www.tflex.ru/downloads/V18" | ||||||
|  | FILES=( | ||||||
|  |     "T-FLEX Analysis 18.zip" | ||||||
|  |     "T-FLEX Dynamics 18.zip" | ||||||
|  |     "T-FLEX Machinery 18.zip" | ||||||
|  |     "T-FLEX Nesting 18.zip" | ||||||
|  |     "T-FLEX VR 18.zip" | ||||||
|  |     "T-FLEX Circuits 18.zip" | ||||||
|  | ) | ||||||
|  | UNPACK_APP="${WH_TMP_DIR}/unpack_applications" | ||||||
|  |  | ||||||
|  | prepair_wine | ||||||
|  |  | ||||||
|  | # Скачивание всех файлов | ||||||
|  | for file_name in "${FILES[@]}" ; do | ||||||
|  |     local output="${WH_TMP_DIR}/${file_name// /_}" | ||||||
|  |  | ||||||
|  |     if try_download "$BASE_URL/$file_name" "$output" ; then | ||||||
|  |         unpack "$output" "${UNPACK_APP}" | ||||||
|  |     fi | ||||||
|  |     try_remove_file "$output" | ||||||
|  | done | ||||||
|  |  | ||||||
|  | # Установка .msi файлов | ||||||
|  | for msi_file in "${UNPACK_APP}"/*/*.msi ; do | ||||||
|  |     if [[ -f "$msi_file" ]] ; then | ||||||
|  |         wine_run_install "$msi_file" /q | ||||||
|  |     else | ||||||
|  |         fatal "Нет .msi файлов для установки в ${UNPACK_APP}/*." | ||||||
|  |     fi | ||||||
|  | done | ||||||
|  |  | ||||||
|  | try_remove_dir "${UNPACK_APP}" | ||||||
							
								
								
									
										49
									
								
								autoinstall/t-flex-cad18-resources
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								autoinstall/t-flex-cad18-resources
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,49 @@ | |||||||
|  | #!/usr/bin/env bash | ||||||
|  | # info_ru: Обучающие материалы, примеры, бесплатные библиотеки для T-FLEX CAD 18 (Учебное пособие 18, Стандартные элементы 18, Примеры 18) | ||||||
|  | ######################################################################## | ||||||
|  | export PROG_URL="https://www.tflexcad.ru" | ||||||
|  | export PROG_NAME="Ресурсы для T-FLEX CAD 18" | ||||||
|  | export PROG_ICON="tflexcad" | ||||||
|  | export WH_WINDOWS_VER="10" | ||||||
|  | export WH_WINE_USE="wine_wh_tflex_10-9_amd64" | ||||||
|  | export BASE_PFX="tflex_pfx_x64_v03" | ||||||
|  | export WINEARCH="win64" | ||||||
|  | export WINEPREFIX="tflex" | ||||||
|  | export WH_XDG_OPEN="log" | ||||||
|  | export WH_USE_MESA_GL_OVERRIDE="1" | ||||||
|  |  | ||||||
|  | check_prefix_var | ||||||
|  | if [[ ! -f "$WINEPREFIX/drive_c/Program Files/T-FLEX CAD 18/Program/TFlexCad.exe" ]] | ||||||
|  | then fatal "Изначально установите T-FLEX CAD 18." | ||||||
|  | fi | ||||||
|  |  | ||||||
|  | BASE_URL="https://www.tflex.ru/downloads/V18" | ||||||
|  | FILES=( | ||||||
|  |     "T-FLEX Tutorial 18.zip" | ||||||
|  |     "Standard parts 18.zip" | ||||||
|  |     "Examples 18.zip" | ||||||
|  | ) | ||||||
|  | UNPACK_RESOURCES="${WH_TMP_DIR}/unpack_resources" | ||||||
|  |  | ||||||
|  | prepair_wine | ||||||
|  |  | ||||||
|  | # Скачивание всех файлов | ||||||
|  | for file_name in "${FILES[@]}" ; do | ||||||
|  |     local output="${WH_TMP_DIR}/${file_name// /_}" | ||||||
|  |  | ||||||
|  |     if try_download "$BASE_URL/$file_name" "$output" ; then | ||||||
|  |         unpack "$output" "$UNPACK_RESOURCES" | ||||||
|  |     fi | ||||||
|  |     try_remove_file "$output" | ||||||
|  | done | ||||||
|  |  | ||||||
|  | # Установка .msi файлов | ||||||
|  | for msi_file in "${UNPACK_RESOURCES}"/*/*.msi ; do | ||||||
|  |     if [[ -f "$msi_file" ]] ; then | ||||||
|  |         wine_run_install "$msi_file" /q | ||||||
|  |     else | ||||||
|  |         fatal "Нет .msi файлов для установки в ${UNPACK_RESOURCES}/unpack_dop/*." | ||||||
|  |     fi | ||||||
|  | done | ||||||
|  |  | ||||||
|  | try_remove_dir "${UNPACK_RESOURCES}" | ||||||
							
								
								
									
										34
									
								
								autoinstall/t-flex-cad2d+18
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								autoinstall/t-flex-cad2d+18
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,34 @@ | |||||||
|  | #!/usr/bin/env bash | ||||||
|  | # info_ru: Профессиональная САПР, объединяющая в себе мощные параметрические возможности 2D и 3D-моделирования со средствами создания и оформления чертежей и конструкторской документации по ЕСКД. | ||||||
|  | ######################################################################## | ||||||
|  | export PROG_URL="https://www.tflexcad.ru" | ||||||
|  | export PROG_NAME="T-FLEX CAD 2D+ 18" | ||||||
|  | export PROG_ICON="tflexcad" | ||||||
|  | export WH_WINE_USE="wine_wh_tflex_10-9_amd64" | ||||||
|  | export BASE_PFX="tflex_pfx_x64_v03" | ||||||
|  | export WINEARCH="win64" | ||||||
|  | export WH_WINDOWS_VER="10" | ||||||
|  | export WINEPREFIX="tflex" | ||||||
|  | export WH_XDG_OPEN="log" | ||||||
|  | export WH_USE_MESA_GL_OVERRIDE="1" | ||||||
|  |  | ||||||
|  | # используем общий whdb файл для подготовки префикса и сервисов | ||||||
|  | # prepair_wine используется из файла настроек | ||||||
|  | source "$WH_DB_DIR/t-flex-cad.whdb" | ||||||
|  |  | ||||||
|  | # Программа T-FLEX CAD 2D+ 18 | ||||||
|  | AUTOINSTALL_ZIP="${WH_TMP_DIR}/T-FLEX CAD 2D+ 18.zip" | ||||||
|  | AUTOINSTALL_DIR="${WH_TMP_DIR}" | ||||||
|  | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/T-FLEX CAD 2D+ 18" | ||||||
|  | AUTOINSTALL_EXE="${AUTOINSTALL_UNPACK}/T-FLEX CAD 2D+ 18.msi" | ||||||
|  |  | ||||||
|  | if try_download "https://www.tflex.ru/downloads/V18/T-FLEX%20CAD%202D+%2018.zip" "${AUTOINSTALL_ZIP}" ; then | ||||||
|  |     unpack "${AUTOINSTALL_ZIP}" "${AUTOINSTALL_DIR}" | ||||||
|  |     try_remove_file "${AUTOINSTALL_ZIP}" | ||||||
|  |  | ||||||
|  |     wine_run_install "${AUTOINSTALL_EXE}" /q | ||||||
|  |     try_remove_dir "${AUTOINSTALL_UNPACK}" | ||||||
|  |  | ||||||
|  |     WIN_FILE_EXEC="$DRIVE_C/Program Files/T-FLEX CAD 2D+ 18/Program/TFlexCad.exe" | ||||||
|  |     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" "TFlexCad2D" | ||||||
|  | fi | ||||||
							
								
								
									
										34
									
								
								autoinstall/t-flex-viewer18
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								autoinstall/t-flex-viewer18
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,34 @@ | |||||||
|  | #!/usr/bin/env bash | ||||||
|  | # info_ru: Просмотр, печать и аннотирование документов T-FLEX CAD | ||||||
|  | ######################################################################## | ||||||
|  | export PROG_URL="https://www.tflexcad.ru" | ||||||
|  | export PROG_NAME="T-FLEX Viewer 18" | ||||||
|  | export PROG_ICON="tflexcad" | ||||||
|  | export WH_WINE_USE="wine_wh_tflex_10-9_amd64" | ||||||
|  | export BASE_PFX="tflex_pfx_x64_v03" | ||||||
|  | export WINEARCH="win64" | ||||||
|  | export WH_WINDOWS_VER="10" | ||||||
|  | export WINEPREFIX="tflex" | ||||||
|  | export WH_XDG_OPEN="log" | ||||||
|  | export WH_USE_MESA_GL_OVERRIDE="1" | ||||||
|  |  | ||||||
|  | # используем общий whdb файл для подготовки префикса и сервисов | ||||||
|  | # prepair_wine используется из файла настроек | ||||||
|  | source "$WH_DB_DIR/t-flex-cad.whdb" | ||||||
|  |  | ||||||
|  | # Программа T-FLEX Viewer | ||||||
|  | AUTOINSTALL_ZIP="${WH_TMP_DIR}/T-FLEX Viewer 18.zip" | ||||||
|  | AUTOINSTALL_DIR="${WH_TMP_DIR}" | ||||||
|  | AUTOINSTALL_UNPACK="${WH_TMP_DIR}/T-FLEX Viewer 18" | ||||||
|  | AUTOINSTALL_EXE="${AUTOINSTALL_UNPACK}/T-FLEX Viewer 18.msi" | ||||||
|  |  | ||||||
|  | if try_download "https://www.tflex.ru/downloads/V18/T-FLEX%20Viewer%2018.zip" "${AUTOINSTALL_ZIP}" ; then | ||||||
|  |     unpack "${AUTOINSTALL_ZIP}" "${AUTOINSTALL_DIR}" | ||||||
|  |     try_remove_file "${AUTOINSTALL_ZIP}" | ||||||
|  |  | ||||||
|  |     wine_run_install "${AUTOINSTALL_EXE}" /q | ||||||
|  |     try_remove_dir "${AUTOINSTALL_UNPACK}" | ||||||
|  |  | ||||||
|  |     WIN_FILE_EXEC="$DRIVE_C/Program Files/T-FLEX Viewer 18/Program/TFlexViewer.exe" | ||||||
|  |     create_desktop "$PROG_NAME" "$WIN_FILE_EXEC" "$PROG_ICON" | ||||||
|  | fi | ||||||
							
								
								
									
										
											BIN
										
									
								
								image/ksamu.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								image/ksamu.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 5.0 KiB | 
| @@ -218,3 +218,8 @@ dfb44ce5e5af7dba1686932c63d6b05e5dd6919a21c78130a7d1d0271b93958e  audiorecstatio | |||||||
| ef7e8f1ba785d48e4ea287feed5b79bd630d423e59efadb43da9653adefef218  ais-lpu-client_pfx_x86_v01.tar.xz | ef7e8f1ba785d48e4ea287feed5b79bd630d423e59efadb43da9653adefef218  ais-lpu-client_pfx_x86_v01.tar.xz | ||||||
| # create with wine_x_tkg_10-0_i586 (universal user: xuser) | # create with wine_x_tkg_10-0_i586 (universal user: xuser) | ||||||
| # winetricks vcrun2005 vcrun2008 dotnet20sp2 dotnet40 mfc42 7zip | # winetricks vcrun2005 vcrun2008 dotnet20sp2 dotnet40 mfc42 7zip | ||||||
|  |  | ||||||
|  | f18864014fdb2fead0b45b5e70e95073072b89168df8cd6debba89081ac51a2a  ksamu_pfx_x64_v01.tar.xz | ||||||
|  | # create with wine_x_tkg_10-0_i586 (universal user: xuser) | ||||||
|  | # winetricks msxml6 msxml4 msxml3 riched30 msls31 riched20 msftedit richtx32 fontsmooth=gray | ||||||
|  | # + manuall installed riched32 | ||||||
|   | |||||||
							
								
								
									
										138
									
								
								winehelper
									
									
									
									
									
								
							
							
						
						
									
										138
									
								
								winehelper
									
									
									
									
									
								
							| @@ -101,16 +101,6 @@ else | |||||||
|     check_variables DXVK_NVAPI_LOG_LEVEL "none" |     check_variables DXVK_NVAPI_LOG_LEVEL "none" | ||||||
| fi | fi | ||||||
|  |  | ||||||
| if [[ $WINEDEBUG != "-all" ]] ; then |  | ||||||
|     log_dir="$HOME/winehelper_backup_log" |  | ||||||
|     mkdir -p "$log_dir" |  | ||||||
|     export LOG_FILE="$log_dir/winehelper.log" |  | ||||||
|     date > "$LOG_FILE" |  | ||||||
|     print_warning "Включен режим логирования работы WINE." |  | ||||||
|     print_warning "Лог будет сохранен по пути: $LOG_FILE" |  | ||||||
|     sleep 3 |  | ||||||
| fi |  | ||||||
|  |  | ||||||
| ##### WINETRICKS VERSION ##### | ##### WINETRICKS VERSION ##### | ||||||
| WINETRICKS_VERSION="20250102" | WINETRICKS_VERSION="20250102" | ||||||
|  |  | ||||||
| @@ -485,6 +475,10 @@ var_winedlloverride_update () { | |||||||
|     fi |     fi | ||||||
| } | } | ||||||
|  |  | ||||||
|  | tmp_winedlloverride_update () { | ||||||
|  |     var_winedlloverride_update "$1" | ||||||
|  | } | ||||||
|  |  | ||||||
| var_dxvk_config_update () { | var_dxvk_config_update () { | ||||||
|     if [[ -n "${DXVK_CONFIG}" ]] |     if [[ -n "${DXVK_CONFIG}" ]] | ||||||
|     then export DXVK_CONFIG="${1};${DXVK_CONFIG}" |     then export DXVK_CONFIG="${1};${DXVK_CONFIG}" | ||||||
| @@ -1348,23 +1342,25 @@ kill_wine () { | |||||||
| } | } | ||||||
|  |  | ||||||
| init_database () { | init_database () { | ||||||
|     WHDB_FILE="0" |     local whdb_file="0" | ||||||
|     if [[ -f "$WIN_FILE_EXEC" ]] ; then |     if [[ -n "$WIN_FILE_EXEC" ]] \ | ||||||
|  |     && [[ -f "$WIN_FILE_EXEC" ]] | ||||||
|  |     then | ||||||
|         WHDB="$(basename "$WIN_FILE_EXEC" .exe)" |         WHDB="$(basename "$WIN_FILE_EXEC" .exe)" | ||||||
|         if [[ -f "$WIN_FILE_EXEC".whdb ]] ; then |         if [[ -f "$WIN_FILE_EXEC".whdb ]] ; then | ||||||
|             WHDB_FILE="$WIN_FILE_EXEC".whdb |             whdb_file="$WIN_FILE_EXEC".whdb | ||||||
|         else |         else | ||||||
|             orig_IFS="$IFS" && IFS=$'\n' |             orig_IFS="$IFS" && IFS=$'\n' | ||||||
|             if WH_FIND_DB_FILE="$(grep -ilw "#$WHDB.exe" "$WH_DB_DIR"/* )" ; then |             if WH_FIND_DB_FILE="$(grep -ilw "#$WHDB.exe" "$WH_DB_DIR"/* )" ; then | ||||||
|                 WHDB_FILE="$WH_FIND_DB_FILE" |                 whdb_file="$WH_FIND_DB_FILE" | ||||||
|             fi |             fi | ||||||
|             IFS="$orig_IFS" |             IFS="$orig_IFS" | ||||||
|         fi |         fi | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     if [[ "$WHDB_FILE" != "0" ]] ; then |     if [[ "$whdb_file" != "0" ]] ; then | ||||||
|         print_info "Используется файл настроек: $WHDB_FILE" |         print_info "Используется файл настроек: $whdb_file" | ||||||
|         . "$WHDB_FILE" |         . "$whdb_file" | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     if check_prefix_var && [[ -f "$WINEPREFIX/last.conf" ]] ; then |     if check_prefix_var && [[ -f "$WINEPREFIX/last.conf" ]] ; then | ||||||
| @@ -1390,23 +1386,56 @@ prepair_wine () { | |||||||
| } | } | ||||||
|  |  | ||||||
| wine_run () { | wine_run () { | ||||||
|     if [[ $WINEARCH == "win32" ]] \ |     local wh_add_args win_file_exec | ||||||
|     && file "$WIN_FILE_EXEC" | grep -q "x86-64" |  | ||||||
|     then fatal "Нельзя запустить 64-битное приложение в 32-битном префиксе!" |  | ||||||
|     fi |  | ||||||
|  |  | ||||||
|     WIN_FILE_PATH="$(dirname "$WIN_FILE_EXEC")" |     if [[ $1 =~ (winecfg|regedit|winefile|wineconsole) ]] ; then | ||||||
|     [[ -d "$WIN_FILE_PATH" ]] && cd "$WIN_FILE_PATH" |         win_file_exec="$1" | ||||||
|  |         win_file_name="$win_file_exec" | ||||||
|  |         wh_add_args="" | ||||||
|  |     elif [[ -f "$1" ]] ; then | ||||||
|  |         local win_file_path win_file_name | ||||||
|  |         win_file_exec="$(readlink -f "$1")" | ||||||
|  |         win_file_path="$(dirname "$win_file_exec")" | ||||||
|  |         win_file_name="$(basename "$win_file_exec")" | ||||||
|  |  | ||||||
|     if [[ -n $LOG_FILE ]] && [[ -f "$LOG_FILE" ]] ; then |         case "${win_file_name,,}" in | ||||||
|         echo "##### Основные переменные #####" | tee -a "$LOG_FILE" |             *.exe) wh_add_args="$WINE_WIN_START" ;; | ||||||
|         env | grep -e "WH_" -e "WINE" -e "DXVK" -e "VKD3D" | tee -a "$LOG_FILE" |             *.msi) wh_add_args="msiexec /i" ;; | ||||||
|  |             *.bat|*.cmd) wh_add_args="" ;; | ||||||
|  |             *) fatal "Не удалось запустить файл $1. Проверьте расширение файла." ;; | ||||||
|  |         esac | ||||||
|  |  | ||||||
|         echo "##### Лог WINE #####" | tee -a "$LOG_FILE" |         if [[ $WINEARCH == "win32" ]] \ | ||||||
|         $MANGOHUD_RUN "$WINELOADER" "$@" $LAUNCH_PARAMETERS 2>&1 | tee -a "$LOG_FILE" |         && file "$win_file_exec" | grep -q "x86-64" | ||||||
|  |         then fatal "Нельзя запустить 64-битное приложение в 32-битном префиксе!" | ||||||
|  |         fi | ||||||
|  |  | ||||||
|  |         cd "$win_file_path" | ||||||
|     else |     else | ||||||
|         $MANGOHUD_RUN "$WINELOADER" "$@" $LAUNCH_PARAMETERS |         fatal "Команда введена не правильно или не найден исполняемый файл $1" | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|  |     shift | ||||||
|  |  | ||||||
|  |     if [[ $WINEDEBUG != "-all" ]] ; then | ||||||
|  |         local log_dir log_file | ||||||
|  |         log_dir="$HOME/winehelper_backup_log" | ||||||
|  |         log_file="$log_dir/${PREFIX_NAME}_${win_file_name%.*}.log" | ||||||
|  |         create_new_dir "$log_dir" | ||||||
|  |         date > "$log_file" | ||||||
|  |  | ||||||
|  |         print_warning "Включен режим логирования работы WINE." | ||||||
|  |         print_warning "Лог будет сохранен по пути: $log_file" | ||||||
|  |  | ||||||
|  |         echo "##### Основные переменные #####" | tee -a "$log_file" | ||||||
|  |         env | grep -e "WH_" -e "WINE" -e "DXVK" -e "VKD3D" | tee -a "$log_file" | ||||||
|  |  | ||||||
|  |         echo "##### Лог WINE #####" | tee -a "$log_file" | ||||||
|  |         $MANGOHUD_RUN "$WINELOADER" $wh_add_args "$win_file_exec" "$@" $LAUNCH_PARAMETERS 2>&1 | tee -a "$log_file" | ||||||
|  |     else | ||||||
|  |         $MANGOHUD_RUN "$WINELOADER" $wh_add_args "$win_file_exec" "$@" $LAUNCH_PARAMETERS | ||||||
|  |     fi | ||||||
|  |  | ||||||
|     wait_wineserver |     wait_wineserver | ||||||
| } | } | ||||||
|  |  | ||||||
| @@ -1415,14 +1444,11 @@ wine_run_install () { | |||||||
|     if [[ "$INSTALL_MODE" == "manual" ]] |     if [[ "$INSTALL_MODE" == "manual" ]] | ||||||
|     then print_warning "Рекомендуется не менять пути для установки приложения!" |     then print_warning "Рекомендуется не менять пути для установки приложения!" | ||||||
|     fi |     fi | ||||||
|     [[ ! -f "$1" ]] && fatal "Нет файла для установки: $1" |  | ||||||
|     case "${1,,}" in |     if [[ ! -f "$1" ]] ; | ||||||
|         *.exe) wine_run $WINE_WIN_START "$@" ;; |     then fatal "Нет файла для установки: $1" | ||||||
|         *.msi) wine_run msiexec /i "$@" ;; |     else wine_run "$@" | ||||||
|         *.bat|*.cmd) wine_run "$@" ;; |     fi | ||||||
|         *) fatal "Не удалось запустить файл $1. Проверьте расширение файла." ;; |  | ||||||
|     esac |  | ||||||
|     wait_wineserver |  | ||||||
| } | } | ||||||
|  |  | ||||||
| run_autoinstall () { | run_autoinstall () { | ||||||
| @@ -2151,20 +2177,21 @@ select_component_version() { | |||||||
| } | } | ||||||
|  |  | ||||||
| run_install_to_prefix() { | run_install_to_prefix() { | ||||||
|     export WINEPREFIX="$1" |     if [[ -z "$1" ]] || [[ -z "$2" ]] || [[ -f "$2" ]]; then | ||||||
|     local WIN_FILE_EXEC="$2" |  | ||||||
|  |  | ||||||
|     if [[ -z "$WINEPREFIX" ]] || [[ -z "$WIN_FILE_EXEC" ]]; then |  | ||||||
|         fatal "Использование: $SCRIPT_NAME install-to-prefix <имя_префикса> <путь_к_установщику>" |         fatal "Использование: $SCRIPT_NAME install-to-prefix <имя_префикса> <путь_к_установщику>" | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|  |     export WINEPREFIX="$1" | ||||||
|  |     shift | ||||||
|  |  | ||||||
|     check_prefix_var |     check_prefix_var | ||||||
|     prepair_wine |     prepair_wine | ||||||
|     wine_run_install "$WIN_FILE_EXEC" |     wine_run "$@" | ||||||
| } | } | ||||||
|  |  | ||||||
| run_install_dxvk() { | run_install_dxvk() { | ||||||
|     local version="$1" |     local version="$1" | ||||||
|  |  | ||||||
|     if [[ -z "$version" ]] ; then |     if [[ -z "$version" ]] ; then | ||||||
|         version=$(select_component_version "DXVK") |         version=$(select_component_version "DXVK") | ||||||
|         [[ $? -ne 0 ]] && print_info "Установка DXVK отменена." && return |         [[ $? -ne 0 ]] && print_info "Установка DXVK отменена." && return | ||||||
| @@ -2172,21 +2199,27 @@ run_install_dxvk() { | |||||||
|         list_component_versions "DXVK" |         list_component_versions "DXVK" | ||||||
|         return |         return | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     check_prefix_var |     check_prefix_var | ||||||
|     init_database |     init_database | ||||||
|  |  | ||||||
|     export DXVK_VER="$version" |     export DXVK_VER="$version" | ||||||
|  |  | ||||||
|     init_wine_ver |     init_wine_ver | ||||||
|     init_wineprefix |     init_wineprefix | ||||||
|  |  | ||||||
|     if [[ "$DXVK_VER" == "none" ]] |     if [[ "$DXVK_VER" == "none" ]] | ||||||
|     then print_info "Удаление DXVK..." |     then print_info "Удаление DXVK..." | ||||||
|     else print_info "Установка DXVK: $DXVK_VER" |     else print_info "Установка DXVK: $DXVK_VER" | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     init_dxvk "$DXVK_VER" |     init_dxvk "$DXVK_VER" | ||||||
|     wait_wineserver |     wait_wineserver | ||||||
| } | } | ||||||
|  |  | ||||||
| run_install_vkd3d() { | run_install_vkd3d() { | ||||||
|     local version="$1" |     local version="$1" | ||||||
|  |  | ||||||
|     if [[ -z "$version" ]] ; then |     if [[ -z "$version" ]] ; then | ||||||
|         version=$(select_component_version "VKD3D") |         version=$(select_component_version "VKD3D") | ||||||
|         [[ $? -ne 0 ]] && print_info "Установка VKD3D отменена." && return |         [[ $? -ne 0 ]] && print_info "Установка VKD3D отменена." && return | ||||||
| @@ -2194,15 +2227,20 @@ run_install_vkd3d() { | |||||||
|         list_component_versions "VKD3D" |         list_component_versions "VKD3D" | ||||||
|         return |         return | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     check_prefix_var |     check_prefix_var | ||||||
|     init_database |     init_database | ||||||
|  |  | ||||||
|     export VKD3D_VER="$version" |     export VKD3D_VER="$version" | ||||||
|  |  | ||||||
|     init_wine_ver |     init_wine_ver | ||||||
|     init_wineprefix |     init_wineprefix | ||||||
|  |  | ||||||
|     if [[ "$VKD3D_VER" == "none" ]] |     if [[ "$VKD3D_VER" == "none" ]] | ||||||
|     then print_info "Удаление VKD3D..." |     then print_info "Удаление VKD3D..." | ||||||
|     else print_info "Установка VKD3D: $VKD3D_VER" |     else print_info "Установка VKD3D: $VKD3D_VER" | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     init_vkd3d "$VKD3D_VER" |     init_vkd3d "$VKD3D_VER" | ||||||
|     wait_wineserver |     wait_wineserver | ||||||
| } | } | ||||||
| @@ -2221,9 +2259,7 @@ run_change_wine_version() { | |||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     init_wine_ver |     init_wine_ver | ||||||
|  |  | ||||||
|     init_wineprefix |     init_wineprefix | ||||||
|  |  | ||||||
|     wait_wineserver |     wait_wineserver | ||||||
|     print_ok "Версия Wine для префикса $PREFIX_NAME успешно изменена на $WH_WINE_USE." |     print_ok "Версия Wine для префикса $PREFIX_NAME успешно изменена на $WH_WINE_USE." | ||||||
| } | } | ||||||
| @@ -2309,12 +2345,14 @@ case "$arg1" in | |||||||
|             WIN_FILE_EXEC="$(readlink -f "$arg1")" |             WIN_FILE_EXEC="$(readlink -f "$arg1")" | ||||||
|             WIN_FILE_NAME="$(basename "$WIN_FILE_EXEC")" |             WIN_FILE_NAME="$(basename "$WIN_FILE_EXEC")" | ||||||
|             find_prefix "$WIN_FILE_EXEC" |             find_prefix "$WIN_FILE_EXEC" | ||||||
|             case "${WIN_FILE_NAME,,}" in |             prepair_wine | ||||||
|                 *.exe) prepair_wine ; wine_run $WINE_WIN_START "$WIN_FILE_EXEC" "$@" ;; |  | ||||||
|                 *.msi) prepair_wine ; wine_run msiexec /i "$WIN_FILE_EXEC" "$@" ;; |             if [[ -n "$1" ]] && [[ -f "$1" ]] ; then | ||||||
|                 *.bat|*.cmd) prepair_wine ; wine_run start "$WIN_FILE_EXEC" "$@" ;; |                 WIN_OPEN_FILE="$("$WINELOADER" winepath -w "$1")" | ||||||
|                 *) fatal "Тип файла не поддерживается." ;; |                 shift | ||||||
|             esac |             fi | ||||||
|  |  | ||||||
|  |             wine_run "$WIN_FILE_EXEC" "$@" "$WIN_OPEN_FILE" | ||||||
|         else |         else | ||||||
|             print_error "Команды $arg1 не существует." |             print_error "Команды $arg1 не существует." | ||||||
|             wh_info |             wh_info | ||||||
|   | |||||||
| @@ -1668,8 +1668,8 @@ class WineHelperGUI(QMainWindow): | |||||||
|         self.main_layout.addLayout(content_layout) |         self.main_layout.addLayout(content_layout) | ||||||
|  |  | ||||||
|         # Фиксируем минимальные размеры |         # Фиксируем минимальные размеры | ||||||
|         self.stacked_widget.setMinimumWidth(520) |         self.stacked_widget.setMinimumWidth(535) | ||||||
|         self.info_panel.setMinimumWidth(415) |         self.info_panel.setMinimumWidth(395) | ||||||
|  |  | ||||||
|         # Вкладки |         # Вкладки | ||||||
|         self.create_auto_install_tab() |         self.create_auto_install_tab() | ||||||
| @@ -3660,7 +3660,7 @@ class WineHelperGUI(QMainWindow): | |||||||
|         msg_box.setText( |         msg_box.setText( | ||||||
|             "Приложение будет запущено в режиме отладки.\n\n" |             "Приложение будет запущено в режиме отладки.\n\n" | ||||||
|             "После закрытия приложения лог будет сохранен в папке 'winehelper_backup_log' " |             "После закрытия приложения лог будет сохранен в папке 'winehelper_backup_log' " | ||||||
|             "в вашем домашнем каталоге под именем 'winehelper.log'." |             "в вашем домашнем каталоге под именем программы (например, 'program.log')." | ||||||
|         ) |         ) | ||||||
|         msg_box.addButton(yes_button, QMessageBox.YesRole) |         msg_box.addButton(yes_button, QMessageBox.YesRole) | ||||||
|         msg_box.addButton(no_button, QMessageBox.NoRole) |         msg_box.addButton(no_button, QMessageBox.NoRole) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user