# Install joe with Homebrew, apk, apt, dnf, MacPorts, Nix, pacman, scoop, zypper

Full featured terminal-based screen editor. Version 4.8 via Homebrew; verified 2026-04-23.

## Install

```sh
sudo av install brew:joe
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install joe
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install joe
```

  Evidence: MacPorts ports tree: editors/joe/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- apk (92%):

```sh
sudo apk add joe
```

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

- Debian apt (92%):

```sh
sudo apt install joe
```

  Evidence: Debian stable package indexes: joe from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- dnf (92%):

```sh
sudo dnf install joe
```

  Evidence: Fedora Rawhide package metadata: joe 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#joe
```

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

- pacman (92%):

```sh
sudo pacman -S joe
```

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

- zypper (92%):

```sh
sudo zypper install joe
```

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

### Windows

- Scoop (92%):

```sh
scoop install extras/joe
```

  Evidence: Scoop official bucket manifest trees: bucket/joe.json from https://api.github.com/repos/ScoopInstaller/Extras/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:joe
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/joe>
- **Version:** 4.8
- **Source summary:** Full featured terminal-based screen editor
- **Homepage:** <https://joe-editor.sourceforge.io/>
- **Repository:** <http://hg.code.sf.net/p/joe-editor/mercurial>
- **Upstream docs:** <https://joe-editor.sourceforge.io/>
- **License:** GPL-1.0-or-later
- **Source archive:** <https://downloads.sourceforge.net/project/joe-editor/JOE%20sources/joe-4.8/joe-4.8.tar.gz>
- **Last updated:** 2026-04-23T17:59:35Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- jmacs (cli)
- joe (cli)
- jpico (cli)
- jstar (cli)
- rjoe (cli)
- jmacs (alias)
- joe (alias)
- jpico (alias)
- jstar (alias)
- rjoe (alias)

## 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: 4.8
- Package-manager updated: 2026-04-23
- Local data: ok
- Upstream repository: https://joe-editor.sourceforge.io/
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

JOE, or Joe's Own Editor, is a long-running terminal text editor for Unix-like systems. Its official site says it has been around since 1988, blends WordStar-style editing with some EMACS-like features, is written in C, and uses only libc plus terminal-capability data rather than curses for screen control.

### Project history

Joseph H. Allen's official history traces JOE back to an editor called e written in 1988 for a local BBS system on an Encore Multimax at Worcester Polytechnic Institute. It was released on alt.sources around 1989 or 1990, renamed j after users objected that e collided with vi usage, and then named JOE after someone suggested Joe's Own Editor.

The history page describes joe1.0 as a rewrite around linked lists of gap buffers, termcap support, and the joerc key-binding file. Later 2.x releases included an MS-DOS port, and 2.8 became the last Allen release before a long pause.

Development resumed through SourceForge around joe2.9, when Marek Grac and Vitezslav Samel reformatted the code, put it under source control, and moved it to a standard configure build. Allen returned for joe3.0 in April 2004, adding syntax highlighting and UTF-8 support. The 4.x line added color schemes, Unicode updates, terminal behavior improvements, and many bug fixes.

### Adoption history

JOE became durable because it is small, familiar to users of WordStar-like keybindings, and practical on recovery systems. The official site says it comes standard with many Linux distributions, and package metadata lists it across Homebrew, Debian-family, Fedora, MacPorts, Nix, Arch, Scoop, and openSUSE-style ecosystems.

### How it is used

Users invoke joe directly or through variants such as jmacs, jstar, jpico, and rjoe. The official site explains that the invoked name selects the matching rc file, and users can customize behavior by copying the system joerc into the home directory.

### Why package nerds care

JOE is package-nerd significant because it is one of the classic rescue-shell editors: small C code, no heavy dependency stack, familiar full-screen editing, and decades of packaging history. It represents the side of Unix editor culture that prefers approachability and WordStar muscle memory over vi or Emacs orthodoxy.

### Timeline

- 1988: First ancestor editor e written for a local BBS on an Encore Multimax.
- 1989: e released publicly on alt.sources around 1989 or 1990.
- 1990s: j renamed to JOE, joe1.0 rewrites the editor around gap-buffer structures and joerc key bindings.
- 1995: joe2.8 becomes the last Allen release before a long pause.
- 2001: SourceForge-era maintainers revive the project around joe2.9.
- 2004: joe3.0 adds syntax highlighting and UTF-8 support.
- 2026: JOE 4.8 source release appears on the official site.

### Related projects

- WordStar is the major keybinding and feel influence named by the official site.
- GNU Emacs is the other named influence, especially for powerful editing features.
- jmacs, jstar, jpico, and rjoe are installed JOE variants that emulate other editor styles or restrict editing.

### Sources

- The official changelog supplies 4.x feature evolution.
- The official history page supplies the origin story, renaming path, 2.x pause, SourceForge revival, and 3.0 return.
- The official home page supplies the distribution, dependency, variant, and editor-culture positioning.


## Security Notes

narrow executable package without higher-risk signals.

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


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: ~/.joerc, /etc/joe/joerc, /etc/joe/ftyperc
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** joe
- **Version Scheme:** 0
- **Revision:** 0
- **Conflicts With:** jupp
- **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 - joe - 4.6-2: normalized package name match | Debian stable package indexes: joe from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | user friendly full screen text editor | http://joe-editor.sourceforge.net/
- Nix - joe: normalized package name match | nixpkgs package indexes: pkgs/by-name/jo/joe/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - joe - 4.6-1.2: normalized package name match | Ubuntu 24.04 LTS package indexes: joe from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | user friendly full screen text editor | http://joe-editor.sourceforge.net/
- apk - joe - 4.8-r0: normalized package name match | Alpine Linux edge package indexes: joe from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Full featured terminal-based screen editor | https://joe-editor.sourceforge.net/
- apk - joe-doc - 4.8-r0: normalized package name match | Alpine Linux edge package indexes: joe-doc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Full featured terminal-based screen editor (documentation) | https://joe-editor.sourceforge.net/
- dnf - joe - 4.8-1.fc45: normalized package name match | Fedora Rawhide package metadata: joe from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | An easy to use, modeless text editor | http://sourceforge.net/projects/joe-editor/
- pacman - joe - 4.8-1: normalized package name match | Arch Linux sync databases: joe from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Classic text editor | https://joe-editor.sourceforge.io/
- zypper - joe - 4.6-3.6: normalized package name match | openSUSE Tumbleweed package metadata: joe from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | A Text Editor | http://sourceforge.net/projects/joe-editor
- MacPorts - joe: normalized package name match | MacPorts ports tree: editors/joe/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Scoop - extras/joe: normalized package name match | Scoop official bucket manifest trees: bucket/joe.json from https://api.github.com/repos/ScoopInstaller/Extras/git/trees/master?recursive=1


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Productivity CLI packages](https://www.automicvault.com/pkg/productivity-cli-packages/) - Matched curated productivity category metadata from av.db.
- [amp](https://www.automicvault.com/pkg/brew/amp/) - Shares av.db curated category or tags: cli, productivity, terminal, text-editor.
- [jupp](https://www.automicvault.com/pkg/brew/jupp/) - Shares av.db curated category or tags: cli, productivity, terminal, text-editor.
- [kibi](https://www.automicvault.com/pkg/brew/kibi/) - Shares av.db curated category or tags: cli, productivity, terminal, text-editor.
- [moe](https://www.automicvault.com/pkg/brew/moe/) - Shares av.db curated category or tags: cli, console, productivity, text-editor.
- [zile](https://www.automicvault.com/pkg/brew/zile/) - Shares av.db curated category or tags: c, cli, productivity, text-editor.
- [emacs](https://www.automicvault.com/pkg/brew/emacs/) - Shares av.db curated category or tags: cli, productivity, text-editor.
- [enter-tex](https://www.automicvault.com/pkg/brew/enter-tex/) - Shares av.db curated category or tags: cli, productivity, text-editor.
- [fresh-editor](https://www.automicvault.com/pkg/brew/fresh-editor/) - Shares av.db curated category or tags: cli, productivity, text-editor.

## Combined YAML source

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


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- 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
