From 971b471f92db28b5b008b0dbe9df9880c5ef9ad9 Mon Sep 17 00:00:00 2001 From: Matt Date: Mon, 2 Jan 2023 07:12:10 -0800 Subject: [PATCH] Make install script auto-detect arch (#679) * Make install script auto-detect arch #679 Tested on linux x64 and aarch64 * Fix arm32 uname string Co-authored-by: Chris Gerth --- scripts/install.sh | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/scripts/install.sh b/scripts/install.sh index e988eaead..7be1776ec 100755 --- a/scripts/install.sh +++ b/scripts/install.sh @@ -5,7 +5,30 @@ if [ "$(id -u)" != "0" ]; then exit 1 fi +ARCH=$(uname -m) +ARCH_NAME="" +if [ "$ARCH" = "aarch64" ]; then + ARCH_NAME="linuxarm64" +elif [ "$ARCH" = "armv7l" ]; then + ARCH_NAME="linuxarm32" +elif [ "$ARCH" = "x86_64" ]; then + ARCH_NAME="linuxx64" +else + if [ "$#" -ne 1 ]; then + echo "Can't determine current arch; please provide it (one of):" + echo "" + echo "- linuxarm32 (32-bit Linux ARM)" + echo "- linuxarm64 (64-bit Linux ARM)" + echo "- linuxx64 (64-bit Linux)" + exit 1 + else + echo "Can't detect arch (got $ARCH) -- using user-provided $1" + ARCH_NAME=$1 + fi +fi + echo "This is the installation script for PhotonVision." +echo "Installing for platform $ARCH_NAME" echo "Installing curl..." apt-get install --yes curl @@ -39,7 +62,7 @@ echo "Downloading latest stable release of PhotonVision..." mkdir -p /opt/photonvision cd /opt/photonvision curl -sk https://api.github.com/repos/photonvision/photonvision/releases/latest | - grep "browser_download_url.*jar" | + grep "browser_download_url.*$ARCH_NAME.jar" | cut -d : -f 2,3 | tr -d '"' | wget -qi - -O photonvision.jar