# peipkg (peipkg)

> Technical Reference Manual — the package manager: repositories and trust, dependency resolution, installation, transactions and rollback, roles and claims, and package production.

The whole book as one markdown file: [/peios/advanced-peios/peipkg/print.md](/peios/advanced-peios/peipkg/print.md)

Contents:

- 1 [Introduction](/peios/advanced-peios/peipkg/introduction/overview.md)
    - 1.1 [Overview](/peios/advanced-peios/peipkg/introduction/overview.md)
    - 1.2 [What This Manual Covers](/peios/advanced-peios/peipkg/introduction/what-this-manual-covers.md)
    - 1.3 [Terminology](/peios/advanced-peios/peipkg/introduction/terminology.md)
    - 1.4 [Compatibility](/peios/advanced-peios/peipkg/introduction/compatibility.md)
- 2 [The Tools](/peios/advanced-peios/peipkg/the-tools/peipkg.md)
    - 2.1 [peipkg](/peios/advanced-peios/peipkg/the-tools/peipkg.md)
    - 2.2 [pekit](/peios/advanced-peios/peipkg/the-tools/pekit.md)
    - 2.3 [peipkg-repo](/peios/advanced-peios/peipkg/the-tools/peipkg-repo.md)
    - 2.4 [peipkg-compose](/peios/advanced-peios/peipkg/the-tools/peipkg-compose.md)
    - 2.5 [The Package Database](/peios/advanced-peios/peipkg/the-tools/the-package-database.md)
    - 2.6 [On-Disk State](/peios/advanced-peios/peipkg/the-tools/on-disk-state.md)
- 3 [Repositories](/peios/advanced-peios/peipkg/repositories/configuration.md)
    - 3.1 [Configuration](/peios/advanced-peios/peipkg/repositories/configuration.md)
    - 3.2 [Adding a Repository](/peios/advanced-peios/peipkg/repositories/adding-a-repository.md)
    - 3.3 [Priority](/peios/advanced-peios/peipkg/repositories/priority.md)
    - 3.4 [Refresh](/peios/advanced-peios/peipkg/repositories/refresh.md)
    - 3.5 [The Index Cache](/peios/advanced-peios/peipkg/repositories/the-index-cache.md)
    - 3.6 [Transport](/peios/advanced-peios/peipkg/repositories/transport.md)
    - 3.7 [Cross-Repository Guards](/peios/advanced-peios/peipkg/repositories/cross-repository-guards.md)
- 4 [Resolution](/peios/advanced-peios/peipkg/resolution/inputs-and-outputs.md)
    - 4.1 [Inputs and Outputs](/peios/advanced-peios/peipkg/resolution/inputs-and-outputs.md)
    - 4.2 [Satisfaction](/peios/advanced-peios/peipkg/resolution/satisfaction.md)
    - 4.3 [Candidate Selection](/peios/advanced-peios/peipkg/resolution/candidate-selection.md)
    - 4.4 [Failure Conditions](/peios/advanced-peios/peipkg/resolution/failure-conditions.md)
    - 4.5 [Optional Dependencies](/peios/advanced-peios/peipkg/resolution/optional-dependencies.md)
    - 4.6 [Removal Cascades](/peios/advanced-peios/peipkg/resolution/removal-cascades.md)
    - 4.7 [Roots and Resolution](/peios/advanced-peios/peipkg/resolution/roots-and-resolution.md)
- 5 [Installation](/peios/advanced-peios/peipkg/installation/preconditions.md)
    - 5.1 [Preconditions](/peios/advanced-peios/peipkg/installation/preconditions.md)
    - 5.2 [Validation](/peios/advanced-peios/peipkg/installation/validation.md)
    - 5.3 [Preparation](/peios/advanced-peios/peipkg/installation/preparation.md)
    - 5.4 [Extraction](/peios/advanced-peios/peipkg/installation/extraction.md)
    - 5.5 [Path Resolution](/peios/advanced-peios/peipkg/installation/path-resolution.md)
    - 5.6 [Registration](/peios/advanced-peios/peipkg/installation/registration.md)
    - 5.7 [Pre-Existing Files](/peios/advanced-peios/peipkg/installation/file-ownership.md)
- 6 [Upgrade and Removal](/peios/advanced-peios/peipkg/upgrade-and-removal/the-file-diff.md)
    - 6.1 [The File Diff](/peios/advanced-peios/peipkg/upgrade-and-removal/the-file-diff.md)
    - 6.2 [Configuration Files](/peios/advanced-peios/peipkg/upgrade-and-removal/configuration-files.md)
    - 6.3 [The Upgrade Procedure](/peios/advanced-peios/peipkg/upgrade-and-removal/the-upgrade-procedure.md)
    - 6.4 [Replaces](/peios/advanced-peios/peipkg/upgrade-and-removal/replaces.md)
    - 6.5 [Downgrade and Undo](/peios/advanced-peios/peipkg/upgrade-and-removal/downgrade-and-undo.md)
    - 6.6 [Uninstall](/peios/advanced-peios/peipkg/upgrade-and-removal/uninstall.md)
    - 6.7 [Modified Files](/peios/advanced-peios/peipkg/upgrade-and-removal/modified-files.md)
- 7 [Transactions](/peios/advanced-peios/peipkg/transactions/atomicity.md)
    - 7.1 [Atomicity](/peios/advanced-peios/peipkg/transactions/atomicity.md)
    - 7.2 [Scope](/peios/advanced-peios/peipkg/transactions/scope.md)
    - 7.3 [The Lock](/peios/advanced-peios/peipkg/transactions/the-lock.md)
    - 7.4 [The Commit Procedure](/peios/advanced-peios/peipkg/transactions/the-commit-procedure.md)
    - 7.5 [The Journal](/peios/advanced-peios/peipkg/transactions/the-journal.md)
    - 7.6 [Side-Effect Batching](/peios/advanced-peios/peipkg/transactions/side-effect-batching.md)
    - 7.7 [Visibility](/peios/advanced-peios/peipkg/transactions/visibility.md)
    - 7.8 [Crash Recovery](/peios/advanced-peios/peipkg/transactions/crash-recovery.md)
- 8 [Rollback and Recovery](/peios/advanced-peios/peipkg/rollback-and-recovery/transaction-rollback.md)
    - 8.1 [Transaction Rollback](/peios/advanced-peios/peipkg/rollback-and-recovery/transaction-rollback.md)
    - 8.2 [Backups](/peios/advanced-peios/peipkg/rollback-and-recovery/backups.md)
    - 8.3 [Completeness](/peios/advanced-peios/peipkg/rollback-and-recovery/completeness.md)
    - 8.4 [Indeterminate State](/peios/advanced-peios/peipkg/rollback-and-recovery/indeterminate-state.md)
    - 8.5 [Upgrading peipkg Itself](/peios/advanced-peios/peipkg/rollback-and-recovery/self-upgrade.md)
    - 8.6 [Reverting a Version](/peios/advanced-peios/peipkg/rollback-and-recovery/version-rollback.md)
- 9 [Roles and Claims](/peios/advanced-peios/peipkg/roles-and-claims/the-model.md)
    - 9.1 [The Model](/peios/advanced-peios/peipkg/roles-and-claims/the-model.md)
    - 9.2 [Eligibility](/peios/advanced-peios/peipkg/roles-and-claims/eligibility.md)
    - 9.3 [Auto-Claim](/peios/advanced-peios/peipkg/roles-and-claims/auto-claim.md)
    - 9.4 [Install Flags](/peios/advanced-peios/peipkg/roles-and-claims/install-flags.md)
    - 9.5 [The claim Command](/peios/advanced-peios/peipkg/roles-and-claims/the-claim-command.md)
    - 9.6 [Materialisation](/peios/advanced-peios/peipkg/roles-and-claims/materialisation.md)
    - 9.7 [Withdrawal](/peios/advanced-peios/peipkg/roles-and-claims/withdrawal.md)
- 10 [Installation Roots](/peios/advanced-peios/peipkg/installation-roots/named-roots.md)
    - 10.1 [Named Roots](/peios/advanced-peios/peipkg/installation-roots/named-roots.md)
    - 10.2 [Registration and Resolution](/peios/advanced-peios/peipkg/installation-roots/registration-and-resolution.md)
    - 10.3 [Cross-Root Dependencies](/peios/advanced-peios/peipkg/installation-roots/cross-root-dependencies.md)
    - 10.4 [Composing a Root](/peios/advanced-peios/peipkg/installation-roots/composing-a-root.md)
- 11 [Side Effects](/peios/advanced-peios/peipkg/side-effects/the-recognised-set.md)
    - 11.1 [The Recognised Set](/peios/advanced-peios/peipkg/side-effects/the-recognised-set.md)
    - 11.2 [Invocation](/peios/advanced-peios/peipkg/side-effects/invocation.md)
    - 11.3 [Timing and Failure](/peios/advanced-peios/peipkg/side-effects/timing-and-failure.md)
- 12 [Producing Packages](/peios/advanced-peios/peipkg/producing-packages/the-recipe-family.md)
    - 12.1 [The Recipe Family](/peios/advanced-peios/peipkg/producing-packages/the-recipe-family.md)
    - 12.2 [The Recipe](/peios/advanced-peios/peipkg/producing-packages/the-recipe.md)
    - 12.3 [Sources](/peios/advanced-peios/peipkg/producing-packages/sources.md)
    - 12.4 [Package Files](/peios/advanced-peios/peipkg/producing-packages/package-files.md)
    - 12.5 [Templating and Derivation](/peios/advanced-peios/peipkg/producing-packages/templating-and-derivation.md)
    - 12.6 [Building and Signing](/peios/advanced-peios/peipkg/producing-packages/building-and-signing.md)
    - 12.7 [Reproducibility](/peios/advanced-peios/peipkg/producing-packages/reproducibility.md)
- 13 [Security](/peios/advanced-peios/peipkg/security/the-privilege-model.md)
    - 13.1 [The Privilege Model](/peios/advanced-peios/peipkg/security/the-privilege-model.md)
    - 13.2 [Blast Radius](/peios/advanced-peios/peipkg/security/blast-radius.md)
    - 13.3 [Audit](/peios/advanced-peios/peipkg/security/audit.md)
    - 13.4 [Operator Authorisation](/peios/advanced-peios/peipkg/security/operator-authorisation.md)
    - 13.5 [Trust Anchors](/peios/advanced-peios/peipkg/security/trust-anchors.md)
    - 13.6 [Clock Dependence](/peios/advanced-peios/peipkg/security/clock-dependence.md)
    - 13.7 [Threats Out of Scope](/peios/advanced-peios/peipkg/security/threats-out-of-scope.md)
- 14 [Failure Modes](/peios/advanced-peios/peipkg/failure-modes/an-interrupted-transaction.md)
    - 14.1 [An Interrupted Transaction](/peios/advanced-peios/peipkg/failure-modes/an-interrupted-transaction.md)
    - 14.2 [A Failed Rollback](/peios/advanced-peios/peipkg/failure-modes/a-failed-rollback.md)
    - 14.3 [A File That Does Not Match](/peios/advanced-peios/peipkg/failure-modes/a-file-that-does-not-match.md)
    - 14.4 [An Unreachable Repository](/peios/advanced-peios/peipkg/failure-modes/an-unreachable-repository.md)
    - 14.5 [Disk Exhaustion](/peios/advanced-peios/peipkg/failure-modes/disk-exhaustion.md)
    - 14.6 [A Broken Claim](/peios/advanced-peios/peipkg/failure-modes/a-broken-claim.md)
- Appendix A [State and Paths](/peios/advanced-peios/peipkg/state-and-paths.md)
- Appendix B [Audit Events](/peios/advanced-peios/peipkg/audit-events.md)
