#!/usr/bin/env bash # Stop on error set -euo pipefail # Constants REPO="https://github.com/GloriousEggroll/proton-ge-custom" LATEST_RELEASE_URL="${REPO}/releases/latest" PROTON_DIR="${HOME}/.local/share/Steam/compatibilitytools.d" mkdir -p "$PROTON_DIR" # Find latest version tag release_url=$(curl -Ls -o /dev/null -w "%{url_effective}" "$LATEST_RELEASE_URL") version="${release_url##*/}" echo "Found latest version: ${version}" # Determine download URL (try -x86_64.tar.gz first, fallback to .tar.gz) download_url="https://github.com/GloriousEggroll/proton-ge-custom/releases/download/${version}/${version}-x86_64.tar.gz" if ! curl -sfI "$download_url" >/dev/null 2>&1; then download_url="https://github.com/GloriousEggroll/proton-ge-custom/releases/download/${version}/${version}.tar.gz" fi install_dir="${PROTON_DIR}/${version}" download_file="/tmp/${version}.tar.gz" # Exit if already installed if [ -d "$install_dir" ]; then echo "Already installed at: ${install_dir}" exit 0 fi echo "Downloading from: ${download_url}" wget -q --show-progress "$download_url" -O "$download_file" echo "Extracting to ${PROTON_DIR}..." tar -xzf "$download_file" --directory "$PROTON_DIR" echo "Cleanup..." rm -f "$download_file" echo "Installation complete at: ${install_dir}"