#!/bin/bash set -e # Function for logging log() { echo "[$(date '+%Y-%m-%d %H:%M:%S')] [ARIA2] $*" } # Function for cleanup cleanup() { log "Performing aria2 installation cleanup..." rm -rf \ /var/lib/apt/lists/* \ /tmp/aria2* \ /var/tmp/aria2* } # Trap to ensure cleanup on exit trap cleanup EXIT log "Starting aria2 installation..." log "Updating package lists..." apt-get update log "Installing aria2 and required dependencies..." apt-get install -y --no-install-recommends \ aria2 \ netcat-openbsd \ jq \ openssl \ curl \ unzip # Create aria2 directories log "Creating aria2 directories..." mkdir -p /usr/local/share/aria2 \ /var/log/aria2 # Download aria2 web UI (AriaNg) log "Downloading AriaNg web interface..." ARIANG_VERSION="1.3.10" ARIANG_URL="https://github.com/mayswind/AriaNg/releases/download/${ARIANG_VERSION}/AriaNg-${ARIANG_VERSION}.zip" cd /tmp curl -L -o "ariang.zip" "$ARIANG_URL" unzip -q ariang.zip -d ariang cp -r ariang/* /usr/local/share/aria2/ rm -rf ariang ariang.zip log "Setting permissions..." chown -R 1000:1000 /usr/local/share/aria2 /var/log/aria2 log "aria2 installation completed successfully" log "AriaNg version: $ARIANG_VERSION"