Commit 333cc25a authored by Vitaly Lipatov's avatar Vitaly Lipatov

just import winetricks-20191224.tar with rpmgs script

parent 2d1fd8a7
......@@ -3,7 +3,7 @@ os:
- linux
- osx
sudo: required
dist: trusty
dist: bionic
# Note: needed by winetricks-test, which not yet supported in TravisCI
......@@ -21,8 +21,6 @@ addons:
# for checkbashisms
- devscripts
# Note: if statements cannot go across multiple lines. Combine into one, or move to a shell script!
# Ubuntu notes:
# * ShellCheck is already installed in TravisCI
# * bashate is not available on Trusty and we need to install it manually
......@@ -52,12 +50,23 @@ addons:
# If the script fails, install pip and use it to install bashate
before_install:
- time sh ./misc/travis-install-bashate-deb.sh || time sh ./misc/travis-install-bashate-pip.sh
# "brew update" (or auto-update when installing) takes long time
# checkbashisms and shellcheck can be installed without this
# So installing with "HOMEBREW_NO_AUTO_UPDATE=1" considerably reduces
# job time on macOS
# If it fails retry with auto-update
- if [[ "$TRAVIS_OS_NAME" == "osx" ]] ; then time env HOMEBREW_NO_AUTO_UPDATE=1 brew install checkbashisms shellcheck || time brew install checkbashisms shellcheck ; fi
# "brew update" (or auto-update when installing) takes a long time,
# but checkbashisms and shellcheck can (usually) be installed without this
# So try installing with "HOMEBREW_NO_AUTO_UPDATE=1", which considerably reduces job time on macOS
# If it fails retry each individually with auto-update enabled
- |
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
for pkg in checkbashisms shellcheck yq; do
if HOMEBREW_NO_AUTO_UPDATE=1 brew install "$pkg"; then
# everything worked, nothing more to do:
:
else
# Allow failure, since homebrew can be flaky (the tests will still run on linux).
time brew install "$pkg" || true
fi
done
fi
# Note if testing on a branch, you can replace this with your desired command, e.g.,:
# script: time sh ./src/winetricks -q comctl32
......@@ -73,9 +82,6 @@ script:
# shell-checks is quick and works, no display or compiles needed
- time sh ./tests/shell-checks
# Also check for trailing whitespace. Not doing in shell-checks because it depends on a clean tree (uses git diff):
- if [ "$TRAVIS_OS_NAME" = "linux" ]; then time sh ./tests/whitespace-check; fi
# Keep updates working
- time sh ./tests/self-update-test
......
......@@ -201,10 +201,10 @@ Note that the file prefix (icecat.verb) and command name (icecat) must match. Al
The tests need `bashate`, `checkbashisms`, and `shellcheck>=0.4.4` installed.
Makefile supports a few test targets:
* check - runs './tests/winetricks-tests quick' (without first clearing $WINETRICKS_CACHE)
* shell-checks - runs './tests/shell-checks'
* test - runs './tests/winetricks-tests full' (and clears $WINETRICKS_CACHE first)
* xvfb-check - runs './tests/winetricks-tests xvfb-check' (without first clearing $WINETRICKS_CACHE first)
* `check` - runs './tests/winetricks-tests quick' (without first clearing $WINETRICKS_CACHE)
* `shell-checks` - runs './tests/shell-checks'
* `test` - runs './tests/winetricks-tests full' (and clears $WINETRICKS_CACHE first)
* `xvfb-check` - runs './tests/winetricks-tests xvfb-check' (without first clearing $WINETRICKS_CACHE first)
# Support
* Winetricks is maintained by Austin English <austinenglish@gmail.com>.
......
Using winetricks 20190912 - sha256sum: a251311a6490ce546f5c9b450492be26ae8099517cc3ed8c50d6ef065be4ad0d with wine-4.14 and WINEARCH=win32
===== apps =====
3m_library 3M Cloud Library (3M Company, 2015) [downloadable]
7zip 7-Zip 19.00 (Igor Pavlov, 2019) [downloadable]
......@@ -19,7 +18,6 @@ foobar2000 foobar2000 v1.4 (Peter Pawlowski, 2018)
hhw HTML Help Workshop (Microsoft, 2000) [downloadable]
iceweasel GNU Icecat 31.7.0 (GNU Foundation, 2015) [downloadable]
irfanview Irfanview (Irfan Skiljan, 2016) [downloadable]
kde KDE on Windows (various, 2013) [downloadable]
kindle Amazon Kindle (Amazon, 2017) [downloadable]
kobo Kobo e-book reader (Kobo, 2011) [downloadable]
mingw Minimalist GNU for Windows, including GCC for Windows (GNU, 2013) [downloadable]
......@@ -30,7 +28,7 @@ mt4 Meta Trader 4 (, 2005) [downloadable]
njcwp_trial NJStar Chinese Word Processor trial (NJStar, 2015) [downloadable]
njjwp_trial NJStar Japanese Word Processor trial (NJStar, 2009) [downloadable]
nook Nook for PC (e-book reader) (Barnes & Noble, 2011) [downloadable]
npp Notepad++ (Don Ho, 2015) [downloadable]
npp Notepad++ (Don Ho, 2019) [downloadable]
office2003pro Microsoft Office 2003 Professional (Microsoft, 2002)
office2007pro Microsoft Office 2007 Professional (Microsoft, 2006)
office2013pro Microsoft Office 2013 Professional (Microsoft, 2013) [downloadable]
......@@ -119,7 +117,12 @@ d9vk012 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux
d9vk013f Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (0.13f) (Joshua Ashton, 2019) [downloadable]
d9vk013 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (0.13) (Joshua Ashton, 2019) [downloadable]
d9vk020 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (0.20) (Joshua Ashton, 2019) [downloadable]
d9vk021 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (0.21) (Joshua Ashton, 2019) [downloadable]
d9vk022 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (0.22) (Joshua Ashton, 2019) [downloadable]
d9vk030 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (0.30) (Joshua Ashton, 2019) [downloadable]
d9vk040 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (0.40.1) (Joshua Ashton, 2019) [downloadable]
d9vk_master Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (master) (Joshua Ashton, 2019) [downloadable]
d9vk Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (latest) (Joshua Ashton, 2019) [downloadable]
dbghelp MS dbghelp (Microsoft, 2008) [downloadable]
devenum MS devenum.dll from DirectX user redistributable (Microsoft, 2010) [downloadable]
dinput8 MS DirectInput 8 from DirectX user redistributable (Microsoft, 2010) [downloadable]
......@@ -201,6 +204,13 @@ dxvk131 Vulkan-based D3D10/D3D11 implementation for Linux / Win
dxvk132 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.3.2) (Philip Rebohle, 2017) [downloadable]
dxvk133 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.3.3) (Philip Rebohle, 2017) [downloadable]
dxvk134 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.3.4) (Philip Rebohle, 2017) [downloadable]
dxvk140 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.4) (Philip Rebohle, 2017) [downloadable]
dxvk141 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.4.1) (Philip Rebohle, 2017) [downloadable]
dxvk142 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.4.2) (Philip Rebohle, 2017) [downloadable]
dxvk143 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.4.3) (Philip Rebohle, 2017) [downloadable]
dxvk144 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.4.4) (Philip Rebohle, 2017) [downloadable]
dxvk145 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.4.5) (Philip Rebohle, 2017) [downloadable]
dxvk146 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.4.6) (Philip Rebohle, 2017) [downloadable]
dxvk Vulkan-based D3D10/D3D11 implementation for Linux / Wine (latest) (Philip Rebohle, 2017) [downloadable]
esent MS Extensible Storage Engine (Microsoft, 2011) [downloadable]
faudio1901 FAudio (xaudio reimplementation, with xna support) builds for win32 (19.01) (Kron4ek, 2019) [downloadable]
......@@ -216,6 +226,8 @@ filever Microsoft's filever, for dumping file version info (Mic
flash Flash Player 29 (Adobe, 2018) [downloadable]
galliumnine02 Gallium Nine Standalone (v0.2) (Gallium Nine Team, 2019) [downloadable]
galliumnine03 Gallium Nine Standalone (v0.3) (Gallium Nine Team, 2019) [downloadable]
galliumnine04 Gallium Nine Standalone (v0.4) (Gallium Nine Team, 2019) [downloadable]
galliumnine05 Gallium Nine Standalone (v0.5) (Gallium Nine Team, 2019) [downloadable]
galliumnine Gallium Nine Standalone (latest) (Gallium Nine Team, 2019) [downloadable]
gdiplus MS GDI+ (Microsoft, 2011) [downloadable]
gdiplus_winxp MS GDI+ (Microsoft, 2004)
......@@ -253,6 +265,7 @@ msmask MS Masked Edit Control (Microsoft, 2009) [downloadable]
mspatcha MS mspatcha (Microsoft, 2004) [downloadable]
msscript MS Windows Script Control (Microsoft, 2004) [downloadable]
msvcirt Visual C++ 6 SP4 msvcirt library; part of vcrun6 (Microsoft, 2000) [downloadable]
msvcrt40 fixme (Microsoft, 2011) [downloadable]
msxml3 MS XML Core Services 3.0 (Microsoft, 2005) [downloadable]
msxml4 MS XML Core Services 4.0 (Microsoft, 2009) [downloadable]
msxml6 MS XML Core Services 6.0 sp1 (Microsoft, 2007) [downloadable]
......@@ -462,8 +475,8 @@ alldlls=builtin Override most common DLLs to builtin
alldlls=default Remove all DLL overrides
ao=disabled Disable AlwaysOffscreen (default)
ao=enabled Enable AlwaysOffscreen
autostart_winedbg=disable Prevent winedbg from launching when an unhandled exception occurs
autostart_winedbg=enable Automatically launch winedbg when an unhandled exception occurs (default)
autostart_winedbg=disabled Prevent winedbg from launching when an unhandled exception occurs
autostart_winedbg=enabled Automatically launch winedbg when an unhandled exception occurs (default)
bad Fake verb that always returns false
cfc=disable Disable CheckFloatConstants (default)
cfc=enabled Enable CheckFloatConstants
......
Using winetricks 20190912 - sha256sum: a251311a6490ce546f5c9b450492be26ae8099517cc3ed8c50d6ef065be4ad0d with wine-4.14 and WINEARCH=win32
3m_library 3M Cloud Library (3M Company, 2015) [downloadable]
7zip 7-Zip 19.00 (Igor Pavlov, 2019) [downloadable]
abiword AbiWord 2.8.6 (AbiSource, 2010) [downloadable]
......@@ -18,7 +17,6 @@ foobar2000 foobar2000 v1.4 (Peter Pawlowski, 2018)
hhw HTML Help Workshop (Microsoft, 2000) [downloadable]
iceweasel GNU Icecat 31.7.0 (GNU Foundation, 2015) [downloadable]
irfanview Irfanview (Irfan Skiljan, 2016) [downloadable]
kde KDE on Windows (various, 2013) [downloadable]
kindle Amazon Kindle (Amazon, 2017) [downloadable]
kobo Kobo e-book reader (Kobo, 2011) [downloadable]
mingw Minimalist GNU for Windows, including GCC for Windows (GNU, 2013) [downloadable]
......@@ -29,7 +27,7 @@ mt4 Meta Trader 4 (, 2005) [downloadable]
njcwp_trial NJStar Chinese Word Processor trial (NJStar, 2015) [downloadable]
njjwp_trial NJStar Japanese Word Processor trial (NJStar, 2009) [downloadable]
nook Nook for PC (e-book reader) (Barnes & Noble, 2011) [downloadable]
npp Notepad++ (Don Ho, 2015) [downloadable]
npp Notepad++ (Don Ho, 2019) [downloadable]
office2003pro Microsoft Office 2003 Professional (Microsoft, 2002)
office2007pro Microsoft Office 2007 Professional (Microsoft, 2006)
office2013pro Microsoft Office 2013 Professional (Microsoft, 2013) [downloadable]
......
Using winetricks 20190912 - sha256sum: a251311a6490ce546f5c9b450492be26ae8099517cc3ed8c50d6ef065be4ad0d with wine-4.14 and WINEARCH=win32
3dmark03 3D Mark 03 (Futuremark, 2003)
3dmark05 3D Mark 05 (Futuremark, 2005) [downloadable]
3dmark06 3D Mark 06 (Futuremark, 2006)
......
Using winetricks 20190912 - sha256sum: a251311a6490ce546f5c9b450492be26ae8099517cc3ed8c50d6ef065be4ad0d with wine-4.14 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]
......@@ -50,7 +49,12 @@ d9vk012 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux
d9vk013f Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (0.13f) (Joshua Ashton, 2019) [downloadable]
d9vk013 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (0.13) (Joshua Ashton, 2019) [downloadable]
d9vk020 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (0.20) (Joshua Ashton, 2019) [downloadable]
d9vk021 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (0.21) (Joshua Ashton, 2019) [downloadable]
d9vk022 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (0.22) (Joshua Ashton, 2019) [downloadable]
d9vk030 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (0.30) (Joshua Ashton, 2019) [downloadable]
d9vk040 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (0.40.1) (Joshua Ashton, 2019) [downloadable]
d9vk_master Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (master) (Joshua Ashton, 2019) [downloadable]
d9vk Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (latest) (Joshua Ashton, 2019) [downloadable]
dbghelp MS dbghelp (Microsoft, 2008) [downloadable]
devenum MS devenum.dll from DirectX user redistributable (Microsoft, 2010) [downloadable]
dinput8 MS DirectInput 8 from DirectX user redistributable (Microsoft, 2010) [downloadable]
......@@ -132,6 +136,13 @@ dxvk131 Vulkan-based D3D10/D3D11 implementation for Linux / Win
dxvk132 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.3.2) (Philip Rebohle, 2017) [downloadable]
dxvk133 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.3.3) (Philip Rebohle, 2017) [downloadable]
dxvk134 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.3.4) (Philip Rebohle, 2017) [downloadable]
dxvk140 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.4) (Philip Rebohle, 2017) [downloadable]
dxvk141 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.4.1) (Philip Rebohle, 2017) [downloadable]
dxvk142 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.4.2) (Philip Rebohle, 2017) [downloadable]
dxvk143 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.4.3) (Philip Rebohle, 2017) [downloadable]
dxvk144 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.4.4) (Philip Rebohle, 2017) [downloadable]
dxvk145 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.4.5) (Philip Rebohle, 2017) [downloadable]
dxvk146 Vulkan-based D3D10/D3D11 implementation for Linux / Wine (1.4.6) (Philip Rebohle, 2017) [downloadable]
dxvk Vulkan-based D3D10/D3D11 implementation for Linux / Wine (latest) (Philip Rebohle, 2017) [downloadable]
esent MS Extensible Storage Engine (Microsoft, 2011) [downloadable]
faudio1901 FAudio (xaudio reimplementation, with xna support) builds for win32 (19.01) (Kron4ek, 2019) [downloadable]
......@@ -147,6 +158,8 @@ filever Microsoft's filever, for dumping file version info (Mic
flash Flash Player 29 (Adobe, 2018) [downloadable]
galliumnine02 Gallium Nine Standalone (v0.2) (Gallium Nine Team, 2019) [downloadable]
galliumnine03 Gallium Nine Standalone (v0.3) (Gallium Nine Team, 2019) [downloadable]
galliumnine04 Gallium Nine Standalone (v0.4) (Gallium Nine Team, 2019) [downloadable]
galliumnine05 Gallium Nine Standalone (v0.5) (Gallium Nine Team, 2019) [downloadable]
galliumnine Gallium Nine Standalone (latest) (Gallium Nine Team, 2019) [downloadable]
gdiplus MS GDI+ (Microsoft, 2011) [downloadable]
gdiplus_winxp MS GDI+ (Microsoft, 2004)
......@@ -184,6 +197,7 @@ msmask MS Masked Edit Control (Microsoft, 2009) [downloadable]
mspatcha MS mspatcha (Microsoft, 2004) [downloadable]
msscript MS Windows Script Control (Microsoft, 2004) [downloadable]
msvcirt Visual C++ 6 SP4 msvcirt library; part of vcrun6 (Microsoft, 2000) [downloadable]
msvcrt40 fixme (Microsoft, 2011) [downloadable]
msxml3 MS XML Core Services 3.0 (Microsoft, 2005) [downloadable]
msxml4 MS XML Core Services 4.0 (Microsoft, 2009) [downloadable]
msxml6 MS XML Core Services 6.0 sp1 (Microsoft, 2007) [downloadable]
......
Using winetricks 20190912 - sha256sum: a251311a6490ce546f5c9b450492be26ae8099517cc3ed8c50d6ef065be4ad0d with wine-4.14 and WINEARCH=win32
3dmark05
3dmark2000
3dmark2001
......@@ -80,12 +79,17 @@ d3dx9_41
d3dx9_42
d3dx9_43
d3dxof
d9vk
d9vk010
d9vk011
d9vk012
d9vk013
d9vk013f
d9vk020
d9vk021
d9vk022
d9vk030
d9vk040
d9vk_master
dbghelp
devenum
......@@ -172,6 +176,13 @@ dxvk131
dxvk132
dxvk133
dxvk134
dxvk140
dxvk141
dxvk142
dxvk143
dxvk144
dxvk145
dxvk146
emu8086
esent
eufonts
......@@ -194,6 +205,8 @@ fontxplorer
galliumnine
galliumnine02
galliumnine03
galliumnine04
galliumnine05
gdiplus
georgia
gfw
......@@ -216,7 +229,6 @@ irfanview
itircl
itss
jet40
kde
kindle
kobo
l3codecx
......@@ -249,6 +261,7 @@ mspaint
mspatcha
msscript
msvcirt
msvcrt40
msxml3
msxml4
msxml6
......
Using winetricks 20190912 - sha256sum: a251311a6490ce546f5c9b450492be26ae8099517cc3ed8c50d6ef065be4ad0d with wine-4.14 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]
......
Using winetricks 20190912 - sha256sum: a251311a6490ce546f5c9b450492be26ae8099517cc3ed8c50d6ef065be4ad0d with wine-4.14 and WINEARCH=win32
3dmark03
3dmark06
amnesia_tdd_demo
......
Using winetricks 20190912 - sha256sum: a251311a6490ce546f5c9b450492be26ae8099517cc3ed8c50d6ef065be4ad0d with wine-4.14 and WINEARCH=win32
alldlls=builtin Override most common DLLs to builtin
alldlls=default Remove all DLL overrides
ao=disabled Disable AlwaysOffscreen (default)
ao=enabled Enable AlwaysOffscreen
autostart_winedbg=disable Prevent winedbg from launching when an unhandled exception occurs
autostart_winedbg=enable Automatically launch winedbg when an unhandled exception occurs (default)
autostart_winedbg=disabled Prevent winedbg from launching when an unhandled exception occurs
autostart_winedbg=enabled Automatically launch winedbg when an unhandled exception occurs (default)
bad Fake verb that always returns false
cfc=disable Disable CheckFloatConstants (default)
cfc=enabled Enable CheckFloatConstants
......
......@@ -49,7 +49,7 @@ for dir in "${CACHE_DIR}/"* ; do
esac
for file in "${dir}"/* ; do
# Convert the package:
# Convert the package:
echo file="${file}"
echo "dir=$dir, package=$package, file=$file"
sha1_file="$(sha1sum "${file}" | awk '{print $1}')"
......
......@@ -41,13 +41,12 @@ fi
datadir="${TOP}/output/links.d"
mkdir -p "${datadir}"
WINETRICKS_SOURCEFORGE=https://downloads.sourceforge.net
# ftp.microsoft.com resolves to two different IP addresses, one of which is broken
ftp_microsoft_com=64.4.17.176
w_download() {
# shellcheck disable=SC2016
url="$(echo "$1" | sed -e 's,$ftp_microsoft_com,'$ftp_microsoft_com',;s,$WINETRICKS_SOURCEFORGE,'$WINETRICKS_SOURCEFORGE',;s, ,%20,g')"
url="$(echo "$1" | sed -e 's,$ftp_microsoft_com,'$ftp_microsoft_com',;s, ,%20,g')"
urlkey="$(echo "$url" | tr / _)"
echo "$url" > "${datadir}/${urlkey}.url"
}
......@@ -60,7 +59,7 @@ extract_all() {
# https://github.com/koalaman/shellcheck/issues/861
# shellcheck disable=SC1003
grep '^ *w_download ' "${shwinetricks}" | grep -E 'ftp|http|WINETRICKS_SOURCEFORGE' | grep -v "w_linkcheck_ignore=1" | sed 's/^ *//' | tr -d '\\' > url-script-fragment.tmp
grep '^ *w_download ' "${shwinetricks}" | grep -E 'ftp|http' | grep -v "w_linkcheck_ignore=1" | sed 's/^ *//' | tr -d '\\' > url-script-fragment.tmp
# shellcheck disable=SC1091
. ./url-script-fragment.tmp
......@@ -151,8 +150,7 @@ esac
# cleanup
rm -rf "$datadir" url-script-fragment.tmp
echo "Test over, $errors failures, $passes successes."
if test $errors = 0 && test $passes -gt 0
then
if test $errors = 0 && test $passes -gt 0; then
echo PASS
exit 0
else
......
......@@ -12,8 +12,7 @@
set -e
if ! test "$1"
then
if ! test "$1"; then
echo "Please specify a bunch of wineprefixes to grub through"
echo "For instance, ~/winetrickstest-prefixes/dotnet20sp{,1,2}"
exit 1
......@@ -21,7 +20,8 @@ fi
# Generate list of all filenames (except those which look ephemeral)
rm -f /tmp/allfiles.txt
for dir ; do
for dir; do
(
cd "$dir/drive_c"
# FIXME: don't assume there are no ='s in filenames, e.g. rewrite in perl
......@@ -34,7 +34,7 @@ done
sort < /tmp/allfiles.txt | uniq -c | awk '$1 == 1 {print $2}' > /tmp/uniqfiles.txt
# Associate them with the verb they came from
for dir ; do
for dir; do
(
cd "$dir"
# Undo the space-to-= transformation, too
......
.\" -*- nroff -*-
.TH WINETRICKS 1 "September 2019" "Winetricks 20190912" "Wine Package Manager"
.TH WINETRICKS 1 "December 2019" "Winetricks 20191224" "Wine Package Manager"
.SH NAME
winetricks \- manage virtual Windows environments using Wine
.SH SYNOPSIS
......
#!/bin/sh
set -x
# Invoked by travis to check for trailing whitespace
# Only in travis since local tree may have other diffs applied:
make cleanup
# Git diff doesn't show the trailing whitespace as of 2018/05/13.
# Tried various color/diff settings with no luck.
# The workaround is cat, but commands aren't standard on Linux/OS X
git diff --exit-code > whitespace.diff
ret="$?"
if [ "$ret" = 0 ]; then
echo "No trailing whitespace found."
exit 0
else
echo "There is trailing whitespace that needs to be fixed:"
if [ "$TRAVIS_OS_NAME" = "linux" ]; then
cat -A whitespace.diff
elif [ "$TRAVIS_OS_NAME" = "osx" ]; then
# Currently unimpemented on OSX.
# sed will need to be fixed as well:
# sed --in-place 's,[ \t]\+$,,' $(find Makefile src tests -type f)
# sed: illegal option -- -
# usage: sed script [-Ealn] [-i extension] [file ...]
# sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...]
# make: *** [cleanup] Error 1
# cat -etv whitespace.diff
echo "Not fully implemented on osx yet"
else
echo "Unknown OS!"
fi
exit 1
fi
......@@ -135,7 +135,7 @@ skips=0
# middle of a two day run.
check_deps() {
for tool in time cabextract; do
command -v "$tool"
command -v "$tool" >/dev/null 2>&1
ret=$?
if [ ! $ret -eq 0 ] ; then
......@@ -220,8 +220,7 @@ case "$OS" in
/usr/lib/i386-linux-gnu/wine-development/wineserver \
/usr/lib/powerpc-linux-gnu/wine-development/wineserver \
/usr/lib/x86_64-linux-gnu/wine-development/wineserver \
file-not-found
do
file-not-found; do
if [ -x "$x" ] ; then
case "$x" in
/usr/lib/*/wine-development/wineserver)
......@@ -359,6 +358,8 @@ test_command()
archskip=0
command="$*"
# If _W_wine_not_needed is set, don't fail if wine is missing (used by test_listing())
# 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}"
......@@ -371,13 +372,15 @@ test_command()
# Isolate us from the user's home directory
# shellcheck disable=SC2086
$XVFB $WINETRICKS sandbox || fail "\'$XVFB $WINETRICKS sandbox\' failed"
echo "Installing $command"
# shellcheck disable=SC2086
$XVFB $WINETRICKS --no-isolate -q nocrashdialog "$@"
return=$?
if [ -z "$_W_wine_not_needed" ]; then
$XVFB $WINETRICKS sandbox || fail "\'$XVFB $WINETRICKS sandbox\' failed"
echo "Installing $command"
$XVFB $WINETRICKS --no-isolate -q nocrashdialog "$@"
return=$?
else
$XVFB $WINETRICKS --no-isolate -q "$@"
return=$?
fi
if [ -d "$WINEPREFIX/drive_c/windows/syswow64" ]; then
WINEARCH="win64"
......@@ -393,6 +396,9 @@ test_command()
skip "$command is not supported on $WINEARCH, requires win64"
archskip=1
return
elif [ "$return" = "99" ]; then
skip "$command is known to be broken on this wine version, ignoring"
return
fi
if [ "$EXPECT_FAIL" = "yes" ] ; then
......@@ -421,8 +427,11 @@ test_command()
echo "Checking for dangling processes!"
# shellcheck disable=SC2009
ps augxw | grep \\.exe
"$WINESERVER" -w
echo "Wineserver done."
if [ -z "$_W_wine_not_needed" ]; then
"$WINESERVER" -w
echo "Wineserver done."
fi
}
test_custom_verbs()
......@@ -644,6 +653,48 @@ test_install_cached_or_download()
fi
}
test_listing()
{
export _W_wine_not_needed=1
W_WINE="$WINE"
# Most options should work with or without WINE available:
for category in $("${WINETRICKS}" list); do
export WINE="$W_WINE"
test_command "$category" list
export WINE=/dev/null
test_command "$category" list
done
for hardcoded in list list-cached list-download list-manual-download list-all; do
export WINE="$W_WINE"
test_command $hardcoded
export WINE=/dev/null
test_command $hardcoded
done
# list-installed needs the installed metadata which requires wine/wineprefix info:
export WINE="$W_WINE"
test_command list-installed
# Testing list-installed without wine is hard. A new prefix won't have anything installed
# and so winetricks bails out before it tries to run w_metadata
# So to truly test we need something installed first, then re-use that prefix with WINE=/dev/null
unset _W_wine_not_needed
export WINE="$W_WINE"
test_command mfc42
export WINEPREFIX="$WINE_PREFIXES/mfc42"
export _W_wine_not_needed=1
export WINE=/dev/null
EXPECT_FAIL=yes "$WINETRICKS" -q list-installed
unset _W_wine_not_needed
export WINE="$W_WINE"
}
test_quick()
{
echo "warning: quick test takes up around 20GB"
......@@ -657,8 +708,12 @@ test_quick()
# And test all the automatically-downloadable dlls
test_dlls
# And win32 7zip fallback
test_7zip
# And listing verbs (with/without WINE available)
test_listing
}
test_full() {
......@@ -748,44 +803,64 @@ test_w_compare_wine_version()
# comparison="$2" # the comparison to make (e.g., ',1.8', '1.9,', or '1.8,1.9')
# workaround_expected="$3" # should the workaround be executed (yes/no)
helper_test_w_compare_wine_version "wine-2.0" ",1.6" "no"
helper_test_w_compare_wine_version "wine-2.0" ",1.4" "no"
helper_test_w_compare_wine_version "wine-2.0" "1.4,1.6" "no"
# good (less than)
helper_test_w_compare_wine_version "wine-1.0" ",1.8.0" "yes"
helper_test_w_compare_wine_version "wine-3.0" ",3.0" "yes"
# good (between)
helper_test_w_compare_wine_version "wine-1.6" "1.4,2.0" "yes"
helper_test_w_compare_wine_version "wine-1.8.0" "1.8.0,3.0" "yes"
helper_test_w_compare_wine_version "wine-3.0" "1.8.0,3.0" "yes"
# good (greater than)
helper_test_w_compare_wine_version "wine-1.3" "1.2," "yes"
helper_test_w_compare_wine_version "wine-1.3.4" "1.2," "yes"
helper_test_w_compare_wine_version "wine-1.6" "1.2," "yes"
helper_test_w_compare_wine_version "wine-1.6-rc1" "1.2," "yes"
helper_test_w_compare_wine_version "wine-2.0.1" "1.8.0," "yes"
helper_test_w_compare_wine_version "wine-2.0.1" "2.0," "yes"
helper_test_w_compare_wine_version "wine-2.0" "1.8.0," "yes"
helper_test_w_compare_wine_version "wine-2.0" "1.8.0," "yes"
helper_test_w_compare_wine_version "wine-2.0" "1.8.1," "yes"
helper_test_w_compare_wine_version "wine-2.0" "1.8," "yes"
helper_test_w_compare_wine_version "wine-2.0.1 (debian 2.0.1-r1)" "1.8.0," "yes"
helper_test_w_compare_wine_version "wine-2.0.1 (staging)" "1.8.0," "yes"
helper_test_w_compare_wine_version "wine-2.0-rc1" "1.8.0," "yes"
helper_test_w_compare_wine_version "wine-3.0" "1.8.0," "yes"
helper_test_w_compare_wine_version "wine-3.0" "3.0," "yes"
# bad (less than)
helper_test_w_compare_wine_version "wine-1.0" "1.8.0," "no"
helper_test_w_compare_wine_version "wine-1.0" ",1.8.0" "yes"
helper_test_w_compare_wine_version "wine-2.0" "3.0," "no"
helper_test_w_compare_wine_version "wine-2.0.1 (staging)" "1.8.0," "yes"
# bad (between)
helper_test_w_compare_wine_version "wine-1.0" "2.0,3.0" "no"
helper_test_w_compare_wine_version "wine-2.0" "1.4,1.6" "no"
# bad (greater than)
helper_test_w_compare_wine_version "wine-1.3" ",1.2" "no"
helper_test_w_compare_wine_version "wine-1.3" "1.2," "yes"
helper_test_w_compare_wine_version "wine-1.3.4" ",1.2" "no"
helper_test_w_compare_wine_version "wine-1.3.4" "1.2," "yes"
helper_test_w_compare_wine_version "wine-1.6" ",1.2" "no"
helper_test_w_compare_wine_version "wine-1.6" ",1.2" "no"
helper_test_w_compare_wine_version "wine-1.6" "1.2," "yes"
helper_test_w_compare_wine_version "wine-1.6-rc1" ",1.2" "no"
helper_test_w_compare_wine_version "wine-1.6-rc1" "1.2," "yes"
helper_test_w_compare_wine_version "wine-2.0.1" ",1.8.0" "no"
helper_test_w_compare_wine_version "wine-2.0.1" "1.8.0," "yes"
helper_test_w_compare_wine_version "wine-2.0.1" ",2.0" "no"
helper_test_w_compare_wine_version "wine-2.0.1" ",2.0" "no"
helper_test_w_compare_wine_version "wine-2.0.1" "2.0," "yes"
helper_test_w_compare_wine_version "wine-2.0" ",1.4" "no"
helper_test_w_compare_wine_version "wine-2.0" ",1.6" "no"
helper_test_w_compare_wine_version "wine-2.0" ",1.8.0" "no"
helper_test_w_compare_wine_version "wine-2.0" ",1.8.0" "no"
helper_test_w_compare_wine_version "wine-2.0" "1.8.0," "yes"
helper_test_w_compare_wine_version "wine-2.0" "1.8.0," "yes"
helper_test_w_compare_wine_version "wine-2.0" ",1.8.1" "no"
helper_test_w_compare_wine_version "wine-2.0" "1.8.1," "yes"
helper_test_w_compare_wine_version "wine-2.0" ",1.8" "no"
helper_test_w_compare_wine_version "wine-2.0" "1.8," "yes"
helper_test_w_compare_wine_version "wine-2.0" ",1.9" "no"
helper_test_w_compare_wine_version "wine-2.0.1 (debian 2.0.1-r1)" ",1.8.0" "no"
helper_test_w_compare_wine_version "wine-2.0.1 (debian 2.0.1-r1)" "1.8.0," "yes"
helper_test_w_compare_wine_version "wine-2.0.1 (staging)" ",1.8.0" "no"
helper_test_w_compare_wine_version "wine-2.0.1 (staging)" "1.8.0," "yes"
helper_test_w_compare_wine_version "wine-2.0-rc1" ",1.8.0" "no"
helper_test_w_compare_wine_version "wine-2.0-rc1" ",1.8.0" "no"
helper_test_w_compare_wine_version "wine-2.0-rc1" "1.8.0," "yes"
helper_test_w_compare_wine_version "wine-3.0" ",1.8.0" "no"
helper_test_w_compare_wine_version "wine-3.0" "1.8.0," "yes"
helper_test_w_compare_wine_version "wine-4.0" ",3.0" "no"
# FIXME: there's plenty of room for more tests..
}
......@@ -796,6 +871,8 @@ case "$1" in
custom-verbs) test_custom_verbs ;;
dotnet) check_deps && test_dotnet ;;
full) check_deps && test_full ;;
# doesn't use time/cabextract, so not bothering to check deps for now:
listing) test_listing ;;
quick) check_deps && test_quick ;;
w_compare_wine_version) check_deps && test_w_compare_wine_version ;;
xvfb-check) check_deps && XVFB=xvfb-run && export XVFB && test_xvfb ;;
......
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