Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Package Publishing and Ownership

joy supports self-hosted package publishing and ownership workflows backed by registry index mutation.

Initialize a Reusable Package Manifest

joy package init acme/widgets --kind header-only --version 0.1.0

Kinds:

  • header-only (default)
  • cmake

Publish

joy publish --registry internal --rev v0.1.0

If --source-package is omitted, package id from the local package manifest is used.

Manage Owners

joy owner list acme/widgets --registry internal
joy owner add acme/widgets alice --registry internal
joy owner remove acme/widgets alice --registry internal

Yank / Unyank Releases

joy yank acme/widgets --version 0.1.0 --registry internal
joy yank acme/widgets --version 0.1.0 --undo --registry internal

Yanked versions are excluded from normal registry resolution.

Remote Registry Transport (Shipped)

publish, owner, and yank support remote git-backed registry URLs (for example file://... or hosted git remotes) via temporary checkout/commit/push flows.

Transport/auth failures are returned with stable error codes in JSON mode.

joy registry add internal file:///srv/joy-index.git --default
joy package init acme/widgets --kind header-only --version 0.1.0
joy publish --registry internal --rev v0.1.0
joy owner add acme/widgets alice --registry internal
joy yank acme/widgets --version 0.1.0 --registry internal
joy yank acme/widgets --version 0.1.0 --undo --registry internal