SHA256
1
0
forked from pool/wine

Accepting request 293096 from Emulators

- updated winetricks script to 20150316, they moved to github:
  https://github.com/Winetricks/winetricks

OBS-URL: https://build.opensuse.org/request/show/293096
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/wine?expand=0&rev=167
This commit is contained in:
Dominique Leuenberger 2015-03-25 20:06:07 +00:00 committed by Git OBS Bridge
commit a7b5b4a51b
3 changed files with 376 additions and 171 deletions

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Tue Mar 24 14:37:30 UTC 2015 - meissner@suse.com
- updated winetricks script to 20150316, they moved to github:
https://github.com/Winetricks/winetricks
------------------------------------------------------------------- -------------------------------------------------------------------
Fri Mar 20 13:54:06 UTC 2015 - meissner@suse.com Fri Mar 20 13:54:06 UTC 2015 - meissner@suse.com

View File

@ -65,8 +65,8 @@ Url: http://www.winehq.org/
Source0: http://downloads.sourceforge.net/project/wine/Source/%{name}-%{version}.tar.bz2 Source0: http://downloads.sourceforge.net/project/wine/Source/%{name}-%{version}.tar.bz2
Source41: wine.keyring Source41: wine.keyring
Source42: http://downloads.sourceforge.net/project/wine/Source/%{name}-%{version}.tar.bz2.sign Source42: http://downloads.sourceforge.net/project/wine/Source/%{name}-%{version}.tar.bz2.sign
Source1: winetricks Source1: https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
Source11: winetricks.1 Source11: https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks.1
Source2: http://kegel.com/wine/wisotool Source2: http://kegel.com/wine/wisotool
Source3: README.SUSE Source3: README.SUSE
Source4: wine.desktop Source4: wine.desktop

View File

@ -2,7 +2,7 @@
# Name of this version of winetricks (YYYYMMDD) # Name of this version of winetricks (YYYYMMDD)
# (This doesn't change often, use the sha1sum of the file when reporting problems) # (This doesn't change often, use the sha1sum of the file when reporting problems)
WINETRICKS_VERSION=20141125 WINETRICKS_VERSION=20150316
# This is a utf-8 file # This is a utf-8 file
# You should see an o with two dots over it here [ö] # You should see an o with two dots over it here [ö]
@ -42,9 +42,9 @@ WINETRICKS_VERSION=20141125
# #
# Copyright # Copyright
# Copyright (C) 2007-2014 Dan Kegel <dank!kegel.com> # Copyright (C) 2007-2014 Dan Kegel <dank!kegel.com>
# Copyright (C) 2008-2014 Austin English <austinenglish!gmail.com> # Copyright (C) 2008-2015 Austin English <austinenglish!gmail.com>
# Copyright (C) 2010-2011 Phil Blankenship <phillip.e.blankenship!gmail.com> # Copyright (C) 2010-2011 Phil Blankenship <phillip.e.blankenship!gmail.com>
# Copyright (C) 2010-2012 Shannon VanWagner <shannon.vanwagner!gmail.com> # Copyright (C) 2010-2015 Shannon VanWagner <shannon.vanwagner!gmail.com>
# Copyright (C) 2010 Belhorma Bendebiche <amro256!gmail.com> # Copyright (C) 2010 Belhorma Bendebiche <amro256!gmail.com>
# Copyright (C) 2010 Eleazar Galano <eg.galano!gmail.com> # Copyright (C) 2010 Eleazar Galano <eg.galano!gmail.com>
# Copyright (C) 2010 Travis Athougies <iammisc!gmail.com> # Copyright (C) 2010 Travis Athougies <iammisc!gmail.com>
@ -61,7 +61,7 @@ WINETRICKS_VERSION=20141125
# Copyright (C) 2011 Łukasz Wojniłowicz # Copyright (C) 2011 Łukasz Wojniłowicz
# Copyright (C) 2011 Matthew Bozarth # Copyright (C) 2011 Matthew Bozarth
# Copyright (C) 2013-2014 Andrey Gusev <andrey.goosev!gmail.com> # Copyright (C) 2013-2014 Andrey Gusev <andrey.goosev!gmail.com>
# Copyright (C) 2013 Hillwood Yang # Copyright (C) 2013-2015 Hillwood Yang <hillwood!opensuse.org>
# #
# License # License
# This program is free software; you can redistribute it and/or # This program is free software; you can redistribute it and/or
@ -142,6 +142,18 @@ XDG_CACHE_HOME="${XDG_CACHE_HOME:-$HOME/.cache}"
W_PREFIXES_ROOT="${WINE_PREFIXES:-$XDG_DATA_HOME/wineprefixes}" W_PREFIXES_ROOT="${WINE_PREFIXES:-$XDG_DATA_HOME/wineprefixes}"
# For temp files before $WINEPREFIX is available:
if [ -x "`which mktemp 2>/dev/null`" ]
then
W_TMP_EARLY="`mktemp -d "${TMPDIR:-/tmp}/winetricks.XXXXXXXX"`"
W_TMP_EARLY_CLEAN=1
elif [ -w "$TMPDIR" ]
then
W_TMP_EARLY="$TMPDIR"
else
W_TMP_EARLY="/tmp"
fi
# ftp.microsoft.com resolves to two different IP addresses, one of which is broken # ftp.microsoft.com resolves to two different IP addresses, one of which is broken
ftp_microsoft_com=64.4.17.176 ftp_microsoft_com=64.4.17.176
@ -437,18 +449,25 @@ w_expand_env()
winetricks_early_wine cmd.exe /c echo "%$1%" winetricks_early_wine cmd.exe /c echo "%$1%"
} }
# get sha1sum string and set $_W_gotsum to it
w_get_sha1sum()
{
_W_file=$1
_W_gotsum=`$WINETRICKS_SHA1SUM < "$_W_file" | sed 's/(stdin)= //;s/ .*//'`
}
# verify an sha1sum # verify an sha1sum
w_verify_sha1sum() w_verify_sha1sum()
{ {
_W_vs_wantsum=$1 _W_vs_wantsum=$1
_W_vs_file=$2 _W_vs_file=$2
_W_vs_gotsum=`$WINETRICKS_SHA1SUM < $_W_vs_file | sed 's/ .*//'` w_get_sha1sum "$_W_vs_file"
if [ "$_W_vs_gotsum"x != "$_W_vs_wantsum"x ] if [ "$_W_gotsum"x != "$_W_vs_wantsum"x ]
then then
w_die "sha1sum mismatch! Rename $_W_vs_file and try again." w_die "sha1sum mismatch! Rename $_W_vs_file and try again."
fi fi
unset _W_vs_wantsum _W_vs_file _W_vs_gotsum unset _W_vs_wantsum _W_vs_file _W_gotsum
} }
# wget outputs progress messages that look like this: # wget outputs progress messages that look like this:
@ -601,8 +620,8 @@ w_download_to()
fi fi
fi fi
# If checksum matches, declare success and exit loop # If checksum matches, declare success and exit loop
gotsum=`$WINETRICKS_SHA1SUM < "$_W_cache/$_W_file" | sed 's/(stdin)= //;s/ .*//'` w_get_sha1sum "$_W_cache/$_W_file"
if [ "$gotsum"x = "$3"x ] if [ "$_W_gotsum"x = "$3"x ]
then then
checksum_ok=1 checksum_ok=1
break break
@ -850,7 +869,7 @@ w_download_manual()
w_steam_safemode() w_steam_safemode()
{ {
cat > "$W_TMP/steamconfig.pl" <<"_EOF_" cat > "$W_TMP/steamconfig.pl" <<"_EOF_"
#!/usr/bin/perl #!/usr/bin/env perl
# Parse steam's localconfig.vcf, add settings to it, and write it out again # Parse steam's localconfig.vcf, add settings to it, and write it out again
# The file is a recursive dictionary # The file is a recursive dictionary
# #
@ -2124,7 +2143,7 @@ REGEDIT4
_EOF_ _EOF_
# too verbose # too verbose
w_try_regedit "$W_TMP_WIN"\\_register-font.reg w_try_regedit "$W_TMP_WIN"\\_register-font.reg
cp "$W_TMP"/*.reg /tmp/_reg$$.reg cp "$W_TMP"/*.reg "$W_TMP_EARLY"/_reg$$.reg
# Wine also updates the win9x fonts key, so let's do that, too # Wine also updates the win9x fonts key, so let's do that, too
cat > "$W_TMP"/_register-font.reg <<_EOF_ cat > "$W_TMP"/_register-font.reg <<_EOF_
@ -2134,7 +2153,7 @@ REGEDIT4
"$font"="$file" "$font"="$file"
_EOF_ _EOF_
w_try_regedit "$W_TMP_WIN"\\_register-font.reg w_try_regedit "$W_TMP_WIN"\\_register-font.reg
cp "$W_TMP"/*.reg /tmp/_reg$$-2.reg cp "$W_TMP"/*.reg "$W_TMP_EARLY"/_reg$$-2.reg
} }
w_register_font_replacement() w_register_font_replacement()
@ -2174,18 +2193,26 @@ _EOF_
#---- Private Functions ---- #---- Private Functions ----
winetricks_print_version() { winetricks_get_sha1sum_prog() {
# Also print sha1, since WINETRICKS_VERSION isn't incremented often # Mac folks tend to not have sha1sum, but we can make do with openssl
if [ -x "`which sha1sum 2>/dev/null`" ] if [ -x "`which sha1sum 2>/dev/null`" ]
then then
winetricks_sha1=`sha1sum < $0 | sed 's/ .*//'` WINETRICKS_SHA1SUM="sha1sum"
elif [ -x "`which openssl 2>/dev/null`" ] elif [ -x "`which openssl 2>/dev/null`" ]
then then
winetricks_sha1=`openssl dgst -sha1 < $0 | sed 's/ .*//'` WINETRICKS_SHA1SUM="openssl dgst -sha1"
else else
w_warn "No sha1sum utility available." w_die "No sha1sum utility available."
fi fi
echo "$WINETRICKS_VERSION - sha1sum: $winetricks_sha1" }
winetricks_print_version() {
# normally done by winetricks_init, but we don't want to set up the WINEPREFIX
# just to get the winetricks version:
winetricks_get_sha1sum_prog
w_get_sha1sum $0
echo "$WINETRICKS_VERSION - sha1sum: $_W_gotsum"
} }
# Run a small wine command for internal use # Run a small wine command for internal use
@ -2201,7 +2228,7 @@ winetricks_early_wine()
# gecko (winezeug bug 223). # gecko (winezeug bug 223).
# The tr removes carriage returns so expanded variables don't have crud on the end # The tr removes carriage returns so expanded variables don't have crud on the end
# The grep works around using new wineprefixes with old wine # The grep works around using new wineprefixes with old wine
WINEDEBUG=-all "$WINE" "$@" 2> /tmp/early_wine.err.txt | ( sed 's/.*1h.=//' | tr -d '\r' | grep -v "Module not found" || true) WINEDEBUG=-all "$WINE" "$@" 2> "$W_TMP_EARLY"/early_wine.err.txt | ( sed 's/.*1h.=//' | tr -d '\r' | grep -v "Module not found" || true)
} }
winetricks_detect_gui() winetricks_detect_gui()
@ -3380,7 +3407,7 @@ winetricks_is_mounted()
# If that fails, read volume name the hard way for each volume # If that fails, read volume name the hard way for each volume
# Have to use file to return results from implicit subshell # Have to use file to return results from implicit subshell
rm -f "/tmp/_W_tmp.$LOGNAME" rm -f "$W_TMP_EARLY/_W_tmp.$LOGNAME"
winetricks_list_mounts . | while true winetricks_list_mounts . | while true
do do
IFS= read _W_tmp IFS= read _W_tmp
@ -3392,17 +3419,17 @@ winetricks_is_mounted()
if test "$1" = "$_W_volname" if test "$1" = "$_W_volname"
then then
# Volume found! Want to return from function here, but can't # Volume found! Want to return from function here, but can't
echo "$_W_tmp" > "/tmp/_W_tmp.$LOGNAME" echo "$_W_tmp" > "$W_TMP_EARLY/_W_tmp.$LOGNAME"
break break
fi fi
done done
if test -f "/tmp/_W_tmp.$LOGNAME" if test -f "$W_TMP_EARLY/_W_tmp.$LOGNAME"
then then
# Volume found! Return from function. # Volume found! Return from function.
_W_dev=`cat "/tmp/_W_tmp.$LOGNAME" | sed 's/ .*//'` _W_dev=`cat "$W_TMP_EARLY/_W_tmp.$LOGNAME" | sed 's/ .*//'`
_W_mountpoint="`cat "/tmp/_W_tmp.$LOGNAME" | sed 's/^[^ ]* //'`" _W_mountpoint="`cat "$W_TMP_EARLY/_W_tmp.$LOGNAME" | sed 's/^[^ ]* //'`"
rm -f "/tmp/_W_tmp.$LOGNAME" rm -f "$W_TMP_EARLY/_W_tmp.$LOGNAME"
return 0 return 0
fi fi
@ -3461,6 +3488,8 @@ winetricks_cleanup()
fi fi
test "$WINETRICKS_CACHE_SYMLINK" && rm -f "$WINETRICKS_CACHE_SYMLINK" test "$WINETRICKS_CACHE_SYMLINK" && rm -f "$WINETRICKS_CACHE_SYMLINK"
test "$W_OPT_NOCLEAN" = 1 || rm -rf "$WINETRICKS_WORKDIR" test "$W_OPT_NOCLEAN" = 1 || rm -rf "$WINETRICKS_WORKDIR"
# if $W_TMP_EARLY was created by mktemp, remove it:
test "$W_OPT_NOCLEAN" = 1 || test "$W_TMP_EARLY_CLEAN" = 1 && rm -rf "$W_TMP_EARLY"
} }
winetricks_set_unattended() winetricks_set_unattended()
@ -3511,8 +3540,8 @@ winetricks_set_wineprefix()
# The folder-name is localized! # The folder-name is localized!
W_PROGRAMS_WIN="`w_expand_env ProgramFiles`" W_PROGRAMS_WIN="`w_expand_env ProgramFiles`"
case "$W_PROGRAMS_WIN" in case "$W_PROGRAMS_WIN" in
"") w_die "$WINE cmd.exe /c echo '%ProgramFiles%' returned empty string, error message '`cat /tmp/early_wine.err.txt`'";; "") w_die "$WINE cmd.exe /c echo '%ProgramFiles%' returned empty string, error message \"`cat $W_TMP_EARLY/early_wine.err.txt`\" ";;
%*) w_die "$WINE cmd.exe /c echo '%ProgramFiles%' returned unexpanded string '$W_PROGRAMS_WIN' ... can be caused a corrupt wineprefix, an old wine, or by not owning $WINEPREFIX" ;; %*) w_die "$WINE cmd.exe /c echo '%ProgramFiles%' returned unexpanded string '$W_PROGRAMS_WIN' ... this can be caused by a corrupt wineprefix, by an old wine, or by not owning $WINEPREFIX" ;;
*unknown*) w_die "$WINE cmd.exe /c echo '%ProgramFiles%' returned a string containing the word 'unknown', as if a voice had cried out in terror, and was suddenly silenced." ;; *unknown*) w_die "$WINE cmd.exe /c echo '%ProgramFiles%' returned a string containing the word 'unknown', as if a voice had cried out in terror, and was suddenly silenced." ;;
esac esac
@ -3651,7 +3680,7 @@ winetricks_init()
fi fi
# Ephemeral files for this run # Ephemeral files for this run
WINETRICKS_WORKDIR="/tmp/w.$LOGNAME.$$" WINETRICKS_WORKDIR="$W_TMP_EARLY/w.$LOGNAME.$$"
test "$W_OPT_NOCLEAN" = 1 || rm -rf "$WINETRICKS_WORKDIR" test "$W_OPT_NOCLEAN" = 1 || rm -rf "$WINETRICKS_WORKDIR"
# Registering a verb creates a file in WINETRICKS_METADATA # Registering a verb creates a file in WINETRICKS_METADATA
@ -3680,19 +3709,10 @@ winetricks_init()
# whether to use shared wineprefix (1) or unique wineprefix for each app (0) # whether to use shared wineprefix (1) or unique wineprefix for each app (0)
WINETRICKS_OPT_SHAREDPREFIX=${WINETRICKS_OPT_SHAREDPREFIX:-0} WINETRICKS_OPT_SHAREDPREFIX=${WINETRICKS_OPT_SHAREDPREFIX:-0}
# Mac folks tend to not have sha1sum, but we can make do with openssl
if [ -x "`which sha1sum 2>/dev/null`" ]
then
WINETRICKS_SHA1SUM="sha1sum"
elif [ -x "`which openssl 2>/dev/null`" ]
then
WINETRICKS_SHA1SUM="openssl dgst -sha1"
else
w_die "No sha1sum utility available."
fi
WINETRICKS_SOURCEFORGE=http://downloads.sourceforge.net WINETRICKS_SOURCEFORGE=http://downloads.sourceforge.net
winetricks_get_sha1sum_prog
#---- Public Variables ---- #---- Public Variables ----
# Where application installers are cached # Where application installers are cached
@ -3927,7 +3947,7 @@ winetricks_handle_option()
if ! test "$WINETRICKS_LIB" if ! test "$WINETRICKS_LIB"
then then
WINETRICKS_SRCDIR=`dirname "$0"` WINETRICKS_SRCDIR=`dirname "$0"`
WINETRICKS_SRCDIR=`cd "$WINETRICKS_SRCDIR"; /bin/pwd` WINETRICKS_SRCDIR=`cd "$WINETRICKS_SRCDIR"; pwd`
# Which GUI helper to use (none/zenity/kdialog). See winetricks_detect_gui. # Which GUI helper to use (none/zenity/kdialog). See winetricks_detect_gui.
WINETRICKS_GUI=none WINETRICKS_GUI=none
@ -4731,6 +4751,37 @@ load_directx9()
#---------------------------------------------------------------- #----------------------------------------------------------------
w_metadata dpvoice dlls \
title="Microsoft dpvoice dpvvox dpvacm Audio dlls" \
publisher="Microsoft" \
year="2002" \
media="download" \
file1="../directx9/directx_feb2010_redist.exe" \
installed_file1="$W_SYSTEM32_DLLS_WIN/dpvoice.dll" \
installed_file2="$W_SYSTEM32_DLLS_WIN/dpvvox.dll" \
installed_file2="$W_SYSTEM32_DLLS_WIN/dpvacm.dll"
load_dpvoice()
{
helper_directx_dl
w_try_cabextract -d "$W_TMP" -L -F 'dxnt.cab' "$W_CACHE"/directx9/$DIRECTX_NAME
for x in "$W_TMP"/*.cab
do
w_try_cabextract -d "$W_SYSTEM32_DLLS" -L -F 'dpvoice.dll' "$x"
w_try_cabextract -d "$W_SYSTEM32_DLLS" -L -F 'dpvvox.dll' "$x"
w_try_cabextract -d "$W_SYSTEM32_DLLS" -L -F 'dpvacm.dll' "$x"
done
w_try_regsvr dpvoice.dll
w_try_regsvr dpvvox.dll
w_try_regsvr dpvacm.dll
w_override_dlls native dpvoice
w_override_dlls native dpvvox
w_override_dlls native dpvacm
}
#----------------------------------------------------------------
w_metadata dsdmo dlls \ w_metadata dsdmo dlls \
title="MS dsdmo.dll" \ title="MS dsdmo.dll" \
publisher="Microsoft" \ publisher="Microsoft" \
@ -6524,6 +6575,28 @@ load_pngfilt()
#---------------------------------------------------------------- #----------------------------------------------------------------
w_metadata qdvd dlls \
title="qdvd.dll (from Directx 9 user redistributable)" \
publisher="Microsoft" \
year="2010" \
media="download" \
file1="../directx9/directx_feb2010_redist.exe" \
installed_file1="$W_SYSTEM32_DLLS_WIN/qdvd.dll"
load_qdvd()
{
helper_directx_dl
w_try_cabextract -d "$W_TMP" -L -F dxnt.cab "$W_CACHE"/directx9/$DIRECTX_NAME
w_try_cabextract -d "$W_SYSTEM32_DLLS" -L -F qdvd.dll "$W_TMP/dxnt.cab"
w_try_regsvr qdvd.dll
w_override_dlls native qdvd
}
#----------------------------------------------------------------
w_metadata quartz dlls \ w_metadata quartz dlls \
title="quartz.dll (from Directx 9 user redistributable)" \ title="quartz.dll (from Directx 9 user redistributable)" \
publisher="Microsoft" \ publisher="Microsoft" \
@ -6721,7 +6794,7 @@ load_riched30()
w_try_cabextract --directory="$W_TMP" "$W_CACHE"/riched30/InstMsiA.exe w_try_cabextract --directory="$W_TMP" "$W_CACHE"/riched30/InstMsiA.exe
w_try cp -f "$W_TMP"/riched20.dll "$W_SYSTEM32_DLLS" w_try cp -f "$W_TMP"/riched20.dll "$W_SYSTEM32_DLLS"
w_try cp -f "$W_TMP"/msls31.dll "$W_SYSTEM32_DLLS" w_try cp -f "$W_TMP"/msls31.dll "$W_SYSTEM32_DLLS"
w_override_dlls native,builtin riched30 w_override_dlls native,builtin riched20
} }
#---------------------------------------------------------------- #----------------------------------------------------------------
@ -7319,7 +7392,9 @@ w_metadata vcrun2013 dlls \
load_vcrun2013() load_vcrun2013()
{ {
# http://www.microsoft.com/en-us/download/details.aspx?id=40784 # http://www.microsoft.com/en-us/download/details.aspx?id=40784
w_download http://download.microsoft.com/download/2/E/6/2E61CFA4-993B-4DD4-91DA-3737CD5CD6E3/vcredist_x86.exe 18f81495bc5e6b293c69c28b0ac088a96debbab2 # 2014/07/26: 18f81495bc5e6b293c69c28b0ac088a96debbab2
# 2015/01/14: df7f0a73bfa077e483e51bfb97f5e2eceedfb6a3
w_download http://download.microsoft.com/download/2/E/6/2E61CFA4-993B-4DD4-91DA-3737CD5CD6E3/vcredist_x86.exe df7f0a73bfa077e483e51bfb97f5e2eceedfb6a3
w_override_dlls native,builtin atl120 msvcp120 msvcr120 vcomp120 w_override_dlls native,builtin atl120 msvcp120 msvcr120 vcomp120
cd "$W_CACHE"/vcrun2013 cd "$W_CACHE"/vcrun2013
@ -8099,8 +8174,8 @@ load_fontfix()
# Very unlikely to still be around, so downgrade to fatal warning # Very unlikely to still be around, so downgrade to fatal warning
if test -f /usr/share/fonts/truetype/arphic/ukai.ttf if test -f /usr/share/fonts/truetype/arphic/ukai.ttf
then then
gotsum=`$SHA1SUM < /usr/share/fonts/truetype/arphic/ukai.ttf | sed 's/ .*//'` w_get_sha1sum /usr/share/fonts/truetype/arphic/ukai.ttf
if [ "$gotsum"x = "96e1121f89953e5169d3e2e7811569148f573985"x ] if [ "$_W_gotsum"x = "96e1121f89953e5169d3e2e7811569148f573985"x ]
then then
w_die "Your installed ukai.ttf is known to be broken. Upgrade your ttf-arphic font package!" w_die "Your installed ukai.ttf is known to be broken. Upgrade your ttf-arphic font package!"
fi fi
@ -8108,8 +8183,8 @@ load_fontfix()
if test -f /usr/share/fonts/truetype/arphic/uming.ttf if test -f /usr/share/fonts/truetype/arphic/uming.ttf
then then
gotsum=`$SHA1SUM < /usr/share/fonts/truetype/arphic/uming.ttf | sed 's/ .*//'` w_get_sha1sum /usr/share/fonts/truetype/arphic/uming.ttf
if [ "$gotsum"x = "2a4f4a69e343c21c24d044b2cb19fd4f0decc82c"x ] if [ "$_W_gotsum"x = "2a4f4a69e343c21c24d044b2cb19fd4f0decc82c"x ]
then then
w_die "Your installed uming.ttf is known to be broken. Upgrade your ttf-uming font package!" w_die "Your installed uming.ttf is known to be broken. Upgrade your ttf-uming font package!"
fi fi
@ -8358,16 +8433,16 @@ load_allfonts()
w_metadata 7zip apps \ w_metadata 7zip apps \
title="7-Zip" \ title="7-Zip" \
publisher="Igor Pavlov" \ publisher="Igor Pavlov" \
year="2010" \ year="2014" \
media="download" \ media="download" \
file1="7z920.exe" \ file1="7z935.exe" \
installed_exe1="$W_PROGRAMS_X86_WIN/7-Zip/7zFM.exe" installed_exe1="$W_PROGRAMS_X86_WIN/7-Zip/7zFM.exe"
load_7zip() load_7zip()
{ {
w_download http://downloads.sourceforge.net/project/sevenzip/7-Zip/9.20/7z920.exe 55283ad59439134673fc32fc097bdd9ae920fbc6 w_download http://downloads.sourceforge.net/project/sevenzip/7-Zip/9.35/7z935.exe f0f975755480ce7519a865aa750b7f52f0f8d7d5
cd "$W_CACHE/$W_PACKAGE" cd "$W_CACHE/$W_PACKAGE"
w_try "$WINE" 7z920.exe $W_UNATTENDED_SLASH_S w_try "$WINE" 7z935.exe $W_UNATTENDED_SLASH_S
w_declare_exe "$W_PROGRAMS_X86_WIN\\7-Zip" "7zFM.exe" w_declare_exe "$W_PROGRAMS_X86_WIN\\7-Zip" "7zFM.exe"
} }
@ -8684,19 +8759,36 @@ load_fontxplorer()
#---------------------------------------------------------------- #----------------------------------------------------------------
w_metadata foobar2000 apps \
title="foobar2000 v1.3.6" \
publisher="Peter Pawlowski" \
year="2014" \
media="manual_download" \
file1="foobar2000_v1.3.6.exe" \
installed_exe1="$W_PROGRAMS_X86_WIN/foobar2000/foobar2000.exe"
load_foobar2000()
{
w_download_manual http://www.foobar2000.org/download foobar2000_v1.3.6.exe 77d1c3aa766853701d29e46b3018aaf1e1b5dd39
cd "$W_CACHE/$W_PACKAGE"
w_try "$WINE" $file1 $W_UNATTENDED_SLASH_S
w_declare_exe "$W_PROGRAMS_X86_WIN\\foobar2000" "foobar2000.exe"
}
#----------------------------------------------------------------
w_metadata irfanview apps \ w_metadata irfanview apps \
title="Irfanview" \ title="Irfanview" \
publisher="Irfan Skiljan" \ publisher="Irfan Skiljan" \
year="2012" \ year="2014" \
media="manual_download" \ media="download" \
file1="iview433_setup.exe" \ file1="iview438_setup.exe" \
installed_file1="$W_PROGRAMS_X86_WIN/IrfanView/i_view32.exe" \ installed_file1="$W_PROGRAMS_X86_WIN/IrfanView/i_view32.exe" \
homepage="http://www.irfanview.com/" homepage="http://www.irfanview.com/"
load_irfanview() load_irfanview()
{ {
w_download_manual http://download.cnet.com/IrfanView/3000-2192_4-10021962.html iview433_setup.exe 79a7ebe2325ad204712761aa3c3a072025b07784 w_download http://download.betanews.com/download/967963863-1/iview438_setup.exe c55c2fd91ac1af03e8063442b110ba771357d42e
if w_workaround_wine_bug 657 "Installing mfc42" if w_workaround_wine_bug 657 "Installing mfc42"
then then
w_call mfc42 w_call mfc42
@ -8711,38 +8803,43 @@ load_irfanview()
run $file1 run $file1
winwait, Setup, This program will install winwait, Setup, This program will install
winactivate, Setup, This program will install winactivate, Setup, This program will install
winwaitactive, Setup, This program will install Sleep 900
send !a ; set up for all users ControlClick, Button7 ; Uncheck All
send n ; next Sleep 900
winwait, Setup, new in this version ControlClick, Button11 ; Next
winactivate, Setup, new in this version Sleep 900
winwaitactive, Setup, new in this version winwait, Setup, version
send n ; skip release notes Sleep 900
winwait, Setup, Do you want to associate extensions ControlClick, Button11 ; Next
winactivate, Setup, Do you want to associate extensions Sleep 900
winwaitactive, Setup, Do you want to associate extensions winwait, Setup, associate extensions
send n ; don't associate any extensions (default) Sleep 900
Loop ControlClick, Button1 ; Images Only associations
{ Sleep 900
ifWinExist, Setup, Ready to install ControlClick, Button16 ; Next
{ Sleep 900
break winwait, Setup, Search
} Sleep 900
ifWinExist, Setup, Google Chrome ControlClick, Button1 ; deselect chrome googsrch
{ Sleep 900
winactivate, Setup, Google Chrome ControlClick, Button18 ; Next
winwaitactive, Setup, Google Chrome Sleep 1000
send !c ; decline Chrome winwait, Setup, INI
send !n Sleep 1000
continue ControlClick, Button23 ; Next
} Sleep 1000
sleep 500 winwait, Setup, You want to change
} winactivate, Setup, really
winwait, Setup, Ready to install Sleep 900
send n ; default .ini folder ControlClick, Button1 ; Yes
WinWait, IrfanView Setup, successfull ; sic Sleep 900
send !s ; do not launch winwait, Setup, successful
send d ; done winactivate, Setup, successful
Sleep 900
ControlClick, Button2 ; no start irfanview
Sleep 900
ControlClick, Button27 ; done
Sleep 900
winwaitclose winwaitclose
" "
else else
@ -9137,16 +9234,20 @@ load_mpc()
w_metadata mspaint apps \ w_metadata mspaint apps \
title="MS Paint" \ title="MS Paint" \
publisher="Microsoft" \ publisher="Microsoft" \
year="2001" \ year="2010" \
media="download" \ media="download" \
file1="paintnt.exe" \ file1="WindowsXP-KB978706-x86-ENU.exe" \
installed_exe1="c:/windows/MSPAINT.EXE" installed_file1="c:/windows/mspaint.exe"
load_mspaint() load_mspaint()
{ {
# http://helpforlinux.blogspot.com/2008/12/run-ms-paint-in-linux.html if w_workaround_wine_bug 657 "Native mspaint.exe from XP requires mfc42.dll"
w_download http://download.microsoft.com/download/winntwks40/paint/1/nt4/en-us/paintnt.exe a22c4e367ef9d2cd23f0a8ae8d9ebff5bc1e8a0b then
w_try_unzip "$W_CACHE"/mspaint/paintnt.exe -d "$W_WINDIR_UNIX" w_call mfc42
fi
w_download http://download.microsoft.com/download/0/A/4/0A40DF5C-2BAE-4C63-802A-84C33B34AC98/WindowsXP-KB978706-x86-ENU.exe f4e076b3867c2f08b6d258316aa0e11d6822b8d7
w_try $WINE "$W_CACHE"/mspaint/WindowsXP-KB978706-x86-ENU.exe /q /x:"$W_TMP"/WindowsXP-KB978706-x86-ENU
w_try cp -f "$W_TMP"/WindowsXP-KB978706-x86-ENU/SP3GDR/mspaint.exe "$W_WINDIR_UNIX"/mspaint.exe
w_declare_exe "$W_WINDIR_UNIX" "mspaint.exe" w_declare_exe "$W_WINDIR_UNIX" "mspaint.exe"
} }
@ -9317,6 +9418,57 @@ load_opera()
#---------------------------------------------------------------- #----------------------------------------------------------------
w_metadata picasa39 apps \
title="Picasa 3.9" \
publisher="Google" \
year="2014" \
file1="picasa39-setup.exe" \
installed_exe1="$W_PROGRAMS_X86_WIN/Google/Picasa3/Picasa3.exe"
load_picasa39()
{
w_download http://dl.google.com/picasa/picasa39-setup.exe 39b2df46dbc423e250371e826026a2827f55b956
if w_workaround_wine_bug 29434 "Picasa 3.9 fails to authenticate with Google"
then
w_warn "Picasa 3.9 authentication to the Google account is currently broken under wine. See http://bugs.winehq.org/show_bug.cgi?id=29434 for more details."
fi
if w_workaround_wine_bug 37729 "Picasa updater crashes during install unless dotnet20 loaded"
then
w_call dotnet20
fi
cd "$W_CACHE"/$W_PACKAGE
w_ahk_do "
SetTitleMatchMode, 2
run picasa39-setup.exe
WinWait, Picasa 3 Setup
if ( w_opt_unattended > 0 ) {
Sleep 1000
ControlClick Button2 ;I Agree - License
Sleep 1000
WinWait, Picasa 3 Setup, Choose Install Location
ControlClick Button2 ;Install
Sleep 1000
WinWait, Picasa 3 Setup, Picasa 3 has been installed on your computer
Sleep 500
ControlClick Button5 ; Desktop Icon
Sleep 500
ControlClick Button6 ; Quick Launch
Sleep 500
ControlClick Button7 ; Default search off
Sleep 500
ControlClick Button8 ; Usage statistics sent
Sleep 500
ControlClick Button4 ; Run Picasa
Sleep 500
ControlClick Button2 ; Finish
}
WinWaitClose
"
w_declare_exe "$W_PROGRAMS_X86_WIN\\Google\\Picasa3" "Picasa3.exe"
}
#----------------------------------------------------------------
w_metadata psdk2003 apps \ w_metadata psdk2003 apps \
title="MS Platform SDK 2003" \ title="MS Platform SDK 2003" \
publisher="Microsoft" \ publisher="Microsoft" \
@ -9612,19 +9764,36 @@ _EOF_
w_metadata songbird apps \ w_metadata songbird apps \
title="Songbird" \ title="Songbird" \
publisher="POTI" \ publisher="POTI" \
year="2010" \ year="2013" \
media="manual_download" \ media="download" \
file1="Songbird_1.10.1-2160_windows-i686-msvc8.exe" \ file1="Songbird_2.2.0-2453_windows-i686-msvc8.exe" \
installed_exe1="$W_PROGRAMS_X86_WIN/Songbird/songbird.exe" \ installed_exe1="$W_PROGRAMS_X86_WIN/Songbird/songbird.exe" \
homepage="http://getsongbird.com" homepage="http://sourceforge.net/projects/songbird.mirror/"
load_songbird() load_songbird()
{ {
w_download_manual \ w_download http://sourceforge.net/projects/songbird.mirror/files/Songbird%202.2.0/Songbird_2.2.0-2453_windows-i686-msvc8.exe 5f9e95ea9015c485602add7b759c956088cae7f1
http://getsongbird.com/system-requirements.php Songbird_1.10.1-2160_windows-i686-msvc8.exe \
3939988180e1bfba3f28ff5720942cbbc20b7fbf
cd "$W_CACHE/songbird" cd "$W_CACHE/songbird"
w_try "$WINE" $file1 ${W_OPT_UNATTENDED:+ /S} if test $W_OPT_UNATTENDED
then
w_ahk_do "
run, $file1 /S
SetTitleMatchMode, 2
;1033 error alert during silent install
WinWait, Songbird Setup, 1033
Sleep 1000
ControlClick, Button1
WinWaitClose
"
else
w_try "$WINE" $file1
fi
if w_workaround_wine_bug 35041
then
w_warn "Run songbird with taskset -c 0 to avoid a doublefree/crash in libX11"
fi
w_declare_exe "$W_PROGRAMS_X86_WIN\\Songbird" songbird.exe w_declare_exe "$W_PROGRAMS_X86_WIN\\Songbird" songbird.exe
} }
@ -9643,7 +9812,9 @@ load_steam()
# 18 Mar 2011 7f2fee9ffeaba8424a6c76d6c95b794735ac9959 # 18 Mar 2011 7f2fee9ffeaba8424a6c76d6c95b794735ac9959
# 29 Nov 2012 fa053c268b6285741d1a1392c25f92c5cb2a6ffb # 29 Nov 2012 fa053c268b6285741d1a1392c25f92c5cb2a6ffb
# 17 Mar 2014 b2a3fdbe4a662f3bf751f5b8bfc61f8d35e050fe # 17 Mar 2014 b2a3fdbe4a662f3bf751f5b8bfc61f8d35e050fe
w_download http://media.steampowered.com/client/installer/SteamSetup.exe b2a3fdbe4a662f3bf751f5b8bfc61f8d35e050fe # 11 Dec 2014 7ad8fbeffa6c963b821f80129c15c9d8e85f9a4a
# 6 Jan 2015 e04aefe8bc894f11f211edec8e8a008abe0147d2
w_download http://media.steampowered.com/client/installer/SteamSetup.exe e04aefe8bc894f11f211edec8e8a008abe0147d2
cd "$W_CACHE"/steam cd "$W_CACHE"/steam
# Install corefonts first, so if the user doesn't have cabextract/Wine with cab support, we abort before installing Steam. # Install corefonts first, so if the user doesn't have cabextract/Wine with cab support, we abort before installing Steam.
@ -9654,7 +9825,30 @@ load_steam()
w_call corefonts w_call corefonts
fi fi
w_try "$WINE" SteamSetup.exe $W_UNATTENDED_SLASH_Q if test $W_OPT_UNATTENDED
then
w_ahk_do "
run, SteamSetup.exe
SetTitleMatchMode, 2
WinWait, Steam, Using Steam
ControlClick, Button2
WinWait, Steam, Please review
ControlClick, Button4
sleep 1000
ControlClick, Button2
WinWait, Steam, Select the language
ControlClick, Button2
WinWait, Steam, Choose the folder
ControlClick, Button2
WinWait, Steam, Steam has been installed
ControlClick, Button4
sleep 1000
ControlClick, Button2
WinWaitClose
"
else
w_try "$WINE" SteamSetup.exe
fi
# Not all users need this disabled, but let's play it safe for now # Not all users need this disabled, but let's play it safe for now
if w_workaround_wine_bug 22053 "Disabling gameoverlayrenderer to prevent game crashes on some machines." if w_workaround_wine_bug 22053 "Disabling gameoverlayrenderer to prevent game crashes on some machines."
@ -9999,15 +10193,15 @@ load_vc2010express()
w_metadata vlc apps \ w_metadata vlc apps \
title="VLC media player" \ title="VLC media player" \
publisher="videolan.org" \ publisher="videolan.org" \
year="2010" \ year="2014" \
media="download" \ media="download" \
file1="vlc-1.1.9-win32.exe" \ file1="vlc-2.1.5-win32.exe" \
installed_file1="$W_PROGRAMS_X86_WIN/VideoLAN/VLC/vlc.exe" \ installed_file1="$W_PROGRAMS_X86_WIN/VideoLAN/VLC/vlc.exe" \
homepage="http://www.videolan.org/vlc/" homepage="http://www.videolan.org/vlc/"
load_vlc() load_vlc()
{ {
w_download $WINETRICKS_SOURCEFORGE/vlc/vlc-1.1.9-win32.exe 7128f6e43d6550fcc2574b9c82c5153ff47efcf6 w_download http://get.videolan.org/vlc/2.1.5/win32/vlc-2.1.5-win32.exe bc5e2b879c110c7702973fa3c380550ea2856689
cd "$W_CACHE"/vlc cd "$W_CACHE"/vlc
w_try "$WINE" $file1 ${W_OPT_UNATTENDED:+ /S} w_try "$WINE" $file1 ${W_OPT_UNATTENDED:+ /S}
w_declare_exe "$W_PROGRAMS_X86_WIN\\VideoLAN\\VLC" vlc.exe w_declare_exe "$W_PROGRAMS_X86_WIN\\VideoLAN\\VLC" vlc.exe
@ -10017,18 +10211,19 @@ load_vlc()
w_metadata winamp apps \ w_metadata winamp apps \
title="Winamp" \ title="Winamp" \
publisher="AOL (Nullsoft)" \ publisher="Radionomy (AOL (Nullsoft))" \
year="2011" \ year="2013" \
media="download" \ media="download" \
file1="winamp5621_full_emusic-7plus_en-us.exe" \ file1="winamp5666_full_all_redux.exe" \
installed_exe1="$W_PROGRAMS_X86_WIN/Winamp/winamp.exe" \ installed_exe1="$W_PROGRAMS_X86_WIN/Winamp/winamp.exe" \
homepage="http://www.winamp.com" homepage="http://www.winamp.com"
load_winamp() load_winamp()
{ {
w_info "may send information while installing, see http://www.microsoft.com/security/portal/Threat/Encyclopedia/Entry.aspx?threatid=159633" w_info "may send information while installing, see http://www.microsoft.com/security/portal/Threat/Encyclopedia/Entry.aspx?threatid=159633"
w_download \ # 2014 winamp5621_full_emusic-7plus_en-us.exe afc172039db52fdc202114bec7bcf8b5bf2468bb
http://download.nullsoft.com/winamp/client/winamp5621_full_emusic-7plus_en-us.exe afc172039db52fdc202114bec7bcf8b5bf2468bb
w_download http://winampplugins.co.uk/Winamp/winamp5666_full_all_redux.exe 136314be0da42ed399b88a106cb1f43093e2c0c2
cd "$W_CACHE/$W_PACKAGE" cd "$W_CACHE/$W_PACKAGE"
if test $W_OPT_UNATTENDED if test $W_OPT_UNATTENDED
then then
@ -10036,48 +10231,35 @@ load_winamp()
SetWinDelay 500 SetWinDelay 500
SetTitleMatchMode, 2 SetTitleMatchMode, 2
Run $file1 Run $file1
WinWait, Winamp Installer, Welcome to the Winamp installer WinWait, Installer Language, Please select
ControlClick, Button2
WinWait, Winamp Installer, License Agreement
ControlClick, Button2
WinWait, Winamp Installer, Choose Install Location
ControlClick, Button2
WinWait, Winamp Installer, Choose Components
ControlClick, Button2
WinWait, Winamp Installer, Choose Start Options
ControlClick, Button2
WinWait, Winamp Installer, Get the Most Out of Winamp
ControlClick, Button4 ; decline Winamp toolbar
Sleep 200
ControlClick, Button5 ; decline AOL Search
Sleep 200
ControlClick, Button6 ; decline eMusic
Sleep 200
ControlClick, Button2
Loop
{
ifWinExist, Winamp Installer, Installation Complete
{
break
}
ifWinExist, Winamp Installer, Recommended
{
WinActivate, Winamp Installer, Recommended
WinWaitActive, Winamp Installer, Recommended
MouseClick, left, 32, 279 ; decline OpenCandy offers
Sleep 200
ControlClick, Button2
WinWaitClose, Winamp Installer, Recommended
continue
}
Sleep 200
}
WinWait, Winamp Installer, Installation Complete
WinActivate, Winamp Installer, Installation Complete
WinWaitActive, Winamp Installer, Installation Complete
send {Tab}{Tab}{Tab}{Space} ; don't launch
Sleep 500 Sleep 500
send {Enter} ; Finish ControlClick, Button1 ; OK
WinWait, Winamp Installer, Welcome to the Winamp installer
Sleep 500
ControlClick, Button2 ; Next
WinWait, Winamp Installer, License Agreement
Sleep 500
ControlClick, Button2 ; I Agree
WinWait, Winamp Installer, Choose Install Location
Sleep 500
ControlClick, Button2 ; Next
WinWait, Winamp Installer, Choose Components
Sleep 500
ControlClick, Button2 ; Next for Full install
WinWait, Winamp Installer, Choose Start Options
Sleep 500
ControlClick, Button4 ; uncheck start menu entry
Sleep 500
ControlClick, Button5 ; uncheck ql icon
Sleep 500
ControlClick, Button6 ; uncheck deskto icon
Sleep 500
ControlClick, Button2 ; Install
WinWait, Winamp Installer, Installation Complete
Sleep 500
ControlClick, Button4 ; uncheck launch when complete
Sleep 500
ControlClick, Button2 ; Finish
WinWaitClose WinWaitClose
" "
else else
@ -15256,30 +15438,37 @@ load_puzzleagent_demo()
#---------------------------------------------------------------- #----------------------------------------------------------------
w_metadata qq2012 apps \ w_metadata qq apps \
title="QQ 2012 (Chinese chat app)" \ title="QQ 6.3 (Chinese chat app)" \
publisher="Tencent" \ publisher="Tencent" \
year="2012" \ year="2014" \
media="download" \ media="download" \
file1="QQ2012.exe" \ file1="QQ6.3.exe" \
installed_exe1="$W_PROGRAMS_X86_WIN/Tencent/QQ/Bin/QQ.exe" \ installed_exe1="$W_PROGRAMS_X86_WIN/Tencent/QQ/Bin/QQ.exe" \
homepage="http://www.qq.com" \ homepage="http://www.qq.com" \
unattended="no" unattended="no"
load_qq2012() load_qq()
{ {
w_download http://dl_dir.qq.com/qqfile/qq/QQ2012/QQ2012.exe ea20cd09390588ea0943e0d0f9af56544a4cac4f w_download http://dldir1.qq.com/qqfile/qq/QQ6.3/12369/QQ6.3.exe cebe73a2f8b7299ba0f01aba779e0e4a7dbd173b
cd "$W_CACHE/$W_PACKAGE"
if w_workaround_wine_bug 29636 "Installing native riched20 to work around crash bug" if w_workaround_wine_bug 29636 "Installing native riched20 to work around crash bug"
then then
w_call riched20 w_call riched20
fi fi
if w_workaround_wine_bug 34567 "Installing vcrun2005 to avoid installer crash"
if w_workaround_wine_bug 34566 "Installing native ctf to work around crash"
then then
w_call vcrun2005 w_call msctf
fi fi
# Make sure chinese fonts are available # Make sure chinese fonts are available
w_call cjkfonts w_call fakechinese
# uses mfc42u.dll
w_call mfc42
cd "$W_CACHE/$W_PACKAGE"
w_try "$WINE" "$file1" w_try "$WINE" "$file1"
w_declare_exe "$W_PROGRAMS_X86_WIN\\Tencent\\QQ\\Bin" QQ.exe w_declare_exe "$W_PROGRAMS_X86_WIN\\Tencent\\QQ\\Bin" QQ.exe
} }
@ -15287,31 +15476,41 @@ load_qq2012()
#---------------------------------------------------------------- #----------------------------------------------------------------
w_metadata qqintl apps \ w_metadata qqintl apps \
title="QQ International Instant Messenger 2.0" \ title="QQ International Instant Messenger 2.11" \
publisher="Tencent" \ publisher="Tencent" \
year="2013" \ year="2014" \
media="download" \ media="download" \
file1="QQIntl2.0.exe" \ file1="QQIntl2.11.exe" \
installed_exe1="$W_PROGRAMS_X86_WIN/Tencent/QQIntl/Bin/QQ.exe" \ installed_exe1="$W_PROGRAMS_X86_WIN/Tencent/QQIntl/Bin/QQ.exe" \
homepage="http://www.imqq.com" \ homepage="http://www.imqq.com" \
unattended="no" unattended="no"
load_qqintl() load_qqintl()
{ {
w_download http://proxy.imqq.com/QQIntl2.0.exe e9a335b265544a77ae470d6f3a3fca0de25a6cb5 w_download http://dldir1.qq.com/qqfile/QQIntl/QQi_PC/QQIntl2.11.exe 030df82390e7962177fcef66fc1a0fd1a3ba4090
cd "$W_CACHE/$W_PACKAGE"
if w_workaround_wine_bug 33086 "Installing native riched20 to allow typing in username" if w_workaround_wine_bug 33086 "Installing native riched20 to allow typing in username"
then then
w_call riched20 w_call riched20
fi fi
if w_workaround_wine_bug 34566 "Installing native ctf to work around crash" if w_workaround_wine_bug 34566 "Installing native ctf to work around crash"
then then
w_call msctf w_call msctf
fi fi
if w_workaround_wine_bug 30083 "Installing native ie7 to avoid crash in settings and other dialogs"
if w_workaround_wine_bug 37617 "Installing native wininet to work around crash"
then then
w_call ie7 w_call wininet
fi fi
# Make sure chinese fonts are available
w_call fakechinese
# wants mfc80u.dll
w_call vcrun2005
cd "$W_CACHE/$W_PACKAGE"
w_try "$WINE" "$file1" w_try "$WINE" "$file1"
w_declare_exe "$W_PROGRAMS_X86_WIN\\Tencent\\QQIntl\\Bin" QQ.exe w_declare_exe "$W_PROGRAMS_X86_WIN\\Tencent\\QQIntl\\Bin" QQ.exe
} }