Commit 0c3c42d9 authored by Vitaly Lipatov's avatar Vitaly Lipatov

just import winetricks-20180815.tar with rpmgs script

parent b16d5859
......@@ -60,6 +60,8 @@ install:
$(INSTALL_DATA) src/winetricks.appdata.xml $(DESTDIR)$(PREFIX)/share/metainfo/winetricks.appdata.xml
$(INSTALL) -d $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps
$(INSTALL_DATA) src/winetricks.svg $(DESTDIR)$(PREFIX)/share/icons/hicolor/scalable/apps/winetricks.svg
$(INSTALL) -d $(DESTDIR)$(PREFIX)/share/bash-completion/completions
$(INSTALL_DATA) src/winetricks.bash-completion $(DESTDIR)$(PREFIX)/share/bash-completion/completions/winetricks
check:
echo 'This verifies that most DLL verbs, plus flash, install ok.'
......
......@@ -19,6 +19,7 @@ Recommends: zenity | kdebase-bin,
xdg-utils,
policykit-1 | gksu | kde-cli-tools | kdesudo,
sudo,
fuseiso | archivemount,
wine
Description: Simple tool to work around common problems in Wine.
Winetricks has a menu of supported games/apps for which it can do all the
......
Using winetricks 20180603 - sha256sum: cad4e699f55c297afe5b177d68dccf1ef54e9dd23518a6f6343caa0ab7636615 with wine-3.0 (Debian 3.0-1) and WINEARCH=win32
Using winetricks 20180815 - sha256sum: 9343f9174146c0fa4d34e18e05269ae772a45ba78e3d8786829fa21895f6f7f4 with wine-3.0.2 (Debian 3.0.2-1) and WINEARCH=win32
===== apps =====
3m_library 3M Cloud Library (3M Company, 2015) [downloadable]
7zip 7-Zip 16.02 (Igor Pavlov, 2016) [downloadable]
......@@ -15,7 +15,7 @@ emu8086 emu8086 (emu8086.com, 2015) [downloadable]
ev3 Lego Mindstorms EV3 Home Edition (Lego, 2014) [downloadable]
firefox Firefox 51.0 (Mozilla, 2017) [downloadable]
fontxplorer Font Xplorer 1.2.2 (Moon Software, 2001) [downloadable]
foobar2000 foobar2000 v1.3.14 (Peter Pawlowski, 2016)
foobar2000 foobar2000 v1.4 (Peter Pawlowski, 2018)
iceweasel GNU Icecat 31.7.0 (GNU Foundation, 2015) [downloadable]
irfanview Irfanview (Irfan Skiljan, 2016) [downloadable]
kde KDE on Windows (various, 2013) [downloadable]
......@@ -147,14 +147,23 @@ dpvoice Microsoft dpvoice dpvvox dpvacm Audio dlls (Microsoft,
dsdmo MS dsdmo.dll (Microsoft, 2010) [downloadable]
dsound MS DirectSound from DirectX user redistributable (Microsoft, 2010) [downloadable]
dswave MS dswave.dll from DirectX user redistributable (Microsoft, 2010) [downloadable]
dx8vb MS dx8vb.dll from DirectX 8.1 runtime (Microsoft, 2001) [downloadable]
dxdiag DirectX Diagnostic Tool (Microsoft, 2010) [downloadable]
dxdiagn DirectX Diagnostic Library (Microsoft, 2011) [downloadable]
dxdiagn_feb2010 DirectX Diagnostic Library (February 2010) (Microsoft, 2010) [downloadable]
dxsdk_jun2010 MS DirectX SDK, June 2010 (developers only) (Microsoft, 2010) [downloadable]
dxsdk_nov2006 MS DirectX SDK, November 2006 (developers only) (Microsoft, 2006) [downloadable]
dxvk Vulkan-based D3D11 implementation for Linux / Wine (latest) (Philip Rebohle, 2018) [downloadable]
dxvk54 Vulkan-based D3D11 implementation for Linux / Wine (0.54) (Philip Rebohle, 2018) [downloadable]
dxvk60 Vulkan-based D3D11 implementation for Linux / Wine (0.60) (Philip Rebohle, 2018) [downloadable]
dxvk61 Vulkan-based D3D11 implementation for Linux / Wine (0.61) (Philip Rebohle, 2018) [downloadable]
dxvk62 Vulkan-based D3D11 implementation for Linux / Wine (0.62) (Philip Rebohle, 2018) [downloadable]
dxvk63 Vulkan-based D3D11 implementation for Linux / Wine (0.63) (Philip Rebohle, 2018) [downloadable]
dxvk64 Vulkan-based D3D11 implementation for Linux / Wine (0.64) (Philip Rebohle, 2018) [downloadable]
dxvk65 Vulkan-based D3D11 implementation for Linux / Wine (0.65) (Philip Rebohle, 2018) [downloadable]
esent MS Extensible Storage Engine (Microsoft, 2011) [downloadable]
ffdshow ffdshow video codecs (doom9 folks, 2010) [downloadable]
flash Flash Player 14 (Adobe, 2014) [downloadable]
flash Flash Player 29 (Adobe, 2018) [downloadable]
gdiplus MS GDI+ (Microsoft, 2011) [downloadable]
gdiplus_winxp MS GDI+ (Microsoft, 2004)
gfw MS Games For Windows Live (xlive.dll) (Microsoft, 2008) [downloadable]
......@@ -270,7 +279,7 @@ lucida MS Lucida Console font (Microsoft, 1998) [downloadable]
meiryo MS Meiryo font (Microsoft, 2009) [downloadable]
opensymbol OpenSymbol fonts (replacement for Wingdings) (OpenOffice.org, 2017) [downloadable]
pptfonts All MS PowerPoint Viewer fonts (various, ) [downloadable]
tahoma MS Tahoma font (not part of corefonts) (Microsoft, 2007) [downloadable]
tahoma MS Tahoma font (not part of corefonts) (Microsoft, 1999) [downloadable]
takao Takao Japanese fonts (Jun Kobayashi, 2010) [downloadable]
uff Ubuntu Font Family (Ubuntu, 2010) [downloadable]
unifont Unifont alternative to Arial Unicode MS (Roman Czyborra / GNU, 2008) [downloadable]
......@@ -322,7 +331,7 @@ eve EVE Online Tyrannis (CCP Games, 2017) [downloadable]
fable_tlc Fable: The Lost Chapters (Microsoft, 2005)
fifa11_demo FIFA 11 Demo (EA Sports, 2010) [downloadable]
gta_vc Grand Theft Auto: Vice City (Rockstar, 2003)
hon Heroes of Newerth (S2 Games, 2013) [downloadable]
hon Heroes of Newerth (S2 Games, 2018) [downloadable]
hordesoforcs2_demo Hordes of Orcs 2 Demo (Freeverse, 2010)
hphbp_demo Harry Potter and the Half-Blood Prince Demo (EA, 2009) [downloadable]
kotor1 Star Wars: Knights of the Old Republic (LucasArts, 2003)
......@@ -413,6 +422,7 @@ heapcheck Enable heap checking with GlobalFlag
hidewineexports=disable Disable hiding Wine exports from applications (wine-staging)
hidewineexports=enable Enable hiding Wine exports from applications (wine-staging)
hosts Add empty C:\windows\system32\driverstc\{hosts,services} files
isolate_home Remove wineprefix links to /home/austin
macdriver=mac Enable the Mac native Quartz driver (default)
macdriver=x11 Disable the Mac native Quartz driver, use X11 instead
multisampling=disabled Disable Direct3D multisampling
......@@ -439,6 +449,11 @@ rtlm=readtex Set RenderTargetLockMode to readtex
rtlm=texdraw Set RenderTargetLockMode to texdraw
rtlm=textex Set RenderTargetLockMode to textex
sandbox Sandbox the wineprefix - remove links to /home/austin
sound=alsa Set sound driver to ALSA
sound=coreaudio Set sound driver to Mac CoreAudio
sound=disabled Set sound driver to disabled
sound=oss Set sound driver to OSS
sound=pulse Set sound driver to PulseAudio
strictdrawordering=disabled Disable StrictDrawOrdering (default)
strictdrawordering=enabled Enable StrictDrawOrdering
vd=1024x768 Enable virtual desktop, set size to 1024x768
......
Using winetricks 20180603 - sha256sum: cad4e699f55c297afe5b177d68dccf1ef54e9dd23518a6f6343caa0ab7636615 with wine-3.0 (Debian 3.0-1) and WINEARCH=win32
Using winetricks 20180815 - sha256sum: 9343f9174146c0fa4d34e18e05269ae772a45ba78e3d8786829fa21895f6f7f4 with wine-3.0.2 (Debian 3.0.2-1) and WINEARCH=win32
3m_library 3M Cloud Library (3M Company, 2015) [downloadable]
7zip 7-Zip 16.02 (Igor Pavlov, 2016) [downloadable]
abiword AbiWord 2.8.6 (AbiSource, 2010) [downloadable]
......@@ -14,7 +14,7 @@ emu8086 emu8086 (emu8086.com, 2015) [downloadable]
ev3 Lego Mindstorms EV3 Home Edition (Lego, 2014) [downloadable]
firefox Firefox 51.0 (Mozilla, 2017) [downloadable]
fontxplorer Font Xplorer 1.2.2 (Moon Software, 2001) [downloadable]
foobar2000 foobar2000 v1.3.14 (Peter Pawlowski, 2016)
foobar2000 foobar2000 v1.4 (Peter Pawlowski, 2018)
iceweasel GNU Icecat 31.7.0 (GNU Foundation, 2015) [downloadable]
irfanview Irfanview (Irfan Skiljan, 2016) [downloadable]
kde KDE on Windows (various, 2013) [downloadable]
......
Using winetricks 20180603 - sha256sum: cad4e699f55c297afe5b177d68dccf1ef54e9dd23518a6f6343caa0ab7636615 with wine-3.0 (Debian 3.0-1) and WINEARCH=win32
Using winetricks 20180815 - sha256sum: 9343f9174146c0fa4d34e18e05269ae772a45ba78e3d8786829fa21895f6f7f4 with wine-3.0.2 (Debian 3.0.2-1) and WINEARCH=win32
3dmark03 3D Mark 03 (Futuremark, 2003)
3dmark05 3D Mark 05 (Futuremark, 2005) [downloadable]
3dmark06 3D Mark 06 (Futuremark, 2006)
......
Using winetricks 20180603 - sha256sum: cad4e699f55c297afe5b177d68dccf1ef54e9dd23518a6f6343caa0ab7636615 with wine-3.0 (Debian 3.0-1) and WINEARCH=win32
Using winetricks 20180815 - sha256sum: 9343f9174146c0fa4d34e18e05269ae772a45ba78e3d8786829fa21895f6f7f4 with wine-3.0.2 (Debian 3.0.2-1) and WINEARCH=win32
adobeair Adobe AIR (Adobe, 2018) [downloadable]
allcodecs All codecs (dirac, ffdshow, icodecs, cinepak, l3codecx, xvid) except wmp (various, 1995-2009) [downloadable]
amstream MS amstream.dll (Microsoft, 2011) [downloadable]
......@@ -79,14 +79,23 @@ dpvoice Microsoft dpvoice dpvvox dpvacm Audio dlls (Microsoft,
dsdmo MS dsdmo.dll (Microsoft, 2010) [downloadable]
dsound MS DirectSound from DirectX user redistributable (Microsoft, 2010) [downloadable]
dswave MS dswave.dll from DirectX user redistributable (Microsoft, 2010) [downloadable]
dx8vb MS dx8vb.dll from DirectX 8.1 runtime (Microsoft, 2001) [downloadable]
dxdiag DirectX Diagnostic Tool (Microsoft, 2010) [downloadable]
dxdiagn DirectX Diagnostic Library (Microsoft, 2011) [downloadable]
dxdiagn_feb2010 DirectX Diagnostic Library (February 2010) (Microsoft, 2010) [downloadable]
dxsdk_jun2010 MS DirectX SDK, June 2010 (developers only) (Microsoft, 2010) [downloadable]
dxsdk_nov2006 MS DirectX SDK, November 2006 (developers only) (Microsoft, 2006) [downloadable]
dxvk Vulkan-based D3D11 implementation for Linux / Wine (latest) (Philip Rebohle, 2018) [downloadable]
dxvk54 Vulkan-based D3D11 implementation for Linux / Wine (0.54) (Philip Rebohle, 2018) [downloadable]
dxvk60 Vulkan-based D3D11 implementation for Linux / Wine (0.60) (Philip Rebohle, 2018) [downloadable]
dxvk61 Vulkan-based D3D11 implementation for Linux / Wine (0.61) (Philip Rebohle, 2018) [downloadable]
dxvk62 Vulkan-based D3D11 implementation for Linux / Wine (0.62) (Philip Rebohle, 2018) [downloadable]
dxvk63 Vulkan-based D3D11 implementation for Linux / Wine (0.63) (Philip Rebohle, 2018) [downloadable]
dxvk64 Vulkan-based D3D11 implementation for Linux / Wine (0.64) (Philip Rebohle, 2018) [downloadable]
dxvk65 Vulkan-based D3D11 implementation for Linux / Wine (0.65) (Philip Rebohle, 2018) [downloadable]
esent MS Extensible Storage Engine (Microsoft, 2011) [downloadable]
ffdshow ffdshow video codecs (doom9 folks, 2010) [downloadable]
flash Flash Player 14 (Adobe, 2014) [downloadable]
flash Flash Player 29 (Adobe, 2018) [downloadable]
gdiplus MS GDI+ (Microsoft, 2011) [downloadable]
gdiplus_winxp MS GDI+ (Microsoft, 2004)
gfw MS Games For Windows Live (xlive.dll) (Microsoft, 2008) [downloadable]
......
Using winetricks 20180603 - sha256sum: cad4e699f55c297afe5b177d68dccf1ef54e9dd23518a6f6343caa0ab7636615 with wine-3.0 (Debian 3.0-1) and WINEARCH=win32
Using winetricks 20180815 - sha256sum: 9343f9174146c0fa4d34e18e05269ae772a45ba78e3d8786829fa21895f6f7f4 with wine-3.0.2 (Debian 3.0.2-1) and WINEARCH=win32
3dmark05
3dmark2000
3dmark2001
......@@ -116,11 +116,20 @@ droid
dsdmo
dsound
dswave
dx8vb
dxdiag
dxdiagn
dxdiagn_feb2010
dxsdk_jun2010
dxsdk_nov2006
dxvk
dxvk54
dxvk60
dxvk61
dxvk62
dxvk63
dxvk64
dxvk65
emu8086
esent
eufonts
......
Using winetricks 20180603 - sha256sum: cad4e699f55c297afe5b177d68dccf1ef54e9dd23518a6f6343caa0ab7636615 with wine-3.0 (Debian 3.0-1) and WINEARCH=win32
Using winetricks 20180815 - sha256sum: 9343f9174146c0fa4d34e18e05269ae772a45ba78e3d8786829fa21895f6f7f4 with wine-3.0.2 (Debian 3.0.2-1) and WINEARCH=win32
acreedbro Assassin's Creed Brotherhood (Ubisoft, 2011)
algodoo_demo Algodoo Demo (Algoryx, 2009) [downloadable]
alienswarm_steam Alien Swarm (Steam) (Valve, 2010) [downloadable]
......@@ -44,7 +44,7 @@ eve EVE Online Tyrannis (CCP Games, 2017) [downloadable]
fable_tlc Fable: The Lost Chapters (Microsoft, 2005)
fifa11_demo FIFA 11 Demo (EA Sports, 2010) [downloadable]
gta_vc Grand Theft Auto: Vice City (Rockstar, 2003)
hon Heroes of Newerth (S2 Games, 2013) [downloadable]
hon Heroes of Newerth (S2 Games, 2018) [downloadable]
hordesoforcs2_demo Hordes of Orcs 2 Demo (Freeverse, 2010)
hphbp_demo Harry Potter and the Half-Blood Prince Demo (EA, 2009) [downloadable]
kotor1 Star Wars: Knights of the Old Republic (LucasArts, 2003)
......
Using winetricks 20180603 - sha256sum: cad4e699f55c297afe5b177d68dccf1ef54e9dd23518a6f6343caa0ab7636615 with wine-3.0 (Debian 3.0-1) and WINEARCH=win32
Using winetricks 20180815 - sha256sum: 9343f9174146c0fa4d34e18e05269ae772a45ba78e3d8786829fa21895f6f7f4 with wine-3.0.2 (Debian 3.0.2-1) and WINEARCH=win32
3dmark03
3dmark06
amnesia_tdd_demo
......
Using winetricks 20180603 - sha256sum: cad4e699f55c297afe5b177d68dccf1ef54e9dd23518a6f6343caa0ab7636615 with wine-3.0 (Debian 3.0-1) and WINEARCH=win32
Using winetricks 20180815 - sha256sum: 9343f9174146c0fa4d34e18e05269ae772a45ba78e3d8786829fa21895f6f7f4 with wine-3.0.2 (Debian 3.0.2-1) and WINEARCH=win32
alldlls=builtin Override most common DLLs to builtin
alldlls=default Remove all DLL overrides
ao=disabled Disable AlwaysOffscreen (default)
......@@ -31,6 +31,7 @@ heapcheck Enable heap checking with GlobalFlag
hidewineexports=disable Disable hiding Wine exports from applications (wine-staging)
hidewineexports=enable Enable hiding Wine exports from applications (wine-staging)
hosts Add empty C:\windows\system32\driverstc\{hosts,services} files
isolate_home Remove wineprefix links to /home/austin
macdriver=mac Enable the Mac native Quartz driver (default)
macdriver=x11 Disable the Mac native Quartz driver, use X11 instead
multisampling=disabled Disable Direct3D multisampling
......@@ -57,6 +58,11 @@ rtlm=readtex Set RenderTargetLockMode to readtex
rtlm=texdraw Set RenderTargetLockMode to texdraw
rtlm=textex Set RenderTargetLockMode to textex
sandbox Sandbox the wineprefix - remove links to /home/austin
sound=alsa Set sound driver to ALSA
sound=coreaudio Set sound driver to Mac CoreAudio
sound=disabled Set sound driver to disabled
sound=oss Set sound driver to OSS
sound=pulse Set sound driver to PulseAudio
strictdrawordering=disabled Disable StrictDrawOrdering (default)
strictdrawordering=enabled Enable StrictDrawOrdering
vd=1024x768 Enable virtual desktop, set size to 1024x768
......
From https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=733511
With edited filename to make it easier to apply
diff --git a/checkbashisms b/checkbashisms
index 045328c..fe64a6b 100755
--- a/checkbashisms
+++ b/checkbashisms
@@ -644,7 +644,7 @@ sub init_hashes {
qr';;?&' => q<;;& and ;& special case operators>,
$LEADIN . qr'jobs\s' => q<jobs>,
# $LEADIN . qr'jobs\s+-[^lp]\s' => q<'jobs' with option other than -l or -p>,
- $LEADIN . qr'command\s+-[^p]\s' => q<'command' with option other than -p>,
+ $LEADIN . qr'command\s+-[^pvV]\s' => q<'command' with option other than -p/-v/-V>,
$LEADIN . qr'setvar\s' => q<setvar 'foo' 'bar' should be eval 'foo="'"$bar"'"'>,
$LEADIN . qr'trap\s+["\']?.*["\']?\s+.*(?:ERR|DEBUG|RETURN)' => q<trap with ERR|DEBUG|RETURN>,
$LEADIN . qr'(?:exit|return)\s+-\d' => q<exit|return with negative status code>,
--
2.6.2
......@@ -34,7 +34,7 @@ DEB_BASHATE=$UBUNTU_POOL/universe/p/python-bashate/python-bashate_0.5.1-1_all.de
DEB_PBR=$UBUNTU_POOL/main/p/python-pbr/python-pbr_3.1.1-3ubuntu3_all.deb
DEB_SIX=$UBUNTU_POOL/main/s/six/python-six_1.11.0-2_all.deb
if which bashate >/dev/null; then
if command -v bashate >/dev/null; then
echo "bashate is already installed."
exit 1
fi
......
#!/bin/sh
# Link checker for winetricks.
#
# Copyright (C) 2011,2012,2013 Dan Kegel.
# Copyright (C) 2011-2013 Dan Kegel
# Copyright (C) 2016-2018 Austin English
#
# This software comes with ABSOLUTELY NO WARRANTY.
#
......@@ -15,16 +16,23 @@ passes=0
errors=0
check_deps() {
if ! test -x "$(which curl 2>/dev/null)"; then
if ! test -x "$(command -v curl 2>/dev/null)"; then
echo "Please install curl"
exit 1
fi
}
if [ -f README.md ] ; then
if [ -f src/winetricks ] ; then
TOP="$PWD"
elif [ -f ../README.md ] ; then
TOP=".."
shwinetricks="${PWD}/src/winetricks"
elif [ -f ../src/winetricks ] ; then
# realpath isn't available on OSX, use a subshell instead:
TOP="$(cd .. && echo "$PWD")"
shwinetricks="${TOP}/src/winetricks"
elif [ -f ../../src/winetricks ] ; then
# realpath isn't available on OSX, use a subshell instead:
TOP="$(cd ../.. && echo "$PWD")"
shwinetricks="${TOP}/src/winetricks"
else
echo "Dude, where's my car?!"
exit 1
......@@ -46,9 +54,14 @@ w_download() {
# Extract list of URLs from winetricks
extract_all() {
# w_linkcheck_ignore=1 is a stupid hack to tell linkcheck.sh to ignore a URL (e.g., because it contains a variable)
# Ideally, avoid using the variable, but we can't e.g., for dxvk
# Should not be used for https://example.com/${file1}, as otherwise we can't easily check if the URL is down
# https://github.com/koalaman/shellcheck/issues/861
# shellcheck disable=SC1003
grep '^ *w_download ' winetricks | grep -E 'ftp|http|WINETRICKS_SOURCEFORGE' | sed 's/^ *//' | tr -d '\\' > url-script-fragment.tmp
grep '^ *w_download ' "${shwinetricks}" | grep -E 'ftp|http|WINETRICKS_SOURCEFORGE' | grep -v "w_linkcheck_ignore=1" | sed 's/^ *//' | tr -d '\\' > url-script-fragment.tmp
# shellcheck disable=SC1091
. ./url-script-fragment.tmp
}
......
.\" -*- nroff -*-
.TH WINETRICKS 1 "June 2018" "Winetricks 20180603" "Wine Package Manager"
.TH WINETRICKS 1 "August 2018" "Winetricks 20180815" "Wine Package Manager"
.SH NAME
winetricks \- manage virtual Windows environments using Wine
.SH SYNOPSIS
......
......@@ -12,6 +12,10 @@
set -e
set -x
temp="$(mktemp -d)"
trap 'rm -fr "$temp"' EXIT
w_die() {
echo "$* failed"
exit 1
......@@ -25,9 +29,13 @@ w_try() {
fi
}
command bashate --help > /dev/null || w_die "bashate must be installed!"
command checkbashisms --help > /dev/null || w_die "checkbashisms must be installed!"
command shellcheck --version > /dev/null || w_die "shellcheck must be installed!"
bashate="$(command -v bashate)"
checkbashisms="$(command -v checkbashisms)"
shellcheck="$(command -v shellcheck)"
"$bashate" --help > /dev/null || w_die "bashate must be installed!"
"$checkbashisms" --help > /dev/null || w_die "checkbashisms must be installed!"
"$shellcheck" --version > /dev/null || w_die "shellcheck must be installed!"
if [ ! -f Makefile ] ; then
w_die "$0 should be run from the top of the source tree"
......@@ -37,17 +45,30 @@ fi
#echo "======================== Begin bashate version info ==========================="
## bashate doesn't have a --version option (as of bashate-0.3.1)
#bashate --version
#"$bashate" --version
#echo "======================== End checkbashisms version info ==========================="
echo "======================== Begin checkbashisms version info ==========================="
checkbashisms --version
"$checkbashisms" --version
echo "======================== End checkbashisms version info ==========================="
echo "======================== Begin shellcheck version info ==========================="
shellcheck --version
"$shellcheck" --version
echo "======================== End shellcheck version info ==========================="
# Check if checkbashisms supports `command -v`. If not, warn, or if on travis, patch it:
cat > "${temp}/test.sh" <<_EOF
#!/bin/sh
command -v grep
_EOF
if ! "$checkbashisms" --posix "${temp}/test.sh"; then
echo "checkbashisms fails on command -v, using patch from https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=733511 on a copy in ${temp} to work around"
# /usr/bin/ (or /usr/local/bin on OSX) isn't writable on Travis, so we have to patch it in /tmp and use that:
( cd "$(dirname "$checkbashisms")" && patch -p1 -o "${temp}/checkbashisms.patched" < "$OLDPWD/misc/checkbashisms-command-v.patch" && chmod +x "${temp}/checkbashisms.patched" )
checkbashisms="${temp}/checkbashisms.patched"
fi
# Use git ls-files if available, this prevents 'finding' scripts that aren't checked into git.
# E.g., if patching foo fails, then foo.orig would also be 'found'.
# The find fallback is for non git users, e.g., distros packaging winetricks or end users
......@@ -60,16 +81,16 @@ fi
for shellscript in $files_to_check; do
echo "Checking ${shellscript} for bashisms:"
w_try checkbashisms --posix "${shellscript}"
w_try "$checkbashisms" --posix "${shellscript}"
echo "Checking ${shellscript} with shellcheck:"
w_try shellcheck -s sh "${shellscript}"
w_try "$shellcheck" -s sh "${shellscript}"
echo "Checking ${shellscript} with bashate:"
# Can't ignore individual things for now, filed bug:
# https://bugs.launchpad.net/bash8/+bug/1698088
# E006=line length check
# E010=do/while same line (in some perl in winetricks)
w_try bashate -i E006,E010 "${shellscript}"
# E010=do/while same line (in some embedded perl in winetricks)
w_try "$bashate" -i E006,E010 "${shellscript}"
done
......@@ -25,14 +25,17 @@ cache="$XDG_CACHE_HOME/winetricks"
#set -e
set -x
# FIXME: currently this requires running from src (linkcheck.sh might too), which is ugly.
# IMO it should run from top, and/or have the logic to find src and cd there itself
# Once this is fixed, check outputdir logic below:
if [ -f README.md ] ; then
if [ -f src/winetricks ] ; then
TOP="$PWD"
elif [ -f ../README.md ] ; then
shwinetricks="${PWD}/src/winetricks"
elif [ -f ../src/winetricks ] ; then
# realpath isn't available on OSX, use a subshell instead:
TOP="$(cd .. && echo "$PWD")"
shwinetricks="${TOP}/src/winetricks"
elif [ -f ../../src/winetricks ] ; then
# realpath isn't available on OSX, use a subshell instead:
TOP="$(cd ../.. && echo "$PWD")"
shwinetricks="${TOP}/src/winetricks"
else
echo "Running from unknown directory. Exiting"
exit 1
......@@ -66,11 +69,11 @@ elif [ ! -z "$WINETRICKS_ENABLE_KCOV" ] ; then
# https://github.com/SimonKagstrom/kcov/issues/165
# Previously, winetricks-test used `$WINETRICKS`. That fails for kcov, which
# then tracks bash itself and not winetricks. `./winetricks` works fine.
WINETRICKS="kcov --configure=bash-use-basic-parser=1 $KCOV_RESULTS ./winetricks"
#WINETRICKS="kcov --configure=bash-use-basic-parser=1 $KCOV_RESULTS-$(date +%k-%M-%S) ./winetricks"
# then tracks bash itself and not winetricks. `${shwinetricks}` works fine.
WINETRICKS="kcov --configure=bash-use-basic-parser=1 $KCOV_RESULTS \"${shwinetricks}\""
#WINETRICKS="kcov --configure=bash-use-basic-parser=1 $KCOV_RESULTS-$(date +%k-%M-%S) \"${shwinetricks}\""
else
WINETRICKS="./winetricks"
WINETRICKS="${shwinetricks}"
fi
# Disable winetricks update checks:
......@@ -82,7 +85,7 @@ WINETRICKS_SUPER_QUIET=1
export WINETRICKS_SUPER_QUIET
# verbs known to not work in -q mode yet
BLACKLIST="dx8sdk|kde|mingw|psdk2003|psdkwin7"
BLACKLIST="dx8sdk|kde|psdk2003|psdkwin7"
# verbs that hang in -q because of simple problem we should work around soon
BLACKLIST="$BLACKLIST|vc2005trial"
# verbs that are too slow
......@@ -99,6 +102,9 @@ BLACKLIST="$BLACKLIST|xmllite"
BLACKLIST="$BLACKLIST|allcodecs"
# FIXME: (wine/winetricks bug?) usually hangs in winetricks-test:
BLACKLIST="$BLACKLIST|dotnet30sp1|dotnet35|dotnet35sp1|dotnet45"
# dotnet46 has endless critical section timeouts: https://bugs.winehq.org/show_bug.cgi?id=42470
# FIXME: test Dmitry's patch
BLACKLIST="$BLACKLIST|dotnet46"
# https://bugs.winehq.org/show_bug.cgi?id=40460
BLACKLIST="$BLACKLIST|dotnet20sp2|xna31"
# https://bugs.winehq.org/show_bug.cgi?id=16876
......@@ -136,7 +142,7 @@ skips=0
# middle of a two day run.
check_deps() {
for tool in time cabextract; do
which $tool
command -v "$tool"
ret=$?
if [ ! $ret -eq 0 ] ; then
......@@ -207,7 +213,7 @@ case "$OS" in
for x in \
"$WINESERVER" \
"${WINE}server" \
"$(which wineserver 2> /dev/null)" \
"$(command -v wineserver 2> /dev/null)" \
"$(dirname $WINE)/server/wineserver" \
/usr/lib/wine/wineserver \
/usr/lib/i386-kfreebsd-gnu/wine/wineserver \
......@@ -301,11 +307,19 @@ test_app()
case "$app" in
allcodecs) ;;
*)
# if test was skipped because of wrong arch, don't check for it:
if [ "$archskip" = "1" ]; then
skip "$app was skipped because of wrong prefix arch!"
return
fi
# no xvfb needed
./winetricks -q list-installed > "${outputdir}/list-installed.out"
"${shwinetricks}" -q list-installed > "${outputdir}/list-installed.out"
if ! grep -w "$app" "${outputdir}/list-installed.out"; then
fail "test app $app not installed after install?"
fi
;;
esac
......@@ -335,10 +349,12 @@ test_app()
test_command()
{
archskip=0
command="$*"
_command_dash="$(echo "$command" | tr " " "-")"
export WINEPREFIX="$WINE_PREFIXES/$_command_dash"
# This previously changed spaces to hyphens. Going back to spaces so we test WINEPREFIXes
# with special characters, to prevent issues like https://github.com/Winetricks/winetricks/issues/995
export WINEPREFIX="$WINE_PREFIXES/${command}"
#DRIVE_C="$WINEPREFIX/dosdevices/c:"
# always use a clean $WINEPREFIX
......@@ -347,6 +363,7 @@ test_command()
fi
# Isolate us from the user's home directory
# shellcheck disable=SC2086
$XVFB $WINETRICKS sandbox
echo "Installing $command"
......@@ -361,8 +378,10 @@ test_command()
fail "$command succeeded, should have failed"
elif [ "$return" = "32" ] && [ "$WINEARCH" != "win32" ]; then
skip "$command is not supported on $WINEARCH, requires win32"
archskip=1
elif [ "$return" = "64" ] && [ "$WINEARCH" != "win64" ]; then
skip "$command is not supported on $WINEARCH, requires win64"
archskip=1
else
fail "test_command $command failed!"
return
......@@ -548,8 +567,8 @@ _EOF
test_dlls()
{
# no xvfb needed, kcov breaks
./winetricks list-manual-download > "${outputdir}/manual.log"
./winetricks dlls list | awk '{print $1}' > "${outputdir}/dlls.log"
"${shwinetricks}" list-manual-download > "${outputdir}/manual.log"
"${shwinetricks}" dlls list | awk '{print $1}' > "${outputdir}/dlls.log"
if grep .------------------- "${outputdir}/dlls.log" ; then
fail "output of dlls list contained garbage"
exit 1
......@@ -600,7 +619,7 @@ test_dotnet()
test_install_cached_or_download()
{
# no xvfb needed, kcov breaks
./winetricks list-cached list-download > "${outputdir}/ticd.log"
"${shwinetricks}" list-cached list-download > "${outputdir}/ticd.log"
if grep .------------------- ticd.log ; then
fail "output of list-cached list-download contained garbage"
exit 1
......@@ -623,7 +642,7 @@ test_install_cached_or_download()
done
# no xvfb needed, kcov breaks
./winetricks list-cached | sort > cached.txt
"${shwinetricks}" list-cached | sort > cached.txt
# Verbs that are just wrappers around others don't detect cache/install state yet.
# Verbs that are just informative placeholders don't ever download (gecko).
......@@ -674,7 +693,7 @@ test_full() {
}
test_xvfb() {
if [ ! "$(which xvfb-run 2>/dev/null)" ] ; then
if [ ! "$(command -v xvfb-run 2>/dev/null)" ] ; then
w_die "Please install xvfb-run for xvfb tests"
fi
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment