# Install openvi with Homebrew, apk, Nix

Portable OpenBSD vi for UNIX systems. Version 7.9.33 via Homebrew; verified 2026-06-25. Also installable with nix: nix profile install nixpkgs#openvi.

## Install

```sh
sudo av install brew:openvi
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install openvi
```

  Evidence: local Homebrew formula metadata

### Linux

- apk (92%):

```sh
sudo apk add openvi
```

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

- Nix (92%):

```sh
nix profile install nixpkgs#openvi
```

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

## Package facts

- **Package key:** brew:openvi
- **Package manager:** Homebrew
- **Version:** 7.9.33
- **Source summary:** Portable OpenBSD vi for UNIX systems
- **Homepage:** <https://github.com/johnsonjh/OpenVi>
- **Repository:** <https://github.com/johnsonjh/OpenVi>
- **Last updated:** 2026-06-25T04:20:44Z
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- oex (alias)
- ovi (alias)
- oview (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 7.9.33
## Project history and usage

OpenVi is a portable packaging of the OpenBSD vi/ex editor for Unix-like systems outside OpenBSD. Its significance is preservation and portability rather than a new editor model: it gives package users a small BSD-licensed vi derived from OpenBSD base-system code.

### Project history

The OpenVi README describes the project as a fork of the vi/ex editor included with OpenBSD. That editor descends from nvi 1.79, the Berkeley ex/vi reimplementation associated with Keith Bostic, Sven Verdoolaege, and other CSRG contributors, and nvi itself traces back through Steve Kirkendall's Elvis editor.

OpenVi follows the common OpenBSD-portable pattern: take audited base-system code, add portability glue, and make it build on other Unix systems. Its README emphasizes readable code, secure C library idioms such as strlcpy, snprintf, mkstemp, and pledge where available, and a permissive BSD/ISC licensing mix.

### Adoption history

OpenVi's adoption footprint is niche. It is packaged by Homebrew, Alpine, and Nix for users who want OpenBSD's vi behavior without installing OpenBSD, but it does not appear to be a general editor ecosystem on the scale of Vim, Neovim, or nvi2.

Its most natural audience is package minimalists, BSD users working on non-BSD hosts, and developers who want a small vi with OpenBSD ancestry rather than plugin systems, scripting runtimes, or GUI layers.

### How it is used

The package installs ovi, oex, and oview so users can edit files, run ex commands, and inspect files with a vi-family tool. It is useful in lightweight shell environments, recovery setups, containers, and systems where a traditional vi is wanted with few moving parts.

### Why package nerds care

OpenVi is interesting because it packages a lineage rather than a feature race: Berkeley vi to nvi to OpenBSD vi to a portable downstream. For package nerds, that makes it a compact case study in base-system code being exported into package-manager space.

### Timeline

- 1996: nvi 1.79 becomes the ancestor named by the OpenVi README for OpenBSD vi.
- 2020s: OpenVi is distributed as a portable OpenBSD vi for Unix-like systems and appears in package managers including Homebrew, Alpine, and Nix.
- 2026: Homebrew packages OpenVi 7.7.32 with ovi, oex, and oview.

### Related projects

- OpenVi is related to OpenBSD vi, nvi, nvi2, Elvis, Vim, Neovim, and other small Unix editor ports that preserve traditional ex/vi behavior.

### Sources

- <https://formulae.brew.sh/formula/openvi>
- <https://github.com/johnsonjh/OpenVi>
- <https://github.com/lacamera/nvi>
- <https://man.openbsd.org/vi>
- source_facts.brew:openvi


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Other Package-Manager Records

- Nix - openvi: normalized package name match | nixpkgs package indexes: pkgs/by-name/op/openvi/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- apk - openvi - 7.9.33-r0: normalized package name match | Alpine Linux edge package indexes: openvi from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | OpenVi is a fork of the vi / ex editor included with OpenBSD | https://github.com/johnsonjh/OpenVi
- apk - openvi-doc - 7.9.33-r0: normalized package name match | Alpine Linux edge package indexes: openvi-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | OpenVi is a fork of the vi / ex editor included with OpenBSD (documentation) | https://github.com/johnsonjh/OpenVi


## Combined YAML source

View the package source record on GitHub. [combined/openvi.yml](https://github.com/mxcl/pkgdb/blob/main/combined/openvi.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
