cave

cave is the client of Paludis, Exherbo’s package mangler (https://exherbo.org, https://paludis.exherbo.org).

Parsing notes, verified against the cave man pages (paludis.exherbo.org/clients/):

  • print-ids is the only machine-parseable listing (“No formatting is used, making the output suitable for parsing by scripts”), with a caller-controlled --format; the ‘/::installed’ spec selects the installed repository.

  • No search: cave search emits multi-line human records with no format control, and print-ids --matching needs an exact spec rather than a fuzzy query. No outdated either: the cave resolve plan is human-oriented.

  • resolve never prompts (it refuses risky transactions instead, wanting explicit --permit-* flags), so no assume-yes flag exists or is needed.

  • Execute phases (--execute) and sync need root; plan-only and print-ids calls do not.

  • Home page: https://exherbo.org

  • Source: meta_package_manager/managers/cave.toml

Platforms

  • 🐧 Linux (Exherbo Linux only)

Operations

Operation

Supported

installed

outdated

search

install

upgrade

upgrade_all

remove

sync

cleanup

Ecosystem

  • Accepted purl types: pkg:cave

Usage

$ mpm --cave installed
$ mpm --cave upgrade --all
$ mpm install pkg:cave/hello
$ mpm --dry-run --cave upgrade --all

Every example above accepts --dry-run, which simulates the underlying manager calls without touching the system: the safe way to watch what mpm would do before trusting it.

Deselect the manager for a single run with --no-cave, disable it from your configuration, or tune its invocation attributes with per-manager overrides.

Command line

  • CLI names, in lookup order: cave

  • Arguments forced before each call: --colour no

The version is probed by running:

$ cave --version
cave 3.0.1

and extracted with:

r"(?P<version>\d+\.\d+\.\d+)"

Privilege escalation

System-wide manager: mpm wraps its privileged operations in sudo out of the box. Instead of letting the tool prompt mid-run, mpm primes the credential cache up-front, with a single branded password prompt at most. Turn escalation off for rootless setups with --no-sudo or the per-manager sudo override.

Root is required for its cleanup, install, remove, sync, upgrade, upgrade_all operations.

See privilege escalation for the full policy.

Cooldown

State of cave’s release-age gating, from the cooldown support table:

  • Status: ❌ None (Exherbo, source-based)

With --cooldown set, mpm skips this manager’s install and upgrade operations rather than run them unguarded (fail-closed); --allow-unsupported-managers opts back in.

Reference traces

Raw native outputs captured in the bundled definition: the reference mpm’s parsers were written against. If you know cave well and a transcript below looks wrong, or a newer release changed its output format, report it.

$ cave print-ids --matching */*::installed --format %c/%p %v\n
app-arch/gzip 1.14
sys-apps/sed 4.9