Not every minimal container has curl. Prefer curl but fall back to wget.
http_get() url="$1" outfile="$2"
if command -v curl >/dev/null 2>&1; then curl -fsSL "$url" -o "$outfile" elif command -v wget >/dev/null 2>&1; then wget -q "$url" -O "$outfile" else echo "ERROR: Neither curl nor wget found" >&2 return 1 fishell dep download
Edit the deps array:
local deps=(
"https://example.com/tool.tar.gz|tool.tar.gz|expected_sha256_here"
)
Supports multi-connection and BitTorrent for large dep files. Not every minimal container has curl
aria2c -x 16 -s 16 https://example.com/large-dep.zip
Writing a script for shell dep download is not just about grabbing files. You must handle failures, retries, and integrity. Below is a production-grade template. Edit the deps array:
local deps=(
"https://example
#!/bin/bash
# Script: secure_dep_download.sh
# Purpose: Download and verify a software dependency
set -euo pipefail # Exit on error, undefined var, pipe failure