Installation¶
Detailed installation instructions for all platforms.
Quick Install¶
Linux / macOS¶
With options:
# Specific version
RCURL_VERSION=v0.1.0 curl -fsSL https://recurl.dev/install.sh | bash
# Custom install directory
RCURL_INSTALL_DIR=/opt/recurl curl -fsSL https://recurl.dev/install.sh | bash
Windows (PowerShell)¶
With options:
Package Managers¶
Homebrew (macOS / Linux)¶
Or install directly:
Scoop (Windows)¶
# Add the bucket
scoop bucket add recurl https://github.com/user/recurl
# Install
scoop install recurl
AUR (Arch Linux)¶
Docker¶
Quick Run¶
# Single request
docker run --rm ghcr.io/user/recurl https://example.com
# Save output to local directory
docker run --rm -v $(pwd)/output:/output ghcr.io/user/recurl \
https://example.com -o /output/result.html
Docker Compose¶
# docker-compose.yml
version: '3.8'
services:
recurl:
image: ghcr.io/user/recurl
volumes:
- ./output:/output
Manual Installation¶
Download¶
Download from GitHub Releases:
| Platform | Archive |
|---|---|
| Linux x86_64 | recurl-linux-x86_64.tar.gz |
| Linux aarch64 | recurl-linux-aarch64.tar.gz |
| macOS x86_64 | recurl-darwin-x86_64.tar.gz |
| macOS aarch64 | recurl-darwin-aarch64.tar.gz |
| Windows x86_64 | recurl-windows-x86_64.zip |
Directory Structure¶
After extraction:
recurl/
├── recurl(.exe) # Main binary
├── recurld(.exe) # Daemon binary
└── bin/
├── curl_engine(.exe) # Upstream curl
├── curl_chrome # Chrome impersonation (Linux/macOS)
├── curl_ff # Firefox impersonation (Linux/macOS)
└── curl_safari # Safari impersonation (Linux/macOS)
Linux (Manual)¶
# Extract
tar -xzf recurl-linux-x86_64.tar.gz
sudo mv recurl /usr/local/
# Add to PATH
echo 'export PATH="/usr/local/recurl:$PATH"' >> ~/.bashrc
source ~/.bashrc
# Optional: alias curl
echo 'alias curl="/usr/local/recurl/recurl"' >> ~/.bashrc
source ~/.bashrc
macOS (Manual)¶
# Extract
tar -xzf recurl-darwin-aarch64.tar.gz
sudo mv recurl /usr/local/
# Add alias
echo 'alias curl="/usr/local/recurl/recurl"' >> ~/.zshrc
source ~/.zshrc
Windows (Manual)¶
-
Extract
recurl-windows-x86_64.ziptoC:\Program Files\recurl\ -
Add to PATH:
- Open System Properties → Environment Variables
- Edit
Pathunder User variables - Add
C:\Program Files\recurl
-
Set up alias in PowerShell profile (
$PROFILE):
Building from Source¶
Prerequisites¶
- Rust 1.75 or later
- pkg-config and OpenSSL headers (Linux)
Build¶
Run Tests¶
# All tests
cargo test
# Browser integration tests (requires Chromium)
cargo test --test browser_integration -- --test-threads=1
Chromium Auto-Download¶
recurl automatically downloads Chromium on first JS preflight use. No manual installation required.
Cache locations:
| Platform | Path |
|---|---|
| Linux | ~/.local/share/recurl/chromium/ |
| macOS | ~/Library/Application Support/recurl/chromium/ |
| Windows | %LOCALAPPDATA%\recurl\chromium\ |
Linux ARM64
Auto-download is not available for Linux ARM64. Install Chromium manually:
Verify Installation¶
# Check version
recurl --version
# Test with debug output
recurl --recurl-debug https://httpbin.org/get
# Test JS preflight (downloads Chromium if needed)
recurl --recurl-js --recurl-debug https://example.com
Uninstall¶
Linux / macOS¶
# Remove alias from shell config, then:
sudo rm -rf /usr/local/recurl
# Remove Chromium cache
rm -rf ~/.local/share/recurl # Linux
rm -rf ~/Library/Application\ Support/recurl # macOS
Windows¶
- Remove from PATH in Environment Variables
- Delete
C:\Program Files\recurl\ - Remove alias from PowerShell profile
- Delete
%LOCALAPPDATA%\recurl\