1
0

Check if local go is already installed
All checks were successful
Build and test project / build-and-test (push) Successful in 1m28s

This commit is contained in:
2026-03-21 13:59:29 +01:00
parent 59f5823696
commit 620d8a1929

View File

@@ -6,30 +6,33 @@ KOBOPATCH_DIR="$SCRIPT_DIR/kobopatch-src"
GO_VERSION="1.23.12" GO_VERSION="1.23.12"
LOCAL_GO_DIR="$SCRIPT_DIR/go" LOCAL_GO_DIR="$SCRIPT_DIR/go"
# Detect platform and architecture # Use system Go if available, otherwise download locally
OS="$(uname -s | tr '[:upper:]' '[:lower:]')" if command -v go &>/dev/null; then
ARCH="$(uname -m)" echo "Using system Go: $(go version)"
case "$ARCH" in elif [ -x "$LOCAL_GO_DIR/bin/go" ] && "$LOCAL_GO_DIR/bin/go" version 2>/dev/null | grep -q "go${GO_VERSION}"; then
x86_64) ARCH="amd64" ;; echo "Using local Go ${GO_VERSION}."
aarch64|arm64) ARCH="arm64" ;; export GOROOT="$LOCAL_GO_DIR"
*) export PATH="$LOCAL_GO_DIR/bin:$PATH"
echo "Error: unsupported architecture: $ARCH"
exit 1
;;
esac
# Download Go locally if not already present or wrong version
if [ -x "$LOCAL_GO_DIR/bin/go" ] && "$LOCAL_GO_DIR/bin/go" version 2>/dev/null | grep -q "go${GO_VERSION}"; then
echo "Local Go ${GO_VERSION} already installed."
else else
# Detect platform and architecture
OS="$(uname -s | tr '[:upper:]' '[:lower:]')"
ARCH="$(uname -m)"
case "$ARCH" in
x86_64) ARCH="amd64" ;;
aarch64|arm64) ARCH="arm64" ;;
*)
echo "Error: unsupported architecture: $ARCH"
exit 1
;;
esac
echo "Downloading Go ${GO_VERSION} for ${OS}/${ARCH}..." echo "Downloading Go ${GO_VERSION} for ${OS}/${ARCH}..."
rm -rf "$LOCAL_GO_DIR" rm -rf "$LOCAL_GO_DIR"
curl -fsSL "https://go.dev/dl/go${GO_VERSION}.${OS}-${ARCH}.tar.gz" | tar -xz -C "$SCRIPT_DIR" curl -fsSL "https://go.dev/dl/go${GO_VERSION}.${OS}-${ARCH}.tar.gz" | tar -xz -C "$SCRIPT_DIR"
export GOROOT="$LOCAL_GO_DIR"
export PATH="$LOCAL_GO_DIR/bin:$PATH"
fi fi
export GOROOT="$LOCAL_GO_DIR"
export PATH="$LOCAL_GO_DIR/bin:$PATH"
if [ -d "$KOBOPATCH_DIR" ]; then if [ -d "$KOBOPATCH_DIR" ]; then
echo "Updating kobopatch source..." echo "Updating kobopatch source..."
cd "$KOBOPATCH_DIR" cd "$KOBOPATCH_DIR"