- ADD_CHAIN138_TO_LEDGER_LIVE: Ledger form done; public code review repo bis-innovations/LedgerLive; init/push commands - CONTRACT_DEPLOYMENT_RUNBOOK: Chain 138 gas price 1 gwei, 36-addr check, TransactionMirror workaround - CONTRACT_*: AddressMapper, MirrorManager deployed 2026-02-12; 36-address on-chain check - NEXT_STEPS_FOR_YOU: Ledger done; steps completable now (no LAN); run-completable-tasks-from-anywhere - MASTER_INDEX, OPERATOR_OPTIONAL, SMART_CONTRACTS_INVENTORY_SIMPLE: updates - LEDGER_BLOCKCHAIN_INTEGRATION_COMPLETE: bis-innovations/LedgerLive reference Co-authored-by: Cursor <cursoragent@cursor.com>
7.2 KiB
APT Packages Checklist
Last Updated: 2026-02-05
Document Version: 1.1
Status: Active Documentation
Complete checklist of all apt packages required for each service type.
Automation / jump host / scripts runner (recommended)
Install on the machine that runs scripts/push-templates-to-proxmox.sh, verification scripts, and automation that SSHs to Proxmox hosts. These are optional but recommended; many scripts work with only bash curl jq openssl ssh (see scripts/verify/check-dependencies.sh).
# One-line install (Debian/Ubuntu)
sudo apt install -y sshpass rsync dnsutils iproute2 screen tmux htop shellcheck parallel
| Package | Purpose |
|---|---|
| sshpass | Non-interactive SSH with password (storage-monitor, set-container-password, restart-and-verify-services, Blockscout/update scripts). Prefer SSH keys; use sshpass only when needed. |
| rsync | Efficient sync for push-templates and file copies (optional; script falls back to scp). |
| dnsutils | dig, nslookup for DNS checks in verification. |
| iproute2 | ss for socket checks (optional). |
| screen / tmux | Long-running sessions (deployments, downloads). |
| htop | Interactive process view on hosts. |
| shellcheck | Static analysis for shell scripts (scripts/verify/run-shellcheck.sh). |
| parallel | GNU parallel for batch SSH/commands (optional). |
macOS (Homebrew): brew install sshpass rsync bind screen tmux htop shellcheck parallel (sshpass may need brew install hudochenkov/sshpass/sshpass or use SSH keys).
Besu Nodes
Common Packages (All Besu Node Types)
openjdk-17-jdk # Java 17 Runtime (Required for Besu)
wget # Download Besu binary
curl # HTTP client utilities
jq # JSON processing
netcat-openbsd # Network utilities (nc command)
iproute2 # Network routing utilities (ip command)
iptables # Firewall management
ca-certificates # SSL certificate store
gnupg # GPG for package verification
lsb-release # LSB release information
Note: nginx for RPC Nodes
nginx is NOT installed on RPC nodes. Instead, VMID 105 (nginx-proxy-manager) is used as a centralized reverse proxy and load balancer for all RPC endpoints. This provides:
- Centralized management via web UI
- Load balancing across RPC nodes (2500-2502)
- SSL termination
- High availability with automatic failover
See docs/NGINX_ARCHITECTURE_RPC.md for details.
Install Scripts:
install/besu-validator-install.shinstall/besu-sentry-install.shinstall/besu-rpc-install.sh
Blockscout Explorer
docker.io # Docker runtime
docker-compose # Docker Compose orchestration
curl
wget
jq
ca-certificates
gnupg
lsb-release
Install Script: install/blockscout-install.sh
Hyperledger Fabric
docker.io
docker-compose
curl
wget
jq
ca-certificates
gnupg
lsb-release
python3
python3-pip
build-essential # C/C++ compiler and build tools
Install Script: install/fabric-install.sh
Hyperledger Firefly
docker.io
docker-compose
curl
wget
jq
ca-certificates
gnupg
lsb-release
Install Script: install/firefly-install.sh
Hyperledger Indy
docker.io
docker-compose
curl
wget
jq
ca-certificates
gnupg
lsb-release
python3
python3-pip
python3-dev # Python development headers
libssl-dev # OpenSSL development libraries
libffi-dev # Foreign Function Interface library
build-essential # C/C++ compiler and build tools
pkg-config # Package configuration tool
libzmq5 # ZeroMQ library (runtime)
libzmq3-dev # ZeroMQ library (development)
Install Script: install/indy-install.sh
Hyperledger Cacti
docker.io
docker-compose
curl
wget
jq
ca-certificates
gnupg
lsb-release
Install Script: install/cacti-install.sh
Chainlink CCIP Monitor
python3
python3-pip
python3-venv # Python virtual environment
curl
wget
jq
ca-certificates
Install Script: install/ccip-monitor-install.sh
Oracle Publisher
docker.io
docker-compose
curl
wget
jq
ca-certificates
gnupg
lsb-release
python3
python3-pip
Install Script: install/oracle-publisher-install.sh
Keeper
docker.io
docker-compose
curl
wget
jq
ca-certificates
gnupg
lsb-release
Install Script: install/keeper-install.sh
Financial Tokenization
docker.io
docker-compose
curl
wget
jq
ca-certificates
gnupg
lsb-release
python3
python3-pip
Install Script: install/financial-tokenization-install.sh
Monitoring Stack
docker.io
docker-compose
curl
wget
jq
ca-certificates
gnupg
lsb-release
Install Script: install/monitoring-stack-install.sh
Package Summary by Category
Essential System Packages (Most Services)
curl,wget,jq,ca-certificates,gnupg,lsb-release
Docker Services
docker.io,docker-compose
Python Services
python3,python3-pip- Optional:
python3-dev,python3-venv,build-essential
Java Services (Besu)
openjdk-17-jdk
Network Utilities
netcat-openbsd,iproute2,iptables
Development Tools
build-essential(includes gcc, g++, make, etc.)pkg-config
Libraries
libssl-dev,libffi-dev,libzmq5,libzmq3-dev
Verification Commands
After deployment, verify packages are installed:
# Check Java (Besu nodes)
pct exec <vmid> -- java -version
# Check Docker (Docker-based services)
pct exec <vmid> -- docker --version
pct exec <vmid> -- docker-compose --version
# Check Python (Python services)
pct exec <vmid> -- python3 --version
pct exec <vmid> -- pip3 --version
# Check specific packages
pct exec <vmid> -- dpkg -l | grep -E "openjdk-17|docker|python3"
Package Installation Notes
Automatic Installation
All packages are automatically installed by their respective install scripts during container deployment.
Installation Order
- Container created with Ubuntu 22.04 template
- Container started
- Install script pushed to container
- Install script executed (installs all apt packages)
- Application software installed/downloaded
- Services configured
APT Update
All install scripts run apt-get update before installing packages.
Non-Interactive Mode
All install scripts use export DEBIAN_FRONTEND=noninteractive to prevent interactive prompts.
Troubleshooting
Package Installation Fails
Error: E: Unable to locate package <package-name>
Solution:
# Update package lists
pct exec <vmid> -- apt-get update
# Check if package exists
pct exec <vmid> -- apt-cache search <package-name>
# Check Ubuntu version
pct exec <vmid> -- lsb_release -a
Insufficient Disk Space
Error: E: Write error - write (28: No space left on device)
Solution:
# Check disk usage
pct exec <vmid> -- df -h
# Clean apt cache
pct exec <vmid> -- apt-get clean
Network Connectivity Issues
Error: E: Failed to fetch ... Connection timed out
Solution:
# Test network connectivity
pct exec <vmid> -- ping -c 3 8.8.8.8
# Check DNS resolution
pct exec <vmid> -- nslookup archive.ubuntu.com