- Updated to 1.9.24 development snapshot
- Support for unordered access views in Direct3D. - Many fixes in the regression tests. - Some more improvements in HID support. - Various bug fixes. - updated winetricks OBS-URL: https://build.opensuse.org/package/show/Emulators/wine?expand=0&rev=385
This commit is contained in:
114
winetricks
114
winetricks
@@ -1,4 +1,8 @@
|
||||
#!/bin/sh
|
||||
# shellcheck disable=SC2030,SC2031
|
||||
# SC2030: Modification of WINE is local (to subshell caused by (..) group).
|
||||
# SC2031: WINE was modified in a subshell. That change might be lost
|
||||
# This has to be right after the shebang, see: https://github.com/koalaman/shellcheck/issues/779
|
||||
|
||||
# Name of this version of winetricks (YYYYMMDD)
|
||||
# (This doesn't change often, use the sha1sum of the file when reporting problems)
|
||||
@@ -758,11 +762,11 @@ winetricks_selfupdate_rollback()
|
||||
}
|
||||
|
||||
# Download a file
|
||||
# Usage: w_download_to packagename url [sha1sum [filename [cookie jar]]]
|
||||
# Usage: w_download_to (packagename|path to download file) url [sha1sum [filename [cookie jar]]]
|
||||
# Caches downloads in winetrickscache/$packagename
|
||||
w_download_to()
|
||||
{
|
||||
_W_packagename="$1"
|
||||
_W_packagename="$1" # or path to download file to
|
||||
_W_url="$2"
|
||||
_W_sum="$3"
|
||||
_W_file="$4"
|
||||
@@ -781,10 +785,14 @@ w_download_to()
|
||||
_W_file=$(basename "$_W_url")
|
||||
fi
|
||||
|
||||
if [ -z "${_W_packagename%%/*}" ] && pathchk -P "$_W_packagename" ; then
|
||||
_W_cache="$_W_packagename"
|
||||
if echo "${_W_packagename}" | grep -q -e '\/-' -e '^-'; then
|
||||
w_die "Invalid path ${_W_packagename} given"
|
||||
else
|
||||
_W_cache="$W_CACHE/$_W_packagename"
|
||||
if ! echo "${_W_packagename}" | grep -q '^/' ; then
|
||||
_W_cache="$W_CACHE/$_W_packagename"
|
||||
else
|
||||
_W_cache="$_W_packagename"
|
||||
fi
|
||||
fi
|
||||
|
||||
if test ! -d "$_W_cache"
|
||||
@@ -792,6 +800,26 @@ w_download_to()
|
||||
w_try mkdir -p "$_W_cache"
|
||||
fi
|
||||
|
||||
# If WINETRICKS_DOWNLOADER is set, ensure it is to a valid value (aria2c, curl, wget), if not, error.
|
||||
# If unset, fallback to checking for them in $PATH as before:
|
||||
|
||||
# shellcheck disable=2104
|
||||
case "${WINETRICKS_DOWNLOADER}" in
|
||||
aria2c|curl|wget) : ;;
|
||||
"") if [ -x "$(which aria2c 2>/dev/null)" ] ; then
|
||||
WINETRICKS_DOWNLOADER="aria2c"
|
||||
elif [ -x "$(which wget 2>/dev/null)" ] ; then
|
||||
WINETRICKS_DOWNLOADER="wget"
|
||||
elif [ -x "$(which curl 2>/dev/null)" ] ; then
|
||||
WINETRICKS_DOWNLOADER="curl"
|
||||
else
|
||||
w_die "Please install wget or aria2c (or, if those aren't available, curl)"
|
||||
fi
|
||||
;;
|
||||
*) w_die "Invalid value ${WINETRICKS_DOWNLOADER} given for WINETRICKS_DOWNLOADER. Possible values: aria2c, curl, wget"
|
||||
|
||||
esac
|
||||
|
||||
# Common values for aria2c/curl/wget
|
||||
# Connection timeout time (in seconds):
|
||||
WINETRICKS_DOWNLOADER_TIMEOUT=${WINETRICKS_DOWNLOADER_TIMEOUT:-15}
|
||||
@@ -866,8 +894,10 @@ w_download_to()
|
||||
aria2c_torify_opts="" ;;
|
||||
esac
|
||||
|
||||
if [ -x "$(which aria2c 2>/dev/null)" ]
|
||||
if [ "${WINETRICKS_DOWNLOADER}" = "aria2c" ]
|
||||
then
|
||||
# Note: aria2c wants = for most options or silently fails
|
||||
|
||||
# (Slightly fancy) aria2c support
|
||||
# See https://github.com/Winetricks/winetricks/issues/612
|
||||
# --daemon=false --enable-rpc=false to ensure aria2c doesnt go into the background after starting
|
||||
@@ -878,19 +908,19 @@ w_download_to()
|
||||
# ovewritten by the new aria2 process
|
||||
$torify aria2c \
|
||||
$aria2c_torify_opts \
|
||||
--connect-timeout "${WINETRICKS_DOWNLOADER_TIMEOUT}" \
|
||||
--connect-timeout="${WINETRICKS_DOWNLOADER_TIMEOUT}" \
|
||||
--continue \
|
||||
--daemon=false \
|
||||
--dir "$_W_cache" \
|
||||
--dir="$_W_cache" \
|
||||
--enable-rpc=false \
|
||||
--input-file='' \
|
||||
--max-connection-per-server=5 \
|
||||
--max-tries="$WINETRICKS_DOWNLOADER_RETRIES" \
|
||||
--out "$_W_file" \
|
||||
--out="$_W_file" \
|
||||
--save-session='' \
|
||||
--stream-piece-selector=geom \
|
||||
"$_W_url"
|
||||
elif [ -x "$(which wget 2>/dev/null)" ]
|
||||
elif [ "${WINETRICKS_DOWNLOADER}" = "wget" ]
|
||||
then
|
||||
# Use -nd to insulate ourselves from people who set -x in WGETRC
|
||||
# [*] --retry-connrefused works around the broken sf.net mirroring
|
||||
@@ -903,15 +933,17 @@ w_download_to()
|
||||
-O "$_W_file" \
|
||||
-nd \
|
||||
-c\
|
||||
--read-timeout=300 \
|
||||
--read-timeout 300 \
|
||||
--retry-connrefused \
|
||||
--timeout "${WINETRICKS_DOWNLOADER_TIMEOUT}" \
|
||||
--tries="$WINETRICKS_DOWNLOADER_RETRIES" \
|
||||
--tries "$WINETRICKS_DOWNLOADER_RETRIES" \
|
||||
${_W_cookiejar:+--load-cookies "$_W_cookiejar"} \
|
||||
${_W_agent:+--user-agent="$_W_agent"} \
|
||||
"$_W_url"
|
||||
elif [ -x "$(which curl 2>/dev/null)" ]
|
||||
elif [ "${WINETRICKS_DOWNLOADER}" = "curl" ]
|
||||
then
|
||||
# Note: curl does not accept '=' when passing options
|
||||
|
||||
# curl doesn't get filename from the location given by the server!
|
||||
# fortunately, we know it
|
||||
# shellcheck disable=SC2086
|
||||
@@ -920,12 +952,12 @@ w_download_to()
|
||||
-L \
|
||||
-o "$_W_file" \
|
||||
-C - \
|
||||
--retry="$WINETRICKS_DOWNLOADER_RETRIES" \
|
||||
--retry "$WINETRICKS_DOWNLOADER_RETRIES" \
|
||||
${_W_cookiejar:+--cookie "$_W_cookiejar"} \
|
||||
${_W_agent:+--user-agent "$_W_agent"} \
|
||||
"$_W_url"
|
||||
else
|
||||
w_die "Please install wget or aria2c (or, if those aren't available, curl)"
|
||||
w_die "Here be dragons"
|
||||
fi
|
||||
if test $? = 0
|
||||
then
|
||||
@@ -1600,13 +1632,14 @@ w_ahk_do()
|
||||
chmod +x "$W_CACHE/ahk/AutoHotkey.exe"
|
||||
fi
|
||||
|
||||
_W_CR=$(printf \\\\r)
|
||||
cat <<_EOF_ | sed "s/\$/$_W_CR/" > "$W_TMP"/tmp.ahk
|
||||
# Previously this used printf + sed, but that was broken with BSD sed (FreeBSD/OS X):
|
||||
# https://github.com/Winetricks/winetricks/issues/697
|
||||
# So now using trying awk instead (next, perl):
|
||||
cat <<_EOF_ | awk 'sub("$", "\r")' > "$W_TMP"/tmp.ahk
|
||||
w_opt_unattended = ${W_OPT_UNATTENDED:-0}
|
||||
$@
|
||||
_EOF_
|
||||
w_try "$WINE" "$W_CACHE_WIN\\ahk\\AutoHotkey.exe" "$W_TMP_WIN"\\tmp.ahk
|
||||
unset _W_CR
|
||||
}
|
||||
|
||||
# Function to protect Wine-specific sections of code.
|
||||
@@ -8539,6 +8572,30 @@ load_vcrun2008()
|
||||
w_override_dlls native,builtin atl90 msvcm90 msvcp90 msvcr90 vcomp90
|
||||
w_try_cd "$W_CACHE/$W_PACKAGE"
|
||||
w_try "$WINE" "$file1" $W_UNATTENDED_SLASH_Q
|
||||
|
||||
case "$W_ARCH" in
|
||||
win64)
|
||||
# Also install the 64-bit version
|
||||
# 2016/11/15: a7c83077b8a28d409e36316d2d7321fa0ccdb7e8
|
||||
w_download https://download.microsoft.com/download/5/D/8/5D8C65CB-C849-4025-8E95-C3966CAFD8AE/vcredist_x64.exe a7c83077b8a28d409e36316d2d7321fa0ccdb7e8
|
||||
if w_workaround_wine_bug 30713 "Manually extracting the 64-bit dlls"
|
||||
then
|
||||
rm -f "$W_TMP"/* # Avoid permission error
|
||||
w_try_cabextract --directory="$W_TMP" vcredist_x64.exe
|
||||
w_try_cabextract --directory="$W_TMP" "$W_TMP/vc_red.cab"
|
||||
|
||||
w_try cp "$W_TMP"/atl90.dll.30729.6161.Microsoft_VC90_ATL_x64.QFE "$W_SYSTEM64_DLLS"/atl90.dll
|
||||
w_try cp "$W_TMP"/mfc90.dll.30729.6161.Microsoft_VC90_MFC_x64.QFE "$W_SYSTEM64_DLLS"/mfc90.dll
|
||||
w_try cp "$W_TMP"/mfcm90.dll.30729.6161.Microsoft_VC90_MFC_x64.QFE "$W_SYSTEM64_DLLS"/mfcm90.dll
|
||||
w_try cp "$W_TMP"/msvcm90.dll.30729.6161.Microsoft_VC90_CRT_x64.QFE "$W_SYSTEM64_DLLS"/msvcm90.dll
|
||||
w_try cp "$W_TMP"/msvcp90.dll.30729.6161.Microsoft_VC90_CRT_x64.QFE "$W_SYSTEM64_DLLS"/msvcp90.dll
|
||||
w_try cp "$W_TMP"/msvcr90.dll.30729.6161.Microsoft_VC90_CRT_x64.QFE "$W_SYSTEM64_DLLS"/msvcr90.dll
|
||||
w_try cp "$W_TMP"/vcomp90.dll.30729.6161.Microsoft_VC90_OpenMP_x64.QFE "$W_SYSTEM64_DLLS"/vcomp90.dll
|
||||
else
|
||||
w_try "$WINE" vcredist_x64.exe $W_UNATTENDED_SLASH_Q
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
#----------------------------------------------------------------
|
||||
@@ -10819,11 +10876,11 @@ load_mt4()
|
||||
w_try_cd "$W_CACHE/$W_PACKAGE"
|
||||
w_ahk_do "
|
||||
Run, ${file1}
|
||||
WinWait, MetaTrader 4 Setup, license agreement
|
||||
WinWait, MetaTrader Setup, license agreement
|
||||
ControlClick, Button1
|
||||
Sleep 100
|
||||
ControlClick, Button3
|
||||
WinWait, MetaTrader 4 Setup, Installation successfully completed
|
||||
WinWait, MetaTrader Setup, Installation successfully completed
|
||||
ControlClick, Button4
|
||||
Process, Wait, terminal.exe
|
||||
Process, Close, terminal.exe
|
||||
@@ -10980,23 +11037,6 @@ $W_CACHE/$W_PACKAGE/key.txt and rerun."
|
||||
|
||||
#----------------------------------------------------------------
|
||||
|
||||
w_metadata opera apps \
|
||||
title="Opera 11" \
|
||||
publisher="Opera Software" \
|
||||
year="2011" \
|
||||
media="download" \
|
||||
file1="Opera_1150_en_Setup.exe" \
|
||||
installed_exe1="$W_PROGRAMS_X86_WIN/Opera/opera.exe"
|
||||
|
||||
load_opera()
|
||||
{
|
||||
w_download ftp://ftp.opera.com/pub/opera/win/1150/en/Opera_1150_en_Setup.exe df50c7aed50e92af858e8834f833dd0543014b46
|
||||
w_try_cd "$W_CACHE/$W_PACKAGE"
|
||||
w_try "$WINE" "$file1" ${W_OPT_UNATTENDED:+ /silent /launchopera 0 /allusers}
|
||||
}
|
||||
|
||||
#----------------------------------------------------------------
|
||||
|
||||
w_metadata picasa39 apps \
|
||||
title="Picasa 3.9" \
|
||||
publisher="Google" \
|
||||
|
Reference in New Issue
Block a user