|
|
- #!/bin/bash
- # SPDX-License-Identifier: GPL-3.0+
- # Copyright (C) 2018, Martin Kepplinger <martink@posteo.de>
-
- set -e
-
- source functions.sh
-
- usage()
- {
- echo "Skulls for the X230"
- echo ""
- echo " This script checks if there's a newer"
- echo " release of the X230 Skulls package available."
- echo ""
- echo "Usage: $0 [-v]"
- }
-
- args=$(getopt -o hv -- "$@")
- if [ $? -ne 0 ] ; then
- usage
- exit 1
- fi
-
- verbose=0
-
- eval set -- "$args"
- while [ $# -gt 0 ]
- do
- case "$1" in
- -v)
- verbose=1
- ;;
- -h)
- usage
- exit 1
- ;;
- --)
- shift
- break
- ;;
- *)
- echo "Invalid option: $1"
- exit 1
- ;;
- esac
- shift
- done
-
- warn_not_root
-
- command -v curl >/dev/null 2>&1 || { echo -e >&2 "${RED}Please install curl.${NC}"; exit 1; }
-
- CURRENT_VERSION=$(head -2 NEWS | egrep -o "([0-9]{1,}\.)+[0-9]{1,}")
-
- UPSTREAM_FILE=$(curl -s https://api.github.com/repos/merge/skulls/releases/latest | grep browser_download_url | cut -d'"' -f4 | cut -d'/' -f9 | head -n 1)
-
- UPSTREAM_VERSION=$(curl -s https://api.github.com/repos/merge/skulls/releases/latest | grep browser_download_url | cut -d'"' -f4 | cut -d'/' -f9 | head -n 1 | egrep -o "([0-9]{1,}\.)+[0-9]{1,}")
-
- UPSTREAM_X230=$(echo ${UPSTREAM_FILE} | grep x230)
- if [[ -z "$UPSTREAM_X230" ]] ; then
- echo "The latest release didn't include the X230"
- exit 0
- fi
-
- if [[ $verbose -gt 0 ]] ; then
- echo "This is v$CURRENT_VERSION and latest is v$UPSTREAM_VERSION"
- fi
-
- if [[ "$CURRENT_VERSION" = "$UPSTREAM_VERSION" ]] ; then
- echo -e "${GREEN}You are using the latest version of Skulls for the X230${NC}"
- exit 0
- elif [[ "$CURRENT_VERSION" < "$UPSTREAM_VERSION" ]] ; then
- echo -e "${RED}You have ${CURRENT_VERSION} but there is version ${UPSTREAM_VERSION} available for the X230. Please update.${NC}"
- read -r -p "Download it to the parent directory now? [y/N] " response
- case "$response" in
- [yY][eE][sS]|[yY])
- UPSTREAM_URL=$(curl -s https://api.github.com/repos/merge/skulls/releases/latest | grep browser_download_url | cut -d'"' -f4 | head -n 1)
- UPSTREAM_URL_SHA256=$(curl -s https://api.github.com/repos/merge/skulls/releases/latest | grep browser_download_url | cut -d'"' -f4 | head -n 3 | tail -n 1)
- cd ..
- curl -LO ${UPSTREAM_URL}
- curl -LO ${UPSTREAM_URL_SHA256}
- sha256sum -c ${UPSTREAM_FILE}.sha256
- mkdir skulls-x230-${UPSTREAM_VERSION}
- tar -xf ${UPSTREAM_FILE} -C skulls-x230-${UPSTREAM_VERSION}/
- echo "Version ${UPSTREAM_VERSION} extracted to ../skulls-x230-${UPSTREAM_VERSION}/"
- ;;
- *)
- exit 0
- ;;
- esac
- else
- echo "You seem to use a development version. Please use release package skulls-x230 ${UPSTREAM_VERSION} for flashing."
- fi
|