Skip to content

Instantly share code, notes, and snippets.

@jimmyeao
Last active January 6, 2026 21:10
Show Gist options
  • Select an option

  • Save jimmyeao/9a6922cdf1c69da92f1be9c7e3463052 to your computer and use it in GitHub Desktop.

Select an option

Save jimmyeao/9a6922cdf1c69da92f1be9c7e3463052 to your computer and use it in GitHub Desktop.
install-theiacast-client.sh
#!/bin/bash
# TheiaCast Linux Client Installation Script (Wrapper)
# Usage: curl -sSL https://gist.githubusercontent.com/jimmyeao/YOUR_GIST_ID/raw/install-theiacast-client.sh | bash
#
# This script downloads the latest TheiaCast client release and runs the installer.
# Supports Ubuntu Desktop/Server and Raspberry Pi (all architectures).
set -e
echo "========================================"
echo " TheiaCast Linux Client Installer"
echo "========================================"
echo ""
# Detect architecture
ARCH=$(uname -m)
case $ARCH in
x86_64)
ARCH_NAME="amd64"
;;
aarch64|arm64)
ARCH_NAME="arm64"
;;
armv7l)
ARCH_NAME="armv7"
;;
*)
echo "❌ Unsupported architecture: $ARCH"
exit 1
;;
esac
echo "βœ“ Detected architecture: $ARCH ($ARCH_NAME)"
echo ""
# Download tarball from Azure Blob Storage
TARBALL_NAME="theiacast-client-linux.tar.gz"
DOWNLOAD_URL="https://thfhaappstore.blob.core.windows.net/theiacast/${TARBALL_NAME}"
echo "πŸ“₯ Downloading latest client release..."
echo " URL: $DOWNLOAD_URL"
if ! curl -L -o "/tmp/${TARBALL_NAME}" "$DOWNLOAD_URL"; then
echo "❌ Failed to download client"
exit 1
fi
echo "βœ“ Download complete"
echo ""
# Extract
echo "πŸ“¦ Extracting..."
cd /tmp
tar -xzf "${TARBALL_NAME}"
cd theiacast-client
echo "βœ“ Extraction complete"
echo ""
# Run installer
echo "πŸš€ Running installer..."
if [ -f "scripts/install.sh" ]; then
sudo bash scripts/install.sh
else
echo "❌ install.sh not found in package"
exit 1
fi
echo ""
echo "========================================"
echo " βœ… Installation Complete!"
echo "========================================"
echo ""
echo "Next steps:"
echo "1. Configure the client: sudo nano /opt/theiacast-client/.env"
echo "2. Start the service: sudo systemctl start theiacast-client"
echo "3. Check status: sudo systemctl status theiacast-client"
echo "4. View logs: sudo journalctl -u theiacast-client -f"
echo ""
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment