Commit 070cb78f authored by Vitaly Lipatov's avatar Vitaly Lipatov

just import winetricks-20201206.tar with rpmgs script

parent a65f09c0
enable=require-variable-braces
......@@ -2,6 +2,9 @@ language: shell
os:
- linux
- osx
arch:
- amd64
- ppc64le
sudo: required
dist: bionic
......@@ -22,7 +25,7 @@ addons:
- devscripts
# Ubuntu notes:
# * ShellCheck is already installed in TravisCI
# * ShellCheck is already installed in TravisCI (but not on ppc64le, see below)
# * bashate is not available on Trusty and we need to install it manually
# macOS note:
# * Homebrew doesn't provide bashate, they don't package things
......@@ -67,6 +70,14 @@ before_install:
fi
done
fi
# Install shellcheck for power job
- |
if [[ "$TRAVIS_CPU_ARCH" == "ppc64le" ]]; then
time sudo apt update;
time sudo apt install -y shellcheck;
fi
# Note if testing on a branch, you can replace this with your desired command, e.g.,:
# script: time sh ./src/winetricks -q comctl32
......
......@@ -16,7 +16,7 @@ https://github.com/Winetricks/winetricks/releases
# Installing
The ```winetricks``` package should be used if it is available and up to date. The package is available in most mainstream (Unix-like) Operating Systems:
* Arch: https://www.archlinux.org/packages/community/any/winetricks/
* Arch: https://www.archlinux.org/packages/multilib/x86_64/winetricks/
* Debian: https://packages.debian.org/sid/winetricks
* Fedora: https://fedoraproject.org/wiki/Wine#Packages
* FreeBSD: https://www.freebsd.org/cgi/ports.cgi?query=winetricks&stype=all
......@@ -42,9 +42,10 @@ Then, for Ubuntu, use a shell script to download the current winetricks script(s
E.g.:
```
#!/bin/sh
# Create and switch to a temporary directory writeable by current user. See:
# https://www.tldp.org/LDP/abs/html/subshells.html
cd "$(mktemp -d)"
cd "$(mktemp -d)" || exit 1
# Use a BASH "here document" to create an updater shell script file.
# See:
......@@ -58,7 +59,7 @@ cat > update_winetricks <<_EOF_SCRIPT
# Create and switch to a temporary directory writeable by current user. See:
# https://www.tldp.org/LDP/abs/html/subshells.html
cd "$(mktemp -d)"
cd "\$(mktemp -d)"
# Download the latest winetricks script (master="latest version") from Github.
wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
......@@ -77,7 +78,7 @@ wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetric
# Move the winetricks BASH completion script to a standard location for BASH completion modules. See:
# https://www.tldp.org/LDP/abs/html/tabexpansion.html
sudo mv winetricks.bash-completion /usr/share/bash-completion/completions/winetricks
_EOF_SCRIPT
_EOF_SCRIPT
###### create update_winetricks FINISH ########
# Mark the update_winetricks script (we've just written out) as executable. See:
......@@ -104,7 +105,7 @@ cd "$(mktemp -d)"
cat > update_winetricks <<_EOF_SCRIPT
#!/bin/sh
cd "$(mktemp -d)"
cd "\$(mktemp -d)"
wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks.bash-completion
chmod +x winetricks
......@@ -147,7 +148,7 @@ Description=Run winetricks update script
After=network.target
[Service]
ExecStart=/usr/bin/update_winetricks
ExecStart=/bin/sh /usr/bin/update_winetricks
Type=oneshot
_EOF_SERVICE_UNIT
......
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]
adobe_diged4 Adobe Digital Editions 4.5 (Adobe, 2015) [downloadable]
adobe_diged Adobe Digital Editions 1.7 (Adobe, 2011) [downloadable]
autohotkey AutoHotKey (autohotkey.org, 2010) [downloadable]
......@@ -43,7 +42,7 @@ psdk2003 MS Platform SDK 2003 (Microsoft, 2003) [downloadable]
psdkwin71 MS Windows 7.1 SDK (Microsoft, 2010) [downloadable]
psdkwin7 MS Windows 7 SDK (Microsoft, 2009) [downloadable]
qqintl QQ International Instant Messenger 2.11 (Tencent, 2014) [downloadable]
qq QQ 8.9.1(Chinese chat app) (Tencent, 2017) [downloadable]
qq QQ 8.9.6(Chinese chat app) (Tencent, 2017) [downloadable]
safari Safari (Apple, 2010) [downloadable]
sketchup SketchUp 8 (Google, 2012) [downloadable]
steam Steam (Valve, 2010) [downloadable]
......@@ -56,6 +55,8 @@ vc2005trial MS Visual C++ 2005 Trial (Microsoft, 2005) [downloadabl
vc2008express MS Visual C++ 2008 Express (Microsoft, 2008) [downloadable]
vc2010express MS Visual C++ 2010 Express (Microsoft, 2010) [downloadable]
vlc VLC media player 2.2.1 (VideoLAN, 2015) [downloadable]
vulkansdk Vulkan SDK 1.1.73.0 (developers only) (LunarG, 2018) [downloadable]
vstools2019 MS Visual Studio Build Tools 2019 (Microsoft, 2019) [downloadable]
vulkansdk121412 Vulkan SDK 1.2.141.2 (developers only) (LunarG, 2020) [downloadable]
vulkansdk Vulkan SDK (latest) (developers only) (LunarG, 2018) [downloadable]
winamp Winamp (Radionomy (AOL (Nullsoft)), 2013) [downloadable]
wme9 MS Windows Media Encoder 9 (broken in Wine) (Microsoft, 2002) [downloadable]
......@@ -8,7 +8,7 @@ binkw32 RAD Game Tools binkw32.dll (RAD Game Tools, Inc., 2000)
cabinet Microsoft cabinet.dll (Microsoft, 2002) [downloadable]
cinepak Cinepak Codec (Radius, 1995) [downloadable]
cmd MS cmd.exe (Microsoft, 2004) [downloadable]
cnc_ddraw Reimplentation of ddraw for CnC games (CnCNet, 2018) [downloadable]
cnc_ddraw Reimplentation of ddraw for CnC games (CnCNet, 2020) [downloadable]
comctl32ocx MS comctl32.ocx and mscomctl.ocx, comctl32 wrappers for VB6 (Microsoft, 2012) [downloadable]
comctl32 MS common controls 5.80 (Microsoft, 2001) [downloadable]
comdlg32ocx Common Dialog ActiveX Control for VB6 (Microsoft, 2012) [downloadable]
......@@ -91,6 +91,7 @@ dotnet46 MS .NET 4.6 (Microsoft, 2015) [downloadable]
dotnet471 MS .NET 4.7.1 (Microsoft, 2017) [downloadable]
dotnet472 MS .NET 4.7.2 (Microsoft, 2018) [downloadable]
dotnet48 MS .NET 4.8 (Microsoft, 2019) [downloadable]
dotnetcore2 MS .NET Core Runtime 2.1 LTS (Microsoft, 2020) [downloadable]
dotnet_verifier MS .NET Verifier (Microsoft, 2016) [downloadable]
dpvoice Microsoft dpvoice dpvvox dpvacm Audio dlls (Microsoft, 2002) [downloadable]
dsdmo MS dsdmo.dll (Microsoft, 2010) [downloadable]
......@@ -148,6 +149,11 @@ dxvk153 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux
dxvk154 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (1.5.4) (Philip Rebohle, 2017) [downloadable]
dxvk155 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (1.5.5) (Philip Rebohle, 2017) [downloadable]
dxvk160 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (1.6) (Philip Rebohle, 2017) [downloadable]
dxvk161 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (1.6.1) (Philip Rebohle, 2017) [downloadable]
dxvk170 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (1.7) (Philip Rebohle, 2017) [downloadable]
dxvk171 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (1.7.1) (Philip Rebohle, 2017) [downloadable]
dxvk172 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (1.7.2) (Philip Rebohle, 2017) [downloadable]
dxvk173 Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (1.7.3) (Philip Rebohle, 2017) [downloadable]
dxvk_master Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (master) (Philip Rebohle, 2017) [downloadable]
dxvk Vulkan-based D3D9/D3D10/D3D11 implementation for Linux / Wine (latest) (Philip Rebohle, 2017) [downloadable]
esent MS Extensible Storage Engine (Microsoft, 2011) [downloadable]
......@@ -161,11 +167,13 @@ faudio1906 FAudio (xaudio reimplementation, with xna support) buil
faudio FAudio (xaudio reimplementation, with xna support) builds for win32 (latest) (Kron4ek, 2019) [downloadable]
ffdshow ffdshow video codecs (doom9 folks, 2010) [downloadable]
filever Microsoft's filever, for dumping file version info (Microsoft, 20??) [downloadable]
flash Flash Player 29 (Adobe, 2018) [downloadable]
flash Flash Player 32 (Adobe, 2020) [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]
galliumnine06 Gallium Nine Standalone (v0.6) (Gallium Nine Team, 2020) [downloadable]
galliumnine07 Gallium Nine Standalone (v0.7) (Gallium Nine Team, 2020) [downloadable]
galliumnine Gallium Nine Standalone (latest) (Gallium Nine Team, 2019) [downloadable]
gdiplus MS GDI+ (Microsoft, 2011) [downloadable]
gdiplus_winxp MS GDI+ (Microsoft, 2009)
......@@ -184,11 +192,20 @@ itircl MS itircl.dll (Microsoft, 1999) [downloadable]
itss MS itss.dll (Microsoft, 1999) [downloadable]
jet40 MS Jet 4.0 Service Pack 8 (Microsoft, 2003) [downloadable]
l3codecx MPEG Layer-3 Audio Codec for Microsoft DirectShow (Microsoft, 2010) [downloadable]
lavfilters702 LAV Filters 0.70.2 (Hendrik Leppkes, 2017) [downloadable]
lavfilters LAV Filters (Hendrik Leppkes, 2019) [downloadable]
mdac27 Microsoft Data Access Components 2.7 sp1 (Microsoft, 2006) [downloadable]
mdac28 Microsoft Data Access Components 2.8 sp1 (Microsoft, 2005) [downloadable]
mdx Managed DirectX (Microsoft, 2006) [downloadable]
mfc100 Visual C++ 2010 mfc100 library; part of vcrun2010 (Microsoft, 2010) [downloadable]
mfc110 Visual C++ 2012 mfc110 library; part of vcrun2012 (Microsoft, 2012) [downloadable]
mfc120 Visual C++ 2013 mfc120 library; part of vcrun2013 (Microsoft, 2013) [downloadable]
mfc140 Visual C++ 2015 mfc140 library; part of vcrun2015 (Microsoft, 2015) [downloadable]
mfc40 MS mfc40 (Microsoft Foundation Classes from win7sp1) (Microsoft, 1999) [downloadable]
mfc42 Visual C++ 6 SP4 mfc42 library; part of vcrun6 (Microsoft, 2000) [downloadable]
mfc71 Visual C++ 2003 mfc71 library; part of vcrun2003 (Microsoft, 2003) [downloadable]
mfc80 Visual C++ 2005 mfc80 library; part of vcrun2005 (Microsoft, 2011) [downloadable]
mfc90 Visual C++ 2008 mfc90 library; part of vcrun2008 (Microsoft, 2011) [downloadable]
mf MS Media Foundation (Microsoft, 2011) [downloadable]
msacm32 MS ACM32 (Microsoft, 2003) [downloadable]
msasn1 MS ASN1 (Microsoft, 2003) [downloadable]
......@@ -222,6 +239,7 @@ qasf qasf.dll (Microsoft, 2011) [downloadable]
qcap qcap.dll (Microsoft, 2011) [downloadable]
qdvd qdvd.dll (Microsoft, 2011) [downloadable]
qedit qedit.dll (Microsoft, 2011) [downloadable]
quartz_feb2010 quartz.dll (February 2010) (Microsoft, 2010) [downloadable]
quartz quartz.dll (Microsoft, 2011) [downloadable]
quicktime72 Apple QuickTime 7.2 (Apple, 2010) [downloadable]
quicktime76 Apple QuickTime 7.6 (Apple, 2010) [downloadable]
......@@ -250,11 +268,12 @@ vcrun2012 Visual C++ 2012 libraries (atl110,mfc110,mfc110u,msvcp1
vcrun2013 Visual C++ 2013 libraries (mfc120,mfc120u,msvcp120,msvcr120,vcomp120) (Microsoft, 2013) [downloadable]
vcrun2015 Visual C++ 2015 libraries (concrt140.dll,mfc140.dll,mfc140u.dll,mfcm140.dll,mfcm140u.dll,msvcp140.dll,vcamp140.dll,vccorlib140.dll,vcomp140.dll,vcruntime140.dll) (Microsoft, 2015) [downloadable]
vcrun2017 Visual C++ 2017 libraries (concrt140.dll,mfc140.dll,mfc140u.dll,mfcm140.dll,mfcm140u.dll,msvcp140.dll,vcamp140.dll,vccorlib140.dll,vcomp140.dll,vcruntime140.dll) (Microsoft, 2017) [downloadable]
vcrun2019 Visual C++ 2015-2019 libraries (concrt140.dll,mfc140.dll,mfc140u.dll,mfcm140.dll,mfcm140u.dll,msvcp140.dll,vcamp140.dll,vccorlib140.dll,vcomp140.dll,vcruntime140.dll) (Microsoft, 2019) [downloadable]
vcrun2019 Visual C++ 2015-2019 libraries (concrt140.dll,mfc140.dll,mfc140u.dll,mfcm140.dll,mfcm140u.dll,msvcp140.dll,vcamp140.dll,vccorlib140.dll,vcomp140.dll,vcruntime140.dll) (and vcruntime140_1.dll on win64) (Microsoft, 2019) [downloadable]
vcrun6sp6 Visual C++ 6 SP6 libraries (with fixes in ATL and MFC) (Microsoft, 2004) [downloadable]
vcrun6 Visual C++ 6 SP4 libraries (mfc42, msvcp60, msvcirt) (Microsoft, 2000) [downloadable]
vjrun20 MS Visual J# 2.0 SE libraries (requires dotnet20) (Microsoft, 2007) [downloadable]
vulkanrt Vulkan Runtime 1.1.73.0 (LunarG, 2018) [downloadable]
vulkanrt121412 Vulkan Runtime 1.2.141.2 (LunarG, 2020) [downloadable]
vulkanrt Vulkan Runtime (latest) (LunarG, 2020) [downloadable]
webio MS Windows Web I/O (Microsoft, 2011) [downloadable]
windowscodecs MS Windows Imaging Component (Microsoft, 2006) [downloadable]
winhttp MS Windows HTTP Services (Microsoft, 2005) [downloadable]
......
......@@ -3,7 +3,6 @@
3dmark2001
3m_library
7zip
abiword
adobeair
adobe_diged
adobe_diged4
......@@ -130,6 +129,7 @@ dotnet462
dotnet471
dotnet472
dotnet48
dotnetcore2
dotnet_verifier
dpvoice
dragonage2_demo
......@@ -192,6 +192,11 @@ dxvk153
dxvk154
dxvk155
dxvk160
dxvk161
dxvk170
dxvk171
dxvk172
dxvk173
dxvk_master
emu8086
esent
......@@ -217,6 +222,8 @@ galliumnine02
galliumnine03
galliumnine04
galliumnine05
galliumnine06
galliumnine07
gdiplus
georgia
gfw
......@@ -242,6 +249,8 @@ jet40
kindle
kobo
l3codecx
lavfilters
lavfilters702
liberation
lucida
masseffect2_demo
......@@ -251,8 +260,15 @@ mdac28
mdx
meiryo
mf
mfc100
mfc110
mfc120
mfc140
mfc40
mfc42
mfc71
mfc80
mfc90
mfsx_demo
mingw
mozillabuild
......@@ -311,6 +327,7 @@ qedit
qq
qqintl
quartz
quartz_feb2010
quicktime72
quicktime76
riched20
......@@ -369,11 +386,15 @@ verdana
vjrun20
vlc
vlgothic
vstools2019
vulkanrt
vulkanrt121412
vulkansdk
vulkansdk121412
webdings
webio
wenquanyi
wenquanyizenhei
wglgears
winamp
windowscodecs
......
allfonts All fonts (various, 1998-2010) [downloadable]
andale MS Andale Mono font (Microsoft, 2008) [downloadable]
arial MS Arial / Arial Black fonts (Microsoft, 2008) [downloadable]
baekmuk Baekmuk Korean fonts (Wooderart Inc. / kldp.net, 1999) [downloadable]
calibri MS Calibri font (Microsoft, 2007) [downloadable]
cambria MS Cambria font (Microsoft, 2009) [downloadable]
candara MS Candara font (Microsoft, 2009) [downloadable]
cjkfonts All Chinese, Japanese, Korean fonts and aliases (Various, ) [downloadable]
comicsans MS Comic Sans fonts (Microsoft, 2008) [downloadable]
consolas MS Consolas console font (Microsoft, 2011) [downloadable]
constantia MS Constantia font (Microsoft, 2009) [downloadable]
corbel MS Corbel font (Microsoft, 2009) [downloadable]
corefonts MS Arial, Courier, Times fonts (Microsoft, 2008) [downloadable]
courier MS Courier fonts (Microsoft, 2008) [downloadable]
droid Droid fonts (Ascender Corporation, 2009) [downloadable]
eufonts Updated fonts for Romanian and Bulgarian (Microsoft, 2008) [downloadable]
fakechinese Creates aliases for Chinese fonts using Source Han Sans fonts (Adobe, 2019)
fakejapanese_ipamona Creates aliases for Japanese fonts using IPAMona fonts (Jun Kobayashi, 2008)
fakejapanese Creates aliases for Japanese fonts using Source Han Sans fonts (Adobe, 2019)
fakejapanese_vlgothic Creates aliases for Japanese Meiryo fonts using VLGothic fonts (Project Vine / Daisuke Suzuki, 2014)
fakekorean Creates aliases for Korean fonts using Source Han Sans fonts (Adobe, 2019)
georgia MS Georgia fonts (Microsoft, 2008) [downloadable]
impact MS Impact fonts (Microsoft, 2008) [downloadable]
ipamona IPAMona Japanese fonts (Jun Kobayashi, 2008) [downloadable]
liberation Red Hat Liberation fonts (Mono, Sans, SansNarrow, Serif) (Red Hat, 2008) [downloadable]
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]
sourcehansans Source Han Sans fonts (Adobe, 2019) [downloadable]
tahoma MS Tahoma font (not part of corefonts) (Microsoft, 1999) [downloadable]
takao Takao Japanese fonts (Jun Kobayashi, 2010) [downloadable]
times MS Times fonts (Microsoft, 2008) [downloadable]
trebuchet MS Trebuchet fonts (Microsoft, 2008) [downloadable]
uff Ubuntu Font Family (Ubuntu, 2010) [downloadable]
unifont Unifont alternative to Arial Unicode MS (Roman Czyborra / GNU, 2019) [downloadable]
verdana MS Verdana fonts (Microsoft, 2008) [downloadable]
vlgothic VLGothic Japanese fonts (Project Vine / Daisuke Suzuki, 2014) [downloadable]
webdings MS Webdings fonts (Microsoft, 2008) [downloadable]
wenquanyi WenQuanYi CJK font (wenq.org, 2009) [downloadable]
wenquanyizenhei WenQuanYi ZenHei font (wenq.org, 2009) [downloadable]
......@@ -47,7 +47,8 @@ native_mdac Override odbc32, odbccp32 and oledb32
native_oleaut32 Override oleaut32
nocrashdialog Disable crash dialog
npm=repack Set NonPower2Mode to repack
nt40 Set windows version to Windows NT 4.0
nt351 Set Windows version to Windows NT 3.51
nt40 Set Windows version to Windows NT 4.0
orm=backbuffer Set OffscreenRenderingMode=backbuffer
orm=fbo Set OffscreenRenderingMode=fbo (default)
psm=0 Set MaxShaderModelPS to 0
......@@ -87,10 +88,12 @@ vsm=1 Set MaxShaderModelVS to 1
vsm=2 Set MaxShaderModelVS to 2
vsm=3 Set MaxShaderModelVS to 3
win10 Set Windows version to Windows 10
win20 Set Windows version to Windows 2.0
win2k3 Set Windows version to Windows 2003
win2k8r2 Set Windows version to Windows 2008 R2
win2k8 Set Windows version to Windows 2008
win2k Set Windows version to Windows 2000
win30 Set Windows version to Windows 3.0
win31 Set Windows version to Windows 3.1
win7 Set Windows version to Windows 7
win81 Set Windows version to Windows 8.1
......@@ -101,5 +104,6 @@ windowmanagerdecorated=n Prevent the window manager from decorating windows
windowmanagerdecorated=y Allow the window manager to decorate windows (default)
windowmanagermanaged=n Prevent the window manager from controlling windows
windowmanagermanaged=y Allow the window manager to control windows (default)
winme Set Windows version to Windows ME
winver= Set Windows version to default (win7)
winxp Set Windows version to Windows XP
......@@ -23,9 +23,9 @@
set -x
WINE_GIT="${WINE_GIT:-$HOME/wine-git}"
WINE_GIT="${WINE_GIT:-${HOME}/wine-git}"
cd "$WINE_GIT" || exit 125
cd "${WINE_GIT}" || exit 125
git clean -fxd || exit 125
......@@ -39,6 +39,6 @@ fi
"${WINE_GIT}/server/wineserver" -k || true
rm -rf "$HOME/.wine" || exit 125
rm -rf "${HOME}/.wine" || exit 125
WINE="${WINE_GIT}/wine" winetricks -q -v "$@"
......@@ -22,7 +22,7 @@
set -x
CACHE_DIR="${HOME}/.cache/winetricks"
SRC_DIR="$PWD"
SRC_DIR="${PWD}"
winetricks="${SRC_DIR}/src/winetricks"
if [ ! -f README.md ] ; then
......@@ -51,7 +51,7 @@ for dir in "${CACHE_DIR}/"* ; do
for file in "${dir}"/* ; do
# Convert the package:
echo file="${file}"
echo "dir=$dir, package=$package, file=$file"
echo "dir=${dir}, package=${package}, file=${file}"
sha1_file="$(sha1sum "${file}" | awk '{print $1}')"
sha256_file="$(sha256sum "${file}" | awk '{print $1}')"
echo "sha1: ${sha1_file}"
......@@ -67,7 +67,7 @@ for dir in "${CACHE_DIR}/"* ; do
# Test it
wineserver -k || true
rm -rf "$HOME/.wine"
rm -rf "${HOME}/.wine"
# shellcheck disable=SC2115
rm -rf "${CACHE_DIR}/${package}"
......@@ -77,7 +77,7 @@ for dir in "${CACHE_DIR}/"* ; do
test_status="$?"
# Commit it (if it worked):
if [ $test_status = 0 ] ; then
if [ ${test_status} = 0 ] ; then
git commit -m "${package}: convert to sha256" "${winetricks}"
else
git checkout -f
......
......@@ -28,11 +28,11 @@ set -eux
# "us-central1.gce.archive.ubuntu.com" is used by "apt" addon
# (See "Installing APT Packages" in logs), assuming it's fast
UBUNTU_POOL=http://us-central1.gce.archive.ubuntu.com/ubuntu/pool
DEB_BABEL_LOCALEDATA=$UBUNTU_POOL/main/p/python-babel/python-babel-localedata_2.4.0+dfsg.1-2ubuntu1_all.deb
DEB_BABEL=$UBUNTU_POOL/main/p/python-babel/python-babel_2.4.0+dfsg.1-2ubuntu1_all.deb
DEB_BASHATE=$UBUNTU_POOL/universe/p/python-bashate/python-bashate_0.5.1-1_all.deb
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
DEB_BABEL_LOCALEDATA=${UBUNTU_POOL}/main/p/python-babel/python-babel-localedata_2.4.0+dfsg.1-2ubuntu1_all.deb
DEB_BABEL=${UBUNTU_POOL}/main/p/python-babel/python-babel_2.4.0+dfsg.1-2ubuntu1_all.deb
DEB_BASHATE=${UBUNTU_POOL}/universe/p/python-bashate/python-bashate_0.5.1-1_all.deb
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 command -v bashate >/dev/null; then
echo "bashate is already installed."
......@@ -41,19 +41,19 @@ fi
if test -d /Library; then
# macOS: "six" is already installed
curl --remote-name-all $DEB_BABEL_LOCALEDATA $DEB_BABEL $DEB_BASHATE $DEB_PBR
curl --remote-name-all ${DEB_BABEL_LOCALEDATA} ${DEB_BABEL} ${DEB_BASHATE} ${DEB_PBR}
BINDIR=/usr/local/bin
PACKAGESDIR=/Library/Python/2.7/site-packages
else
# Ubuntu
curl --remote-name-all $DEB_BABEL_LOCALEDATA $DEB_BABEL $DEB_BASHATE $DEB_PBR $DEB_SIX
curl --remote-name-all ${DEB_BABEL_LOCALEDATA} ${DEB_BABEL} ${DEB_BASHATE} ${DEB_PBR} ${DEB_SIX}
BINDIR=/usr/bin
PACKAGESDIR=/usr/lib/python2.7/dist-packages
fi
for f in *.deb; do
ar p "$f" data.tar.xz | tar -Jvxf -
ar p "${f}" data.tar.xz | tar -Jvxf -
done
sudo cp -R usr/lib/python2.7/dist-packages/* $PACKAGESDIR/
sudo install -m 755 usr/bin/python2-bashate $BINDIR/bashate
sudo cp -R usr/lib/python2.7/dist-packages/* ${PACKAGESDIR}/
sudo install -m 755 usr/bin/python2-bashate ${BINDIR}/bashate
......@@ -23,15 +23,15 @@ check_deps() {
}
if [ -f src/winetricks ] ; then
TOP="$PWD"
TOP="${PWD}"
shwinetricks="${PWD}/src/winetricks"
elif [ -f ../src/winetricks ] ; then
# realpath isn't available on OSX, use a subshell instead:
TOP="$(cd .. && echo "$PWD")"
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")"
TOP="$(cd ../.. && echo "${PWD}")"
shwinetricks="${TOP}/src/winetricks"
else
echo "Dude, where's my car?!"
......@@ -46,9 +46,9 @@ 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, ,%20,g')"
urlkey="$(echo "$url" | tr / _)"
echo "$url" > "${datadir}/${urlkey}.url"
url="$(echo "$1" | sed -e 's,$ftp_microsoft_com,'${ftp_microsoft_com}',;s, ,%20,g')"
urlkey="$(echo "${url}" | tr / _)"
echo "${url}" > "${datadir}/${urlkey}.url"
}
# Extract list of URLs from winetricks
......@@ -72,12 +72,12 @@ extract_all() {
show_one() {
urlfile=$1
base=${urlfile%.url}
url="$(cat "$urlfile")"
if grep -E "HTTP.*200|HTTP.*30[0-9]|Content-Length" "$base.log" > /dev/null; then
url="$(cat "${urlfile}")"
if grep -E "HTTP.*200|HTTP.*30[0-9]|Content-Length" "${base}.log" > /dev/null; then
passes=$((passes + 1))
else
echo "BAD $url"
cat "$base.log"
echo "BAD ${url}"
cat "${base}.log"
echo ""
errors=$((errors + 1))
fi
......@@ -85,8 +85,8 @@ show_one() {
# Show full report on most recent crawl
show_all() {
for urlfile in "$datadir"/*.url ; do
show_one "$urlfile"
for urlfile in "${datadir}"/*.url ; do
show_one "${urlfile}"
done
}
......@@ -99,36 +99,36 @@ show_all() {
crawl_one() {
urlfile=$1
base=${urlfile%.url}
url="$(cat "$urlfile")"
url="$(cat "${urlfile}")"
curl --connect-timeout 10 --retry 6 -s -S -I "$url" 2>&1 |
curl --connect-timeout 10 --retry 6 -s -S -I "${url}" 2>&1 |
tr -d '\015' |
grep . |
sort > "$base.log"
sort > "${base}.log"
# more diff-able?
# cat "$base.log" |
# grep -E 'HTTP|Last-Modified:|Content-Length:|ETag:' |
# tr '\012' ' ' |
# sed 's/ Connection:.*//' > "$datadir"/"$urlkey.dat"
# echo "" >> "$base.dat"
show_one "$urlfile"
show_one "${urlfile}"
}
# Fetch all info
# Do fetches in background so slow servers don't hang us
# Print quick feedback as results come in
crawl_all() {
for urlfile in "$datadir"/*.url ; do
url="$(cat "$urlfile")"
echo "Crawling $url"
crawl_one "$urlfile" &
for urlfile in "${datadir}"/*.url ; do
url="$(cat "${urlfile}")"
echo "Crawling ${url}"
crawl_one "${urlfile}" &
sleep 1
done
# Wait for fetches to finish
wait
}
mkdir -p "$datadir"
mkdir -p "${datadir}"
case "$1" in
check-deps)
......@@ -148,9 +148,9 @@ report)
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
rm -rf "${datadir}" url-script-fragment.tmp
echo "Test over, ${errors} failures, ${passes} successes."
if test ${errors} = 0 && test ${passes} -gt 0; then
echo PASS
exit 0
else
......
......@@ -16,10 +16,14 @@ set -e
set -x
nopush=0
# Don't push commits/tags or upload files
# Don't push commits/tags or upload files if --no-push is given:
if [ "$1" = "--no-push" ] ; then
nopush=1
shift
# If we _are_ pushing, we'll need a github token:
elif [ -z "${GITHUB_TOKEN}" ] ; then
echo "--no-push wasn't given, GITHUB_TOKEN must be set in the environment!"
exit 1
fi
# FIXME: If "--no-push" isn't set, above statement dies, not sure how to construct properly to avoid
......@@ -40,11 +44,6 @@ export WINEARCH="win32"
# Needed by the list commands below:
export WINETRICKS_LATEST_VERSION_CHECK="development"
if [ -z "$GITHUB_TOKEN" ] ; then
echo "GITHUB_TOKEN must be set in the environment!"
exit 1
fi
# Make sure we're at top level:
if [ ! -f Makefile ] ; then
echo "Please run this from the top of the source tree"
......@@ -70,11 +69,9 @@ echo "${version}" > files/LATEST
# Update verb lists:
# actual categories
./src/winetricks apps list | sed 's/[[:blank:]]*$//' > files/verbs/apps.txt
./src/winetricks benchmarks list | sed 's/[[:blank:]]*$//' > files/verbs/benchmarks.txt
./src/winetricks dlls list | sed 's/[[:blank:]]*$//' > files/verbs/dlls.txt
./src/winetricks games list | sed 's/[[:blank:]]*$//' > files/verbs/games.txt
./src/winetricks settings list | sed 's/[[:blank:]]*$//' > files/verbs/settings.txt
for category in $(./src/winetricks list); do
./src/winetricks "${category}" list | sed 's/[[:blank:]]*$//' > "files/verbs/${category}.txt"
done
# meta categories
./src/winetricks list-all | sed 's/[[:blank:]]*$//' > files/verbs/all.txt
......@@ -88,7 +85,7 @@ git tag -s -m "winetricks-${version}" "${version}"
sed -i -e "s%WINETRICKS_VERSION=.*%WINETRICKS_VERSION=${version}-next%" src/winetricks
git commit src/winetricks -m "development version bump - ${version}-next"
if [ $nopush = 1 ] ; then
if [ ${nopush} = 1 ] ; then
echo "--no-push used, not pushing commits / tags"
else
git push
......@@ -102,7 +99,7 @@ git archive --prefix="winetricks-${version}/" -o "${tmpdir}/${version}.tar.gz" "
gpg --armor --default-key 0x053F0749 --detach-sign "${tmpdir}/${version}.tar.gz"
# upload the detached signature to github:
if [ $nopush = 1 ] ; then
if [ ${nopush} = 1 ] ; then
echo "--no-push used, not uploading signature file"
else
python3 src/github-api-releases.py "${tmpdir}/${version}.tar.gz.asc" Winetricks winetricks "${version}"
......
......@@ -23,7 +23,7 @@ rm -f /tmp/allfiles.txt
for dir; do
(
cd "$dir/drive_c"
cd "${dir}/drive_c"
# FIXME: don't assume there are no ='s in filenames, e.g. rewrite in perl
find . -type f | tr ' ' '=' | grep -E -iv 'tmp|temp|installer|NativeImages' | sort > ../files.txt
cat ../files.txt >> /tmp/allfiles.txt
......@@ -36,9 +36,9 @@ sort < /tmp/allfiles.txt | uniq -c | awk '$1 == 1 {print $2}' > /tmp/uniqfiles.t
# Associate them with the verb they came from
for dir; do
(
cd "$dir"
cd "${dir}"
# Undo the space-to-= transformation, too
grep -F -f /tmp/uniqfiles.txt < files.txt | tr '=' ' ' > uniqfiles.txt
)
echo "$dir/uniqfiles.txt"
echo "${dir}/uniqfiles.txt"
done
This source diff could not be displayed because it is too large. You can view the blob instead.
.\" -*- nroff -*-
.TH WINETRICKS 1 "April 2020" "Winetricks 20200412" "Wine Package Manager"
.TH WINETRICKS 1 "December 2020" "Winetricks 20201206" "Wine Package Manager"
.SH NAME
winetricks \- manage virtual Windows environments using Wine
.SH SYNOPSIS
......@@ -89,6 +89,14 @@ games list
list verbs in category 'games'
.TP
.B
fonts list
list verbs in category 'fonts'
.TP
.B
settings list
list verbs in category 'settings'
.TP
.B
list
list categories
.TP
......@@ -109,12 +117,18 @@ list-installed
list already-installed verbs
.TP
.B
arch=32|64
create wineprefix with 32 or 64 bit, this option must be
given before prefix=foobar and will not work in case of
the default wineprefix.
.TP
.B
prefix=foobar
select WINEPREFIX=$HOME/.local/share/wineprefixes/foobar
.TP
.B
settings list
list verbs in category 'settings'
annihilate
Delete ALL DATA AND APPLICATIONS INSIDE THIS WINEPREFIX
.PP
.SH EXAMPLES
......
......@@ -24,8 +24,8 @@ w_die() {
w_try() {
"$@"
status=$?
if test $status -ne 0; then
w_die "Note: command $* returned status $status. Aborting."
if test ${status} -ne 0; then
w_die "Note: command $* returned status ${status}. Aborting."
fi
}
......@@ -47,14 +47,14 @@ trap 'rm -fr "$temp"' EXIT
# tests using bashate
test_bashate() {
if [ ! -x "$(command -v bashate 2>/dev/null)" ] && [ "$TRAVIS_OS_NAME" = "osx" ]; then
if [ ! -x "$(command -v bashate 2>/dev/null)" ] && [ "${TRAVIS_OS_NAME}" = "osx" ]; then
echo "On OSX and bashate not available, skipping."
return
else
bashate="$(command -v bashate)"
#echo "======================== Begin bashate version info ==========================="
"$bashate" --help > /dev/null || w_die "bashate must be installed!"
"${bashate}" --help > /dev/null || w_die "bashate must be installed!"
## bashate doesn't have a --version option (as of bashate-0.3.1)
#"$bashate" --version
#echo "======================== End bashate version info ==========================="
......@@ -65,21 +65,21 @@ test_bashate() {
# E010=do/while same line (in some embedded perl in winetricks)
# E044=Use [[ for non-POSIX comparisions
echo "Checking ${shellscript} with bashate:"
w_try "$bashate" -i E006,E010,E044 "${shellscript}"
w_try "${bashate}" -i E006,E010,E044 "${shellscript}"
fi
}
# tests using checkbashisms
test_checkbashisms() {
if [ ! -x "$(command -v checkbashisms 2>/dev/null)" ] && [ "$TRAVIS_OS_NAME" = "osx" ]; then
if [ ! -x "$(command -v checkbashisms 2>/dev/null)" ] && [ "${TRAVIS_OS_NAME}" = "osx" ]; then
echo "On OSX and checkbashisms not available, skipping."
return
else
checkbashisms="$(command -v checkbashisms)"
echo "======================== Begin checkbashisms version info ==========================="
"$checkbashisms" --help > /dev/null || w_die "checkbashisms must be installed!"
"$checkbashisms" --version
"${checkbashisms}" --help > /dev/null || w_die "checkbashisms must be installed!"
"${checkbashisms}" --version
echo "======================== End checkbashisms version info ==========================="
# Check if checkbashisms supports `command -v`. If not, warn, or if on travis, patch it:
......@@ -88,12 +88,12 @@ test_checkbashisms() {
command -v grep
_EOF
if ! "$checkbashisms" --posix "${temp}/command.sh"; then
if ! "${checkbashisms}" --posix "${temp}/command.sh"; then
echo "Use a sed expression, to add checkbashisms support for 'command -v', based on the patch from https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=733511"
echo "Creating a copy of the checkbashisms script, in ${temp}, to workaround this issue"
# /usr/bin/ (or /usr/local/bin on OSX) isn't writable on Travis, so we have to patch it in /tmp and use that:
(
sed -e '/qr'\''command\\s+\-\[\^p\]\\s'\''/ { ' -e 's|\[\^p\]|[^pvV]|' -e 's| \-p>| -p/-v/-V>|' -e '}' "$checkbashisms" > "${temp}/checkbashisms.patched" && \
sed -e '/qr'\''command\\s+\-\[\^p\]\\s'\''/ { ' -e 's|\[\^p\]|[^pvV]|' -e 's| \-p>| -p/-v/-V>|' -e '}' "${checkbashisms}" > "${temp}/checkbashisms.patched" && \
chmod +x "${temp}/checkbashisms.patched"
)
checkbashisms="${temp}/checkbashisms.patched"
......@@ -109,19 +109,19 @@ sleep 5 & spid="$!"
kill -HUP \$spid
_EOF
if ! "$checkbashisms" --posix "${temp}/kill.sh"; then
if ! "${checkbashisms}" --posix "${temp}/kill.sh"; then
echo "Disabling the kill -signal warning"
echo "Creating a copy of the checkbashisms script, in ${temp}, to workaround this issue"
# /usr/bin/ (or /usr/local/bin on OSX) isn't writable on Travis, so we have to patch it in /tmp and use that:
(
sed -e '/bashisms.*kill/d' "$checkbashisms" > "${temp}/checkbashisms.patched.kill" && \
sed -e '/bashisms.*kill/d' "${checkbashisms}" > "${temp}/checkbashisms.patched.kill" && \
chmod +x "${temp}/checkbashisms.patched.kill"
)
checkbashisms="${temp}/checkbashisms.patched.kill"
fi
echo "Checking ${shellscript} for bashisms:"
w_try "$checkbashisms" --posix "${shellscript}"
w_try "${checkbashisms}" --posix "${shellscript}"
fi
}
......@@ -152,19 +152,19 @@ test_formatting() {
# tests using shellcheck
test_shellcheck() {
if [ ! -x "$(command -v shellcheck 2>/dev/null)" ] && [ "$TRAVIS_OS_NAME" = "osx" ]; then
if [ ! -x "$(command -v shellcheck 2>/dev/null)" ] && [ "${TRAVIS_OS_NAME}" = "osx" ]; then
echo "On OSX and shellcheck not available, skipping."
return
else
shellcheck="$(command -v shellcheck)"
echo "======================== Begin shellcheck version info ==========================="
"$shellcheck" --version > /dev/null || w_die "shellcheck must be installed!"
"$shellcheck" --version
"${shellcheck}" --version > /dev/null || w_die "shellcheck must be installed!"
"${shellcheck}" --version
echo "======================== End shellcheck version info ==========================="
echo "Checking ${shellscript} with shellcheck:"
w_try "$shellcheck" -s sh "${shellscript}"
w_try "${shellcheck}" -s sh "${shellscript}"
fi
}
......@@ -186,7 +186,7 @@ test_travis_yml() {
else
yq="$(command -v yq)"
if [ -n "$yq" ]; then
if [ -n "${yq}" ]; then
echo "yq available, validating .travis.yml"
yq . .travis.yml || true
else
......@@ -220,7 +220,7 @@ main() {
test_travis_yml
# Generic shellscript checks:
for shellscript in $files_to_check; do
for shellscript in ${files_to_check}; do
test_formatting
test_bashate
test_checkbashisms
......
......@@ -19,14 +19,14 @@ outdir="$(mktemp -d "${TMPDIR:-/tmp}/winetricks-test.XXXXXXXX")"
# Note: skips dotnet20sdk, which is broken AF
dotnet_verbs="$(./src/winetricks dlls list | grep ^dotnet | grep -v -e sdk -e verifier | cut -d ' ' -f1)"
for verb1 in $dotnet_verbs; do
for verb2 in $dotnet_verbs; do
if [ "$verb1" = "$verb2" ]; then
for verb1 in ${dotnet_verbs}; do
for verb2 in ${dotnet_verbs}; do
if [ "${verb1}" = "${verb2}" ]; then
continue
fi
combo="${verb1}-${verb2}"
case "$combo" in
case "${combo}" in
dotnet11*-dotnet20|dotnet11*-dotnet30*|dotnet11*-dotnet35*)
echo "Skipping, has a popup that needs to be automated away in -q mode (but fails anyway, so not worth it)";
echo "${combo} skipped" | tee -a "${outdir}/statuslog.txt";
......@@ -36,11 +36,11 @@ for verb1 in $dotnet_verbs; do
export WINEPREFIX="${outdir}/prefix-${combo}"
wineserver -k
./src/winetricks -q --force --verify "$verb1" "$verb2" 2>&1 | tee -a "${outdir}/${combo}.txt"
./src/winetricks -q --force --verify "${verb1}" "${verb2}" 2>&1 | tee -a "${outdir}/${combo}.txt"
status="$?"
echo "$combo exited $status" 2>&1 | tee -a "${outdir}/${combo}.txt"
echo "$combo exited $status" 2>&1 | tee -a "${outdir}/statuslog.txt"
echo "${combo} exited ${status}" 2>&1 | tee -a "${outdir}/${combo}.txt"
echo "${combo} exited ${status}" 2>&1 | tee -a "${outdir}/statuslog.txt"
rm -rf "$WINEPREFIX"
rm -rf "${WINEPREFIX}"
done
done
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