forked from CastroFidel/winehelper
		
	bundled winetricks in use
This commit is contained in:
		
							
								
								
									
										31
									
								
								winehelper
									
									
									
									
									
								
							
							
						
						
									
										31
									
								
								winehelper
									
									
									
									
									
								
							| @@ -29,6 +29,9 @@ else | ||||
|     check_variables DEBUG "0" | ||||
| fi | ||||
|  | ||||
| ##### WINETRICKS VERSION ##### | ||||
| WINETRICKS_VERSION="20250102" | ||||
|  | ||||
| ##### DEFAULT VARIABLES ##### | ||||
| SCRIPT_NAME="$(basename "$0")" | ||||
| if [[ "$(realpath "$0")" == "/usr/bin/$SCRIPT_NAME" ]] ; then | ||||
| @@ -50,6 +53,7 @@ WH_IMAGE_PATH="$DATA_PATH/image" | ||||
| WH_DB_DIR="$DATA_PATH/database" | ||||
| WH_AUTOINSTALL_DIR="$DATA_PATH/autoinstall" | ||||
| WH_MANUALINSTALL_DIR="$DATA_PATH/manualinstall" | ||||
| WH_WINETRICKS="$DATA_PATH/winetricks_$WINETRICKS_VERSION" | ||||
|  | ||||
| WH_MENU_DIR="$HOME/.local/share/applications/WineHelper" | ||||
| WH_MENU_CATEGORY="$HOME/.local/share/desktop-directories/WineHelper.directory" | ||||
| @@ -1011,25 +1015,6 @@ kill_autostart () { | ||||
|     done | ||||
| } | ||||
|  | ||||
| update_winetricks () { | ||||
|     W_TRX_URL="https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks" | ||||
|     W_TRX_EXT_VER="$(curl -s --list-only "$W_TRX_URL" | grep -i 'WINETRICKS_VERSION=' | sed 's/WINETRICKS_VERSION=//')" | ||||
|     print_info "Актуальная версия winetricks: $W_TRX_EXT_VER" | ||||
|     if [[ -f "$WH_TMP_DIR/winetricks" ]] ; then | ||||
|         W_TRX_INT_VER="$(cat "$WH_TMP_DIR/winetricks" | grep -i 'WINETRICKS_VERSION=' | sed 's/WINETRICKS_VERSION=//')" | ||||
|         print_info "Установленная портативная версия winetricks: $W_TRX_INT_VER" | ||||
|     fi | ||||
|     if [[ -n "$W_TRX_EXT_VER" ]] && [[ "$W_TRX_INT_VER" != "$W_TRX_EXT_VER" ]] ; then | ||||
|         if try_download "$W_TRX_URL" "$WH_TMP_DIR/winetricks_new" ; then | ||||
|             mv -f "$WH_TMP_DIR/winetricks_new" "$WH_TMP_DIR/winetricks" | ||||
|             W_TRX_INT_VER="$(cat "$WH_TMP_DIR/winetricks" | grep -i 'WINETRICKS_VERSION=' | sed 's/_VERSION=//')" | ||||
|             print_info "Портативная версия winetricks обновлена до (${W_TRX_INT_VER})" | ||||
|             chmod u+x "$WH_TMP_DIR/winetricks" | ||||
|         fi | ||||
|     fi | ||||
|     export WINETRICKS="$WH_TMP_DIR/winetricks" | ||||
| } | ||||
|  | ||||
| use_winetricks () { | ||||
|     if [[ -n "$INSTALL_DLL" ]] ; then | ||||
|         WH_DLL_INSTALL="$(echo "$INSTALL_DLL $WH_DLL_INSTALL" | awk '{ for(i=1;i<=NF;i++){a[$i]++} }END{ for(i in a){printf("%s ",i)} }' )" | ||||
| @@ -1052,15 +1037,13 @@ use_winetricks () { | ||||
|             fi | ||||
|         done | ||||
|         if [[ "$USE_WT_FROM_DB" == "1" ]] ; then | ||||
|             if update_winetricks ; then | ||||
|                 print_info "Пробуем установить библиотеки: ${WH_DLL_NEED_INSTALL}" | ||||
|             print_info "Пробуем установить компоненты: ${WH_DLL_NEED_INSTALL}" | ||||
|             print_info "Запускаем WINETRICKS..." | ||||
|             export WINETRICKS_DOWNLOADER="curl" | ||||
|                 env WINEDLLOVERRIDES="winegstreamer=" "$WH_TMP_DIR/winetricks" -q ${WH_DLL_NEED_INSTALL} | ||||
|             env WINEDLLOVERRIDES="winegstreamer=" "$WH_WINETRICKS" -q ${WH_DLL_NEED_INSTALL} | ||||
|             wait_wineserver | ||||
|         fi | ||||
|     fi | ||||
|     fi | ||||
| } | ||||
|  | ||||
| kill_wine () { | ||||
| @@ -1367,7 +1350,7 @@ case "${1,,}" in | ||||
|     winereg|regedit) prepair_wine ; wine_run "regedit" ;; | ||||
|     winefile|explorer) prepair_wine ; wine_run "winefile" ;; | ||||
|     wineconsole|cmd) prepair_wine ; wine_run "wineconsole" ;; | ||||
|     winetricks) shift ; update_winetricks ; prepair_wine ; "$WINETRICKS" -q "$@" ;; | ||||
|     winetricks) shift ; prepair_wine ; "$WINETRICKS" -q "$@" ;; | ||||
|     desktop) shift ; create_desktop "$@" ; exit 0 ;; | ||||
|     install|-i) shift ; run_autoinstall "$@" ;; | ||||
|     installed) shift ; check_installed_programs "$1" ;; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user