forked from rasa/vmware-tools-patches
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdownload-tools.sh
executable file
·104 lines (80 loc) · 3.84 KB
/
download-tools.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
#!/bin/bash -x
# download selected vmware tools files
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
WGET="wget --no-check-certificate"
URLS="\
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/8.1.1/3771013/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/8.1.0/3272237/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/8.0.2/3164312/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/8.0.1/3094680/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/8.0.0/2985594/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/7.1.3/3204469/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/7.1.2/2779224/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/7.1.1/2498930/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/7.1.0/2314774/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/7.0.1/2235595/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/7.0.0/2075534/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/6.0.6/2684343/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/6.0.5/2209127/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/6.0.4/1887983/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/6.0.3/1747349/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/6.0.2/1398658/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/6.0.1/1331545/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/5.0.5/1945692/packages/com.vmware.fusion.tools.linux.zip.tar
https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/5.0.4/1435862/packages/com.vmware.fusion.tools.linux.zip.tar
"
# version parameter can be passed to script to indicate which tools to download
if [[ -n "$1" ]]; then
if [[ "$1" = "latest" ]]; then
URLS=$(echo "$URLS" | head -n 1)
else
URLS=$(echo "$URLS" | grep "/$1/")
fi
fi
SEVENZIP=$(which 7z 2>/dev/null)
if [[ -z "${SEVENZIP}" ]]; then
# jessie doesn't load the loop device automatically?
sudo modprobe loop
fi
mkdir -p downloads
pushd downloads >/dev/null
for url in ${URLS}; do
ver="$(echo ${url} | sed -e 's/.*\/\([0-9]*\.[0-9]*\.[0-9]*\)\/.*/\1/')"
zip="$(basename "${url}" .tar)"
base="$(basename "${zip}" .zip)"
tar="${zip}-${ver}.tar"
rm -f "${zip}"
rm -fr payload
if [[ ! -f "${tar}" ]]; then
${WGET} -O "${tar}" "${url}"
fi
tar xvf "${tar}"
if [[ ! -f "${zip}" ]]; then
echo $0: File not found: ${zip} in ${tar} >&2
exit 1
fi
unzip -o "${zip}"
rm -f "${zip}"
if [[ ! -d "payload" ]]; then
echo $0: Directory not found: payload in ${zip} >&2
exit 2
fi
if [[ -n "${SEVENZIP}" ]]; then
ISO_DIR=payload
"${SEVENZIP}" x -o${ISO_DIR} payload/*.iso
else
ISO_DIR=/mnt/cdrom
sudo mkdir -p ${ISO_DIR}
sudo mount -o loop payload/*.iso ${ISO_DIR}
fi
tools="$(find ${ISO_DIR} -name 'VMwareTools-*.tar.gz')"
dest="../$(basename "${tools}")"
cp -v "${tools}" "${dest}"
chmod ug+w "${dest}"
if [[ -z "${SEVENZIP}" ]]; then
sudo umount /mnt/cdrom
fi
rm -fr payload
rm -f descriptor.xml manifest.plist
done
popd >/dev/null