Reset SIGPIPE to SIG_DFL at startup so writing to a closed stdout
terminates the process quietly like normal Unix tools, instead of
panicking with "failed printing to stdout: Broken pipe".
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011YPrEZVBpPVoCRyJz2exkZ
The inline heredoc for the release body put unindented lines (backticks,
fences) at column 1 inside the `run: |` block scalar, which is invalid
YAML — so Gitea silently scheduled no run. Move the release notes to
.gitea/release-notes.md and cat it instead.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011YPrEZVBpPVoCRyJz2exkZ
install.sh detects arch, downloads the latest binary and installs it to PATH
(like a `curl … | sh` installer). The release workflow now ships install.sh as
an asset and PATCHes the release body with the one-line install command, so the
release page shows how to install with a single command. README/wiki updated.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011YPrEZVBpPVoCRyJz2exkZ
The x86_64 cross build failed compiling ring's C (curve25519.c): the cross
gcc couldn't find bits/libc-header-start.h because only the compiler
(gcc-x86-64-linux-gnu) was installed, not the amd64 target libc headers.
Add libc6-dev-amd64-cross so the cross sysroot has them.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011YPrEZVBpPVoCRyJz2exkZ
Rust CLI for Nginx Proxy Manager via its API, with sudo-like token auth
(login prompts for password, caches only a short-lived token, never the
password) and a generic `api` command to talk to any HTTP API.
Commands: login/logout/status, list-hosts/get-host/find, add-proxy,
enable/disable/delete-host, list-certs/add-cert/renew-cert, dump (JSON
backup), apply (declarative), and generic api (method/url/header/data/
auth-key/insecure).
Includes clap help + help-on-bad-input, Gitea Actions release workflow
(arm64 native + x64 cross), VS Code build task (-> ./build), README and
MIT license.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011YPrEZVBpPVoCRyJz2exkZ