What is Sinter?
Sinter is a lightweight, agentless configuration-management tool, inspired by
Itamae. It describes and applies operating-system configuration from a single
Rust binary. Managed hosts require no Sinter agent and no Ruby or Python
runtime — only an SSH server, /bin/sh, systemd, and passwordless sudo -n
where privilege escalation is needed.
Design goals
Section titled “Design goals”- Small enough to understand. A deliberately narrow scope: no inventory, roles, plugins, orchestration, or embedded scripting.
- Strong enough to trust. Observation-only plans, re-observation before every mutation, strict SSH host-key checking, fail-closed parsing, and truthful result reporting.
- Idempotent. Re-applying a recipe that already matches performs zero mutations.
What a run looks like
Section titled “What a run looks like”sinter validate recipe.yaml # schema check, no target contactsinter plan --host web01.example.com recipe.yaml # observe onlysinter apply --host web01.example.com --sudo recipe.yamlplan produces a non-authoritative preview. apply re-observes every
stateful resource immediately before deciding whether to mutate it — a
previous plan is never reused as current state.
One host per invocation
Section titled “One host per invocation”Each plan or apply targets exactly one host. Omit --host to run
against the controller itself (localhost); pass --host for a remote SSH
target. There is no Ansible-style inventory: Sinter has no host lists,
groups, or fleet orchestration. To manage multiple hosts, invoke Sinter once
per host (the same recipe works everywhere in the support matrix); run any
fan-out or ordering you need from your own scripts.
Supported managed targets
Section titled “Supported managed targets”| Platform | Architecture | Package backend |
|---|---|---|
| Ubuntu 24.04 LTS | amd64 | apt |
| Ubuntu 26.04 LTS | amd64 | apt |
| Rocky Linux 9 | x86_64 | dnf |
| Rocky Linux 10 | x86_64 | dnf |
| RHEL 9 | x86_64 | dnf |
| RHEL 10 | x86_64 | dnf |
| AlmaLinux 9 | x86_64 | dnf |
| AlmaLinux 10 | x86_64 | dnf |
See Compatibility for requirements and the acceptance reference.
What Sinter is not
Section titled “What Sinter is not”Sinter does not aim to replace general-purpose orchestration systems. It has no inventory, no agent daemon, no templating programming language, and no cluster-wide coordination. It is a small tool for describing and applying configuration on individual Linux hosts.