No description
Find a file
Till Wegmueller 76fead4443 Initial oci-client: OCI Distribution Spec client library
Extracted from the installer monorepo at
https://github.com/Toasterson/installer (under ociclient/).

Hand-rolled Rust client for the OCI Distribution Spec — fetches
manifests, blobs, and config documents from container registries.
Used by machined to pull install images and by installadm for image
inspection.
2026-04-28 16:45:37 +02:00
src Initial oci-client: OCI Distribution Spec client library 2026-04-28 16:45:37 +02:00
.gitignore Initial commit 2026-04-28 14:42:19 +00:00
Cargo.lock Initial oci-client: OCI Distribution Spec client library 2026-04-28 16:45:37 +02:00
Cargo.toml Initial oci-client: OCI Distribution Spec client library 2026-04-28 16:45:37 +02:00
LICENSE Initial commit 2026-04-28 14:42:19 +00:00
README.md Initial oci-client: OCI Distribution Spec client library 2026-04-28 16:45:37 +02:00

oci-client

Crate name: ociclient

A small Rust client for the OCI Distribution Spec — pulling manifests, blobs, and config documents from container registries (and registries that masquerade as such, like the Forgejo / Gitea container registries that store custom artifact types).

It was originally written for the illumos installer toolchain, where it fetches OS images from registries during install, but has no installer-specific code. It is consumed today by:

  • machined — pulls the install image during install
  • installadm — inspects images, downloads release artifacts

Status

v0.1 — minimal feature surface, hand-rolled. No async streaming yet (downloads buffer to memory). API may change as it picks up authentication adapters and chunked download support.

Add it

[dependencies]
ociclient = { git = "https://code.aopc.cloud/CloudNebulaProject/oci-client" }

License

MPL-2.0.