AptRepoResource import type {AptRepoResource} from '@fuzdev/zap/schema.js'; apt_repo resource payload — a GPG key + sources list.
key_url
The URL zap fetches the GPG signing key from, on the operator's machine: https://,
or http:// to a loopback host; any other scheme is rejected by the structural gate.
It may carry a reference. The key is pinned by the blake3 of its bytes, and only
bytes that hash to the pin are installed.
type string
key_blake3?
The key's vendored pin: the blake3 of its bytes, 64 lowercase hex. Absent, the pin
is tracked in zap.lock (zap lock / zap update mint and advance it).
type string
key_path?
Where the GPG key is stored; default /usr/share/keyrings/{id}.asc. It takes no
reference (rejected when the config is read): it is written into the source line,
inside double quotes.
type string
source
The deb source line (signed-by is auto-injected from key_path). It is expanded
by the target shell inside double quotes, so $VERSION_CODENAME resolves there; it
takes no reference (rejected when the config is read).
type string
list_file?
The .list file path; default /etc/apt/sources.list.d/{id}.list. It takes no
reference (rejected when the config is read): detection reads it as declared.
type string