-
-
Notifications
You must be signed in to change notification settings - Fork 159
/
deb-install.sh
executable file
·59 lines (44 loc) · 1.69 KB
/
deb-install.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
#!/usr/bin/env bash
set -e
# Usage: ./deb-install.sh <version>
usage() {
echo "Usage: $0 <version>"
echo "Example: $0 2.3.9"
exit 1
}
if [ $# -ne 1 ]; then
usage
fi
VERSION=$1
# Check the architecture, only support x86_64 and aarch64/arm64
ARCH=$(uname -m)
# Normalize the architecture name
if [ "$ARCH" == "x86_64" ]; then
ARCH="amd64"
elif [ "$ARCH" == "aarch64" ] || [ "$ARCH" == "arm64" ]; then
ARCH="arm64"
else
echo "Unsupported architecture: $ARCH"
exit 1
fi
LIB_JAVASCRIPT_x86="http://launchpadlibrarian.net/704701345/libjavascriptcoregtk-4.0-18_2.43.3-1_amd64.deb"
LIB_WEBKIT_x86="http://launchpadlibrarian.net/704701349/libwebkit2gtk-4.0-37_2.43.3-1_amd64.deb"
LIB_JAVASCRIPT_arm="http://launchpadlibrarian.net/704735771/libjavascriptcoregtk-4.0-18_2.43.3-1_arm64.deb"
LIB_WEBKIT_arm="http://launchpadlibrarian.net/704735777/libwebkit2gtk-4.0-37_2.43.3-1_arm64.deb"
DEB_URL="https://github.com/yuezk/GlobalProtect-openconnect/releases/download/v${VERSION}/globalprotect-openconnect_${VERSION}-1_${ARCH}.deb"
# Install the dependencies
if [ "$ARCH" == "amd64" ]; then
wget -O /tmp/libjavascriptcoregtk.deb $LIB_JAVASCRIPT_x86
wget -O /tmp/libwebkit2gtk.deb $LIB_WEBKIT_x86
else
wget -O /tmp/libjavascriptcoregtk.deb $LIB_JAVASCRIPT_arm
wget -O /tmp/libwebkit2gtk.deb $LIB_WEBKIT_arm
fi
sudo dpkg -i /tmp/libjavascriptcoregtk.deb /tmp/libwebkit2gtk.deb
# Install the package
wget -O /tmp/globalprotect-openconnect.deb $DEB_URL
sudo apt install --fix-broken -y /tmp/globalprotect-openconnect.deb
# Clean up
rm /tmp/libjavascriptcoregtk.deb /tmp/libwebkit2gtk.deb /tmp/globalprotect-openconnect.deb
echo ""
echo "GlobalProtect OpenConnect VPN client has been installed successfully."