blob: c303db458c8fcd38a4e012ff957139b382bd0c60 (
plain)
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
|
#!/usr/bin/env sh
compare_versions() {
local VERSIONA=${1%%.*} VERSIONB=${2%%.*}
[[ "10#${VERSIONA:-0}" -gt "10#${VERSIONB:-0}" ]] && return 1
[[ "10#${VERSIONA:-0}" -lt "10#${VERSIONB:-0}" ]] && return 2
VERSIONA=${1:${#VERSIONA}+1}
VERSIONB=${2:${#VERSIONB}+1}
[[ -z $VERSIONA && -z $VERSIONB ]] && return 0 || compare_versions "$VERSIONA" "$VERSIONB"
}
latest_remote_version() {
local LATEST=$(wget --quiet -O - https://desktop.download.sipgate.com/latest.yml | yq -r '.version')
local LATEST_LINUX=$(wget --quiet -O - https://desktop.download.sipgate.com/latest-linux.yml | yq -r '.version')
echo "latest version: ${LATEST}" >&2
echo "latest linux version: ${LATEST_LINUX}" >&2
compare_versions "$LATEST" "$LATEST_LINUX"
if [ $? -eq 1 ]; then
echo "$LATEST"
else
echo "$LATEST_LINUX"
fi
}
INSTALLED_VERSION=$(pacman -Qi sipgate-app-clinq | sed -r -n 's/^Version\s*:\s*([0-9\.]+).*$/\1/p')
LATEST_VERSION=$(latest_remote_version)
echo >&2
echo "installed version: ${INSTALLED_VERSION}" >&2
echo "latest overall version: ${LATEST_VERSION}" >&2
echo >&2
compare_versions "$INSTALLED_VERSION" "$LATEST_VERSION"
if [ $? -ge 2 ]; then
MSG="Please install the latest version of the sipgate-app-clinq package (${LATEST_VERSION}). If there is no AUR package available yet for this version, you may notify the maintainers at https://aur.archlinux.org/packages/sipgate-app-clinq"
notify-send "$MSG"
echo "$MSG" >&2
exit 1
else
exec /opt/sipgate/sipgate-desktop
fi
|