# Install umoci with Homebrew, apk, apt, dnf, Nix, pacman, zypper

Reference OCI implementation for creating, modifying and inspecting images. Version 0.6.0 via Homebrew; verified 2026-06-15.

## Install

```sh
sudo av install brew:umoci
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install umoci
```

  Evidence: local Homebrew formula metadata

### Linux

- apk (92%):

```sh
sudo apk add umoci
```

  Evidence: Alpine Linux edge package indexes: umoci from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz

- Debian apt (92%):

```sh
sudo apt install golang-github-opensuse-umoci-dev
```

  Evidence: Debian stable package indexes: golang-github-opensuse-umoci-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- dnf (92%):

```sh
sudo dnf install umoci
```

  Evidence: Fedora Rawhide package metadata: umoci from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#umoci
```

  Evidence: nixpkgs package indexes: pkgs/by-name/um/umoci/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- pacman (92%):

```sh
sudo pacman -S umoci
```

  Evidence: Arch Linux sync databases: umoci from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install umoci
```

  Evidence: openSUSE Tumbleweed package metadata: umoci from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

## Package facts

- **Package key:** brew:umoci
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/umoci>
- **Version:** 0.6.0
- **Source summary:** Reference OCI implementation for creating, modifying and inspecting images
- **Homepage:** <https://umo.ci>
- **Repository:** <https://github.com/opencontainers/umoci>
- **Upstream docs:** <https://umo.ci/>
- **License:** Apache-2.0
- **Source archive:** <https://github.com/opencontainers/umoci/archive/refs/tags/v0.6.0.tar.gz>
- **Last updated:** 2026-06-15T10:21:22-04:00
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- umoci (cli)
- umoci (alias)

## Dependencies

- gpgme

## Build dependencies

- go
- go-md2man

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 0.6.0
- Package-manager updated: 2026-06-15
- Local data: ok
- Upstream repository: https://github.com/opencontainers/umoci
- Upstream latest detected: v0.6.0 (current)
## Project history and usage

umoci is a low-level command-line and Go-library tool for creating, modifying, unpacking, repacking, and inspecting Open Container Initiative container images.

### Project history

The official documentation gives umoci a clear origin story: it was originally developed in 2016 by Aleksa Sarai as part of the openSUSE project. Its name expands to 'Umoci Modifies Open Containers' Images', and the project describes itself as a small, unopinionated reference implementation of the OCI image specification.

In mid-2020, umoci was donated to the Open Container Initiative as a reference implementation of the OCI image specification. The 0.4.6 changelog records the adoption and the corresponding import-path/module move from github.com/openSUSE/umoci to github.com/opencontainers/umoci.

The project retained its role as infrastructure rather than an end-user container runtime. The README and docs emphasize that umoci is meant to be a foundation for larger systems, while its Go API is useful but historically treated cautiously because it was not promised as stable.

### Adoption history

The OCI adoption made umoci part of the official container-image standards ecosystem. The project documentation explicitly says the adoption solidified it as useful 'boring container infrastructure' for larger systems.

The Homebrew input shows broad downstream packaging across apk, Homebrew, Debian/Ubuntu source packages, dnf, Nix, pacman, and zypper. That distribution pattern matches the tool's role: a specialized container-image utility useful to build systems, distro packaging, rootless-container workflows, and OCI conformance work.

### How it is used

umoci is used from a subcommand-based CLI for OCI image operations such as getting an image, unpacking, modifying, repacking, garbage collection, rootless workflows, and reference operations documented in generated man pages.

For package-focused users, the appeal is that umoci manipulates OCI image layouts directly without requiring a full Docker-style daemon. That makes it useful in scripts, package build pipelines, distro tooling, and low-level debugging of container-image contents.

### Why package nerds care

umoci is significant in the package-nerd niche because it sits at the boundary between package building and container image building: it is small enough to install as a CLI, official enough to be under the Open Containers organization, and low-level enough for reproducible or rootless image workflows.

Its 2020 move from openSUSE to Open Containers is especially important for provenance: package maintainers had to track the import-path change, while users gained an OCI-hosted reference implementation.

### Timeline

- 2016: umoci originally developed by Aleksa Sarai as part of openSUSE.
- 2020-06-24: umoci 0.4.6 changelog announces adoption by the Open Container Initiative and import-path move to github.com/opencontainers/umoci.
- 2021-04-05: umoci 0.4.7 fixes CVE-2021-29136 in unpack/raw unpack behavior.
- 2025: Release notes for 0.6.0 describe support for OCI image-spec v1.1.1 reading features and OCI runtime-spec v1.2.1 config generation.

### Related projects

- Related standards and projects include the OCI image specification, OCI runtime specification, openSUSE, Open Container Initiative governance, and larger systems built on top of OCI image layouts.

### Sources

- <https://github.com/opencontainers/umoci>
- <https://github.com/opencontainers/umoci/releases>
- <https://umo.ci/>
- <https://umo.ci/meta/changelog/>
- source_facts.package-manager


## Security Notes

broad file, network, media, or database tool signal.

- **Geiger risk:** blue / medium
- broad file, network, media, or database tool signal

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** umoci
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

- Debian apt - golang-github-opensuse-umoci-dev - 0.4.7+ds-4: normalized package name match | Debian stable package indexes: golang-github-opensuse-umoci-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | umoci development files | https://umo.ci
- Debian apt - umoci - 0.4.7+ds-4+b10: normalized package name match | Debian stable package indexes: umoci from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Open Container Images manipulation tool | https://umo.ci
- Nix - umoci: normalized package name match | nixpkgs package indexes: pkgs/by-name/um/umoci/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - golang-github-opensuse-umoci-dev - 0.4.7+ds-4: normalized package name match | Ubuntu 24.04 LTS package indexes: golang-github-opensuse-umoci-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | umoci development files | https://umo.ci
- Ubuntu apt - umoci - 0.4.7+ds-4: normalized package name match | Ubuntu 24.04 LTS package indexes: umoci from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Open Container Images manipulation tool | https://umo.ci
- apk - umoci - 0.4.7-r40: normalized package name match | Alpine Linux edge package indexes: umoci from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | umoci modifies Open Container images | https://umo.ci/
- dnf - umoci - 0.6.0-3.fc44: normalized package name match | Fedora Rawhide package metadata: umoci from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Open Container Image manipulation tool | https://umo.ci
- pacman - umoci - 0.6.0-1: normalized package name match | Arch Linux sync databases: umoci from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Umoci Modifies Open Container Images | https://umo.ci/
- zypper - umoci - 0.6.0-1.4: normalized package name match | openSUSE Tumbleweed package metadata: umoci from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Open Container Image manipulation tool | https://umo.ci


## Related links

- [Cloud CLI packages](https://www.automicvault.com/pkg/cloud-clis/) - Belongs to a cloud or infrastructure command family.
- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [gpgme](https://www.automicvault.com/pkg/brew/gpgme/) - Runtime dependency declared by Homebrew.
- [go](https://www.automicvault.com/pkg/brew/go/) - Build dependency declared by Homebrew.
- [go-md2man](https://www.automicvault.com/pkg/brew/go-md2man/) - Build dependency declared by Homebrew.
- [container](https://www.automicvault.com/pkg/brew/container/) - Shares av.db curated category or tags: cli, cloud-infrastructure, containers, oci.
- [containerd](https://www.automicvault.com/pkg/brew/containerd/) - Shares av.db curated category or tags: cli, cloud-infrastructure, containers, oci.
- [dcp](https://www.automicvault.com/pkg/brew/dcp/) - Shares av.db curated category or tags: cli, cloud-infrastructure, containers, oci.
- [oras](https://www.automicvault.com/pkg/brew/oras/) - Shares av.db curated category or tags: cli, cloud-infrastructure, containers, oci.
- [rockcraft](https://www.automicvault.com/pkg/brew/rockcraft/) - Shares av.db curated category or tags: cli, cloud-infrastructure, containers, oci.
- [skopeo](https://www.automicvault.com/pkg/brew/skopeo/) - Shares av.db curated category or tags: cli, cloud-infrastructure, containers, oci.
- [amazon-ecs-cli](https://www.automicvault.com/pkg/brew/amazon-ecs-cli/) - Shares av.db curated category or tags: cli, cloud-infrastructure, containers.
- [ansible-builder](https://www.automicvault.com/pkg/brew/ansible-builder/) - Shares av.db curated category or tags: cli, cloud-infrastructure, containers.

## Combined YAML source

View the package source record on GitHub. [combined/umoci.yml](https://github.com/automic-vault/db/blob/main/combined/umoci.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
