Install
Rendlio is one self-contained binary called rendlio. There is no runtime to provision, no service to register, no Office or LibreOffice on the host, and no network access at any point — installing it is just getting the binary onto the machine and putting a licence file next to it.
Three channels ship the same engine: a .NET global tool, an OCI container image, and per-platform archives. Same flags, same exit codes, same bytes out.
Pick a channel
Section titled “Pick a channel”| Channel | Needs on the host | Best for |
|---|---|---|
Rendlio.Tool (.NET global tool) | .NET 10 SDK | Developer machines and build agents that already have .NET |
ghcr.io/rendlio/rendlio (container) | A container runtime | CI runners, container platforms, hosts with no .NET |
| Self-contained archive | Nothing | Air-gapped hosts, appliances, anywhere without a package feed |
1. .NET global tool
Section titled “1. .NET global tool”The quickest path when a .NET 10 SDK is already present. It puts the rendlio command on your PATH, and updates come through the same channel:
dotnet tool install -g Rendlio.Tooldotnet tool update -g Rendlio.ToolConfirm what you got — the version, the build’s release date, and the schema versions it speaks:
rendlio version2. Container image
Section titled “2. Container image”For CI runners and container platforms: no .NET on the host, nothing else to provision. The same image runs on x64 and ARM64.
docker pull ghcr.io/rendlio/rendlio:latestMount a working directory and convert:
docker run --rm -v "$PWD:/work" -w /work ghcr.io/rendlio/rendlio \ convert book.xlsm -o book.pdf --format pdfa --report report.jsonOr pipe through stdin/stdout and mount nothing at all. Stdout carries only document bytes; every diagnostic goes to stderr, so piping is safe by design:
cat in.xlsx | docker run --rm -i ghcr.io/rendlio/rendlio convert - -o - > out.pdfThe container wraps the exact same binary as the global tool. Passing licences into it, setting hard memory and CPU limits, and gating pipelines on the exit code are covered on Deployment.
3. Self-contained archives
Section titled “3. Self-contained archives”One archive per platform, everything inside — no .NET install, no package manager. Unpack, drop Rendlio.license next to the binary (or in ~/.rendlio/), convert.
| Platform | Runtime id | Archive |
|---|---|---|
| Windows x64 | win-x64 | rendlio-win-x64.zip |
| Linux x64 | linux-x64 | rendlio-linux-x64.tar.gz |
| Linux ARM64 | linux-arm64 | rendlio-linux-arm64.tar.gz |
| macOS Apple Silicon | osx-arm64 | rendlio-osx-arm64.tar.gz |
curl -LO https://github.com/rendlio/rendlio/releases/latest/download/rendlio-linux-x64.tar.gztar -xzf rendlio-linux-x64.tar.gz./rendlio versionDeterministic output is byte-identical across all four platforms — the same workbook and the same options produce the same bytes wherever you run them.
Verify the release before you run it
Section titled “Verify the release before you run it”Every release is cosign-signed from the public build pipeline and ships a SHA256SUMS file plus a CycloneDX software bill of materials (rendlio.sbom.json). Verification is the point: signatures you never check are decoration.
Verify the container image (keyless, against the repository identity):
cosign verify ghcr.io/rendlio/rendlio:latest \ --certificate-identity-regexp 'https://github.com/rendlio/rendlio/' \ --certificate-oidc-issuer https://token.actions.githubusercontent.comVerify an archive — each one publishes a matching .sigstore.json bundle in the same release:
cosign verify-blob rendlio-linux-x64.tar.gz \ --bundle rendlio-linux-x64.tar.gz.sigstore.json \ --certificate-identity-regexp 'https://github.com/rendlio/rendlio/' \ --certificate-oidc-issuer https://token.actions.githubusercontent.comCheck the checksums, which cover every artifact in the release:
sha256sum -c SHA256SUMS --ignore-missingThe SBOM lists every component in the build, machine-readable — hand it to procurement as-is. All of it is linked from Downloads.
Place your licence file
Section titled “Place your licence file”Without a licence, Rendlio still converts with full features: output carries a diagonal evaluation watermark and the run emits warning W9001, so watermarked runs exit 1 at best and never 0. To run watermark-free, put the licence where the engine looks. It resolves at most one source — first match wins, no merging:
--license <path>on the command lineRENDLIO_LICENSE— a file path or the licence text itself, inlineRendlio.licensein the current working directory~/.rendlio/Rendlio.license- Nothing found ⇒ evaluation watermark mode +
W9001
--license community asserts the Community tier when a community licence file is present; bare community without a minted file is invalid (exit 3) — the free tier still requires the self-serve-minted file.
Verification is a pure offline signature check against public keys embedded in the binary. No activation, no licence server, no phone-home — which is why the same file works unchanged on air-gapped hosts. Check what the engine resolved:
rendlio license infoConfirm the install works
Section titled “Confirm the install works”rendlio convert book.xlsx -o book.pdf --report report.jsonExit code 0 means clean, 1 means rendered with warnings, 2 means the workbook contains something Rendlio does not render faithfully — and report.json names every one of them with a location. The full ladder is in the CLI reference.
Next steps
Section titled “Next steps”- Quickstart — first faithful PDF plus report, in five minutes
- CLI reference — every command, flag, and environment variable
- Deployment — Docker, GitHub Actions, GitLab CI, air-gapped hosts, resource limits
- Security model — what the engine does with a file it cannot trust
- Licensing guide — which tier you are, and how the licence file works