CLI Guides
Install, authenticate, and configure the command-line tools used across the
Portugal Futurista fleet. Every guide follows the same shape:
What it is → Install → Authenticate → Configure for this environment →
Self-hosted equivalent → Aurélio integration → Verify → Troubleshooting.
Self-hosted first policy
Default to self-hosted endpoints in dev. Public clouds only when required.
Concretely:
- Forge — Forgejo (LAN
192.168.0.9:3001)
is the default. github.com is for public mirrors only; use tea, not gh.
- Object storage — MinIO on
http://192.168.0.40:9000 (console :9001),
S3-compatible. Point aws s3, Terraform/OpenTofu state, and backup jobs here first.
- AWS APIs — LocalStack on
http://192.168.0.40:4566 emulates the common
AWS services. Develop against it; switch profiles to real AWS only for
cloud-specific behaviour.
- Azure Storage — Azurite on
192.168.0.40 (blob :10000, queue :10001,
table :10002) via connection strings.
- Secrets — never in shell history or dotfiles. Store API tokens in
Vaultwarden (https://vault.portugalfuturista.org, see
docs/vaultwarden-setup.md) and reference them from
~/.config files with chmod 600.
Self-hosted services
| Guide |
What it covers |
| cloud-emulators |
MinIO + LocalStack v3 + Azurite on lattepanda (192.168.0.40) — deploy/manage, credentials, CLI wiring, Terraform state backend |
All guides target the laptop: Linux x86_64, Debian/Ubuntu-based, bash
(arm64 variants noted where relevant).
Guides
Core (forge & collaboration)
| Guide |
Tool |
One-liner |
Self-hosted equivalent |
| gh |
GitHub CLI |
PRs/issues/releases on github.com (public mirrors only) |
Forgejo → use tea instead |
| tea |
Gitea/Forgejo CLI |
Primary forge tool for code.portugalfuturista.org |
It is the self-hosted tool |
| acli |
Atlassian CLI |
Jira + Confluence from the terminal |
None deployed (Plane/OpenProject deferred) |
DevOps
| Guide |
Tool |
One-liner |
Self-hosted equivalent |
| aws |
AWS CLI v2 |
AWS API access, profiles |
LocalStack :4566 + MinIO :9000 |
| gcloud |
Google Cloud CLI |
GCP projects, GKE, GCS |
None real; Firebase emulators / fake-gcs-server |
| az |
Azure CLI |
Azure resources + storage |
Azurite :10000-10002 via connection strings |
| kubectl |
Kubernetes CLI |
Cluster ops |
k3s on Proxmox |
| helm |
Helm |
Kubernetes package manager |
Same — points at the k3s cluster |
| terraform-opentofu |
Terraform / OpenTofu |
IaC; prefer OpenTofu (MPL-2.0) |
State on MinIO via S3 backend |
| docker-compose |
Docker Engine + Compose |
Containers on the laptop |
Docker itself is the self-hosted runtime |
| ansible |
Ansible |
Agentless config of Proxmox nodes |
It is self-hosted (inventory = LAN nodes) |
Edge / serverless
| Guide |
Tool |
One-liner |
Self-hosted equivalent |
| cloudflared-wrangler |
cloudflared + wrangler |
Cloudflare tunnel pf-tunnel-v2 + Workers |
Tunnel already self-hosted on asus |
| vercel |
Vercel CLI |
Deploy previews / serverless frontends |
None deployed (Coolify on Proxmox = future) |
| netlify |
Netlify CLI |
Static + functions deploys |
None deployed; Caddy behind pf-tunnel-v2 |
| flyctl |
Fly.io CLI |
Global container deploys |
None; k3s/Kamal on Proxmox |
| doctl |
DigitalOcean CLI |
DO droplets/spaces |
Proxmox cluster (pct/qm) is the self-hosted equivalent |
IoT
| Guide |
Tool |
One-liner |
Self-hosted equivalent |
| mosquitto-clients |
mosquitto-clients |
MQTT pub/sub from the shell |
mosquitto broker LXC on Proxmox |
Embedded Linux
| Guide |
Tool |
One-liner |
Self-hosted equivalent |
| esptool |
esptool.py |
ESP32 flash/serial |
Local tool — no cloud dependency |
| arduino-cli |
Arduino CLI |
Compile/upload Arduino sketches |
Local tool — no cloud dependency |
| platformio |
PlatformIO Core |
Multi-platform embedded builds |
Local tool; registry mirrorable |
| yocto |
Yocto / poky + kas |
Custom Linux images |
Build in crops/poky container; Proxmox CT later |
| buildroot |
Buildroot |
Minimal embedded Linux images |
Fully local by design |
| uboot-tools |
u-boot-tools |
mkimage for U-Boot images |
Fully local by design |
| cross-toolchains |
gcc-arm-none-eabi, aarch64-linux-gnu, west |
Cross-compile for ARM targets |
Fully local by design |
Infra reference
| Host |
IP |
Role |
| asus |
192.168.0.38 |
Proxmox (CTs 202–220), cloudflared pf-tunnel-v2 |
| gigabyte |
192.168.0.104 |
Proxmox (CTs 200–211), media stack, signal-cli |
| lattepanda |
192.168.0.40 |
Proxmox node; cloud emulators (MinIO, LocalStack, Azurite) |
| Forgejo |
192.168.0.9:3001 / code.portugalfuturista.org |
Default git forge |
| Vaultwarden |
vault.portugalfuturista.org |
Secrets (see setup) |