forked from CastroFidel/winehelper
		
	added support wine-cpcsp_proxy
This commit is contained in:
		| @@ -20,3 +20,6 @@ https://github.com/HansKristian-Work/vkd3d-proton | ||||
|  | ||||
| WINETRICKS: | ||||
| https://github.com/Winetricks/winetricks | ||||
|  | ||||
| WINE-CPCSP_PROXY: | ||||
| https://github.com/Etersoft/wine-cpcsp_proxy | ||||
|   | ||||
| @@ -13,6 +13,9 @@ fb7fdfde96de10a1b3b051bdf2727b6a7c1768b878483726454dd6726e9e0193  wine-9.0.14-al | ||||
|  | ||||
| df1a940d2e072a884524f66a16e0f0ef74048bc6a6642b96eb257528a522109f  vkd3d-proton-1.1-2602.tar.xz | ||||
|  | ||||
| ##### CPCSP_PROXY ##### | ||||
| 3153088ff28d6af415c3504a421e5382554dbb305f38d5a87dd84df90d680421  wine-cpcsp_proxy-0.6.1-alt1.tar.xz | ||||
|  | ||||
| ##### PREFIX ##### | ||||
|  | ||||
| 0e86cd9958d1bd1bfac99e23165a091a4ea2fa3e693c551f69aabeed5f681fea  defpfx_x86_v01.tar.xz | ||||
|   | ||||
							
								
								
									
										61
									
								
								winehelper
									
									
									
									
									
								
							
							
						
						
									
										61
									
								
								winehelper
									
									
									
									
									
								
							| @@ -67,6 +67,9 @@ check_variables WINEFSYNC "0" | ||||
| check_variables WINEARCH "win64" # or "win32" | ||||
| check_variables WH_WINE_USE "wine_x_tkg_10-0_amd64" # or system | ||||
|  | ||||
| check_variables WH_USE_CPCSP_PROXY "0" | ||||
| check_variables CPCSP_PROXY_VER "0.6.1-alt1" | ||||
|  | ||||
| check_variables STAGING_SHARED_MEMORY "1" | ||||
| check_variables WINE_LARGE_ADDRESS_AWARE "1" | ||||
| check_variables WINE_FULLSCREEN_FSR "1" | ||||
| @@ -668,7 +671,14 @@ init_wine_ver () { | ||||
|             export GST_PLUGIN_SYSTEM_PATH_1_0="${WINEDIR}/lib/gstreamer-1.0" | ||||
|         fi | ||||
|  | ||||
|         if [[ "${WINEARCH}" == "win64" ]] ; then | ||||
|         [[ ! -f "${WINEDIR}/version" ]] && echo "${WH_WINE_USE}" > "${WINEDIR}/version" | ||||
|  | ||||
|         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 | ||||
|  | ||||
|         if [[ -d "${WINEDIR}/lib64" ]] ; then | ||||
|             export LD_LIBRARY_PATH+=":${WINEDIR}/lib64" | ||||
|             export WINEDLLPATH+=":${WINEDIR}/lib64/wine" | ||||
|             if [[ -d "${WINEDIR}/lib64/gstreamer-1.0" ]] ; then | ||||
| @@ -676,12 +686,28 @@ init_wine_ver () { | ||||
|             fi | ||||
|         fi | ||||
|  | ||||
|         [[ ! -f "${WINEDIR}/version" ]] && echo "${WH_WINE_USE}" > "${WINEDIR}/version" | ||||
|         if [[ $WH_USE_CPCSP_PROXY == "1" ]] \ | ||||
|         && ! grep -q "$CPCSP_PROXY_VER" "${WINEDIR}/cpcsp_proxy.ver" | ||||
|         then | ||||
|             CPCSP_PROXY_NAME="wine-cpcsp_proxy-$CPCSP_PROXY_VER" | ||||
|             CPCSP_PROXY_URL="$CLOUD_URL/$CPCSP_PROXY_NAME.tar.xz" | ||||
|  | ||||
|         if [[ ! -d "${WINEDIR}/lib64/" ]] && [[ -d "${WINEDIR}/lib/wine/x86_64-unix" ]] ; then | ||||
|             create_new_dir "${WINEDIR}/lib64/wine" | ||||
|             mv -f "${WINEDIR}/lib/wine/x86_64-unix" "${WINEDIR}/lib64/wine/" | ||||
|             mv -f "${WINEDIR}/lib/wine/x86_64-windows" "${WINEDIR}/lib64/wine/" | ||||
|             if [[ ! -f "$WH_TMP_DIR/$CPCSP_PROXY_NAME" ]] ; then | ||||
|                 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" | ||||
|             fi | ||||
|  | ||||
|             cp -fr "$WH_TMP_DIR/$CPCSP_PROXY_NAME/"i386-* "${WINEDIR}/lib/wine/" | ||||
|             if [[ -d "${WINEDIR}/lib64" ]] ; then | ||||
|                 cp -fr "$WH_TMP_DIR/$CPCSP_PROXY_NAME/"x86_64-* "${WINEDIR}/lib64/wine/" | ||||
|             fi | ||||
|             try_remove_dir "$WH_TMP_DIR/$CPCSP_PROXY_NAME" | ||||
|             echo "$CPCSP_PROXY_VER" > "${WINEDIR}/cpcsp_proxy.ver" | ||||
|         fi | ||||
|     else | ||||
|         # use system WINE | ||||
| @@ -989,6 +1015,29 @@ init_wineprefix () { | ||||
|         try_remove_file "$WRAPPER" | ||||
|     fi | ||||
|  | ||||
|     # настраиваем префикс для работы с cpcsp_proxy | ||||
|     if [[ $WH_USE_CPCSP_PROXY == "1" ]] ; then | ||||
|         for cpcsp_proxy_file in "cpcsp_proxy.dll" "cpcsp_proxy_setup.exe" ; do | ||||
|             try_copy_wine_dll_to_pfx_64 "$cpcsp_proxy_file" | ||||
|             try_copy_wine_dll_to_pfx_32 "$cpcsp_proxy_file" | ||||
|         done | ||||
|  | ||||
|         if ! grep -q "cpcsp_proxy.dll" "$WINEPREFIX/system.reg" ; then | ||||
|             if [[ "$WINEARCH" == "win32" ]] | ||||
|             then cpcsp_proxy_cmd=("$WINELOADER" "cpcsp_proxy_setup.exe") | ||||
|             else cpcsp_proxy_cmd=("${WINELOADER}64" "cpcsp_proxy_setup.exe") | ||||
|             fi | ||||
|  | ||||
|             print_info "Запускаем настройку cpcsp_proxy:" | ||||
|             echo "${cpcsp_proxy_cmd[*]}" | ||||
|             if "${cpcsp_proxy_cmd[@]}" | ||||
|             then print_info "Настройка cpcsp_proxy успешно завершена." | ||||
|             else fatal "Ошибка во время настройки cpcsp_proxy." | ||||
|             fi | ||||
|             wait_wineserver | ||||
|         fi | ||||
|     fi | ||||
|  | ||||
|     echo "# переменные последнего использования префикса:" > "$WINEPREFIX/last.conf" | ||||
|     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 \ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user