s6-rc
Software
skarnet.org
The s6-rc-repo-sync program
s6-rc-repo-sync synchronizes a repository,
which means making an up-to-date reference
database, and ensuring that all defined
sets include all the services in the
repository's stores, and only them.
Interface
s6-rc-repo-sync [ -v verbosity ] [ -r repo ] [ -h fdhuser ]
- s6-rc-repo-sync looks at all the services defined in the repository's
stores, and compiles them into a
reference database.
- It then looks at all the sets
and synchronizes them with the services in all the stores:
- Existing services are preserved as they are.
- If a service doesn't appear in the stores, it is removed from all sets.
- If a new service is defined in the stores, it is added to all sets. Services
with the essential flag are added to the always
rx; services with
the recommended flag are added to the active rx; others are added
to the usable rx.
- It exits 0.
Options
- -v verbosity, --verbosity=verbosity
- Be more or less verbose. The default is 1, which means
that error messages and warnings will be written to stderr. 0 means that only
error messages will be written, and 2 or more adds informational messages.
The option is also passed to commands that s6-rc-repo-sync may call, such
as s6-rc-compile, so their verbosity will
be similarly adjusted.
- -r repo, --repository=repo
- Use the repository in repo, which must exist. Default is
/var/lib/s6-rc/repository.
- -h fdhuser, --fdholder-user=fdhuser
- You can safely ignore this option and forget about it. What it does
is ensure that if a supervision tree is started as root on a compiled
database produced by this command, the fd-holder daemon in that
supervision tree runs as fdhuser rather than root. (It is okay
to run that daemon as root.)
Exit codes
- 0
- Success.
- 1
- Failure. Either the services in the listed stores do not make a
consistent reference database, or some set is inconsistent.
With a nonzero verbosity, the error messages from
s6-rc-compile will be displayed
and detail exactly what went wrong.
- 100
- Incorrect usage.
- 111
- System call failed. This usually signals an issue with the
underlying operating system.
Notes
- s6-rc-repo-sync should be called when the contents of the stores have
changed, for instance when the package manager has added packages that define
new services.