S6-RC-SET-FIX(8)

πŸ“¦ version 0.7.0.0, in nixpkgs unstable

πŸ’… s6-rc-set-fix β€” the dependency-vibe-check + fix-up era πŸ’…

Okay bestie, welcome to S6-RC-SET-FIX(8) from the System Manager's Manual. This tool literally checks one or more sets of services for dependency inconsistencies and fixes them. It’s giving β€œgroup project but make it functional.” 🫢


NAME

s6-rc-set-fix β€” check one or more sets of services for dependency inconsistencies, and fix them. No cap, that’s the whole assignment. ✨

SYNOPSIS

s6-rc-set-fix [-v verbosity] [-r repo] [-u | -d] [-E | -e] [-n]
              [sets...]

DESCRIPTION

So s6-rc-set-fix checks every set listed in sets... for dependency inconsistencies that might stop s6-rc-set-commit(8) from succeeding. If sets... is empty, it checks all the sets in the repository. Bestie, it’s thorough. πŸ’…

It prints what it finds and changes the rxs of impacted services so the resulting set is consistent. Like a little consistency fairy, but with exit statuses. 🧚✨

OPTIONS

  • -v _verbosity_, --verbosity=verbosity β€” Be more or less verbose. Default is 1, which means error messages and warnings go to stderr. 0 means only error messages get written. 2 or more adds informational messages. Dependency inconsistencies are warnings, so they show up at the default level β€” but not at 0. Want more details? Crank the verbosity. πŸ”₯
  • -r _repo_, --repository=repo β€” Use the repository in _repo_, which must exist. Default is /var/lib/s6-rc/repository. Simple as that. πŸŽ€
  • -u, --fix-up β€” When a dependency inconsistency is found, fix it by bringing more services into the starting bundle. If β€˜B’ depends on β€˜A’, β€˜B’ is active, but β€˜A’ is only usable or even masked, fix it by making β€˜A’ active. Translation: more services will be started at boot time than the set initially declared. Highkey a glow-up for dependency coverage. πŸ’–
  • -d, --fix-down β€” When a dependency inconsistency is found, fix it by bringing fewer services into the starting bundle. If β€˜B’ depends on β€˜A’, β€˜B’ is active, but A is only usable or even masked, fix it by making β€˜B’ usable (if β€˜A’ is usable) or masked (if β€˜A’ is masked). Translation: fewer services will be started at boot time than the set initially declared. This is the default. Periodt. πŸ’…
  • -E, --no-force-essential β€” If fixing a dependency inconsistency would imply moving a service down from the always rx, or up to the always rx, when its service definition directory does not declare it as essential, do not attempt fixing it and fail the operation. This is the default. If that situation occurs, it means that the set of services provided in the stores is not consistent β€” and that’s the thing that should be fixed. 🫢
  • -e, --force-essential β€” If fixing a dependency inconsistency would imply moving a service down from the always rx, or up to the always rx, when its service definition directory does not declare it as essential, do it anyway, even though it goes against a service definition in a store. This can help you keep a service set consistent until the store is fixed. It’s giving β€œplot twist, but temporary.” πŸ™ˆ
  • -n, --dry-run β€” Check for inconsistencies, but only print what would be needed to fix the set; do not perform the fix. A little look-see, no commitment. πŸ‘€βœ¨

EXIT STATUS

  • 0 β€” Success. Slay. πŸ‘‘
  • 1 β€” A needed modification could not be made because the -e option was not given.
  • 100 β€” Incorrect usage. Oop. πŸ’€
  • 102 β€” Inconsistent repository. 😭
  • 111 β€” System call failed. 🫠

SEE ALSO

s6-rc-repo(7), s6-rc-set-commit(8)

This man page is ported from the authoritative documentation at: https://skarnet.org/software/s6-rc/s6-rc-set-fix.html

AUTHORS

  • Laurent Bercot
  • Carlos Eduardo <carana2099@gmail.com> (man page port)

xoxo bestie πŸ’– β€” this was the Debian version, dated January 25, 2026, for the S6-RC-SET-FIX(8) manual page. Bye and stay consistent! πŸ¦‹

πŸ“¦ where this page comes from