Compare commits
	
		
			17 Commits
		
	
	
		
			0.4.9
			...
			615bcdd95b
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 615bcdd95b | ||
|  | 33a181fe4f | ||
|  | dfe41ea9c2 | ||
|  | e649261ff9 | ||
|  | 299ee7ed53 | ||
|  | 7c41d656aa | ||
|  | 10707bd010 | ||
|  | bd9d5b9561 | ||
|  | 9caea05eb5 | ||
|  | 0bb88f6bff | ||
|  | d238a37860 | ||
|  | fc6b2fb67d | ||
|  | 6ab84be100 | ||
|  | 341b821442 | ||
|  | 63d24ae584 | ||
|  | f7450529c8 | ||
|  | 37234c25bf | 
| @@ -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 | ||||||
|             ;; |             ;; | ||||||
|   | |||||||
| @@ -101,9 +101,7 @@ _get_list_for_install () { | |||||||
|  |  | ||||||
| _get_installed_list () { | _get_installed_list () { | ||||||
|   installed=( |   installed=( | ||||||
|     ${(f)"$(grep -h 'Exec=env' ~/.local/share/winehelper/*.desktop 2>/dev/null | |     ${(f)"$(ls -1 ~/.local/share/winehelper/ | grep ".desktop" | sed 's/.desktop//')"} | ||||||
|     awk -F'/' '{print $NF}' | |  | ||||||
|     awk -F'"' '{print $1}')"} |  | ||||||
|   ) |   ) | ||||||
|  |  | ||||||
|   if ((! ${#installed[@]} == 0 )); then |   if ((! ${#installed[@]} == 0 )); then | ||||||
|   | |||||||
| @@ -3,11 +3,12 @@ | |||||||
| ######################################################################## | ######################################################################## | ||||||
| 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 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 +34,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,12 @@ | |||||||
| ######################################################################## | ######################################################################## | ||||||
| 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 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 +27,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_v01" | ||||||
| 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_v01" | ||||||
| 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,12 @@ | |||||||
| ######################################################################## | ######################################################################## | ||||||
| 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 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 +27,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,12 @@ | |||||||
| ######################################################################## | ######################################################################## | ||||||
| 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 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,12 @@ | |||||||
| ######################################################################## | ######################################################################## | ||||||
| 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 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 используется из файла настроек | ||||||
|   | |||||||
| @@ -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_v01" | ||||||
| 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 | ||||||
|   | |||||||
| @@ -3,11 +3,12 @@ | |||||||
| ######################################################################## | ######################################################################## | ||||||
| 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 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,5 +1,6 @@ | |||||||
| ##### 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 | ||||||
|   | |||||||
							
								
								
									
										204
									
								
								winehelper
									
									
									
									
									
								
							
							
						
						
									
										204
									
								
								winehelper
									
									
									
									
									
								
							| @@ -96,6 +96,7 @@ 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 | ||||||
|  |  | ||||||
| @@ -141,8 +142,13 @@ 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 ##### | ||||||
| @@ -358,9 +364,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 | ||||||
| @@ -368,9 +374,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 | ||||||
| @@ -427,10 +433,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" ]] | ||||||
| @@ -487,7 +496,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 | ||||||
| @@ -522,14 +530,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" | ||||||
| @@ -583,7 +585,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 | ||||||
| @@ -591,7 +593,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 | ||||||
|             ;; |             ;; | ||||||
| @@ -696,53 +699,49 @@ 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 \ |             unpack "$wine_package" "$WH_DIST_DIR/" | ||||||
|             && unpack "$WINE_PACKAGE" "$WH_DIST_DIR/" |             try_remove_file "$wine_package" | ||||||
|             then |  | ||||||
|                 echo "$WH_WINE_USE" > "$WH_DIST_DIR/$WH_WINE_USE/version" |  | ||||||
|                 try_remove_file "$WINE_PACKAGE" |  | ||||||
|             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" | ||||||
| @@ -750,16 +749,16 @@ init_wine_ver () { | |||||||
|             try_download "$CPCSP_PROXY_URL" "$WH_TMP_DIR/$CPCSP_PROXY_NAME.tar.xz" check256sum |             try_download "$CPCSP_PROXY_URL" "$WH_TMP_DIR/$CPCSP_PROXY_NAME.tar.xz" check256sum | ||||||
|             unpack "$WH_TMP_DIR/$CPCSP_PROXY_NAME.tar.xz" "$WH_TMP_DIR" |             unpack "$WH_TMP_DIR/$CPCSP_PROXY_NAME.tar.xz" "$WH_TMP_DIR" | ||||||
|  |  | ||||||
|             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 ! rpm -q "wine" 1>/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" | ||||||
| @@ -940,6 +939,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" | ||||||
| @@ -969,10 +969,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 | ||||||
| @@ -981,18 +981,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" | ||||||
| @@ -1094,7 +1099,7 @@ init_wineprefix () { | |||||||
|     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 | ||||||
| @@ -1276,21 +1281,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" | ||||||
| @@ -1403,12 +1422,14 @@ create_base_pfx () { | |||||||
|     export WINEPREFIX="$1" |     export WINEPREFIX="$1" | ||||||
|     check_prefix_var |     check_prefix_var | ||||||
|  |  | ||||||
|     local prefix_dir="$WINEPREFIX" |     local prefix_dir drive_c_dir users_dir archive_path | ||||||
|     local drive_c_dir="$prefix_dir/drive_c" |     prefix_dir="$WINEPREFIX" | ||||||
|     local users_dir="$drive_c_dir/users" |     drive_c_dir="$prefix_dir/drive_c" | ||||||
|     local archive_path="$WH_TMP_DIR/pfx/new_${PREFIX_NAME}.tar.xz" |     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" |     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 |     for wtlog in workaround isolate internal winxp win2 win7 win10 | ||||||
|     do sed -i "/$wtlog/d" "$prefix_dir/winetricks.log" |     do sed -i "/$wtlog/d" "$prefix_dir/winetricks.log" | ||||||
| @@ -1578,10 +1599,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" | ||||||
| @@ -1615,7 +1633,7 @@ 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 [имя_префикса]    создать резерную копию префикса | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user