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

Apjanke's fork of the classic cowsay project. Version 3.8.4 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:cowsay
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install cowsay
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install cowsay
```

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

### Linux

- apk (92%):

```sh
sudo apk add cowsay
```

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

- Debian apt (92%):

```sh
sudo apt install cowsay
```

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

- dnf (92%):

```sh
sudo dnf install cowsay
```

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

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

- pacman (92%):

```sh
sudo pacman -S cowsay
```

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

- zypper (92%):

```sh
sudo zypper install cowsay
```

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

### Windows

- Scoop (92%):

```sh
scoop install main/cowsay
```

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

## Package facts

- **Package key:** brew:cowsay
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/cowsay>
- **Version:** 3.8.4
- **Source summary:** Apjanke's fork of the classic cowsay project
- **Homepage:** <https://cowsay.diamonds>
- **Repository:** <https://github.com/cowsay-org/cowsay>
- **Upstream docs:** <https://github.com/cowsay-org/cowsay#readme>
- **License:** GPL-3.0-only
- **Source archive:** <https://github.com/cowsay-org/cowsay/archive/refs/tags/v3.8.4.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- cowsay (cli)
- cowthink (cli)
- cowsay (alias)
- cowthink (alias)

## Install behavior

- Post-install hook: not defined
- Bottle: available on all

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 3.8.4
- Local data: ok
- Upstream repository: https://github.com/cowsay-org/cowsay
- Upstream latest detected: v3.8.4 (current)
- info: No package-manager update timestamp was available.
## Project history and usage

Cowsay is a Perl terminal novelty program that prints a message in a speech balloon next to an ASCII cow. Its official maintained fork describes it as a small, deliberately silly Unix-style program in the spirit of figlet.

### Project history

The current cowsay-org project preserves Tony Monroe's original Cowsay. The project README says Monroe first released Cowsay in 1999, after using it privately for some time. Early versions evolved from one cow and a fixed message template into arbitrary messages, multiple cowfiles, figlet support, and a Perl 5 rewrite.

In 2016, Monroe published a final 3.04 version on GitHub and indicated that he was no longer interested in maintaining it. Andrew Janke later created the cowsay-org fork to provide maintenance, hosting, deployment support, random cow selection, and pluggable third-party cow collections.

### Adoption history

Cowsay became a familiar package-manager fixture because it is tiny, scriptable, harmless, and visually distinctive. The Homebrew formula data in this batch lists it across Homebrew, Debian, Ubuntu, Fedora, Arch, Alpine, MacPorts, Nix, Scoop, and openSUSE-style packaging, reflecting its broad life as a demonstration, shell-customization, and terminal-joke package.

### How it is used

Typical use is as a command-line filter or generator: users run cowsay or cowthink with a message, often in login banners, demos, shell pipelines, CI jokes, or examples that need recognizable terminal output without real domain complexity.

### Why package nerds care

For package maintainers, Cowsay is a classic low-risk novelty package: it exercises Perl script installation, data-file handling for cowfiles, manpage-style documentation, and cross-platform packaging while remaining easy to test by invoking a single executable.

### Timeline

- 1999: Tony Monroe first released Cowsay publicly.
- 2016: Monroe published a final 3.04 version on GitHub for others to use.
- 2016 onward: Andrew Janke's cowsay-org fork provided ongoing maintenance and modern hosting.

### Related projects

- The README explicitly compares Cowsay's spirit to figlet, and points to third-party cowfile collections plus cowsay-org's cows-offensive collection for historical cowfiles kept outside the main distribution.

### Sources

- <https://github.com/cowsay-org/cowsay#readme>


## Security Notes

narrow executable package without higher-risk signals.

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

## Source Database Details

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

## Other Package-Manager Records

- Debian apt - cowsay - 3.03+dfsg2-8: normalized package name match | Debian stable package indexes: cowsay from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | configurable talking cow | https://web.archive.org/web/20120527202447/http://www.nog.net/~tony/warez/cowsay.shtml
- Debian apt - cowsay-off - 3.03+dfsg2-8: normalized package name match | Debian stable package indexes: cowsay-off from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | configurable talking cow (offensive cows) | https://web.archive.org/web/20120527202447/http://www.nog.net/~tony/warez/cowsay.shtml
- Nix - cowsay: normalized package name match | nixpkgs package indexes: pkgs/by-name/co/cowsay/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - cowsay - 3.03+dfsg2-8: normalized package name match | Ubuntu 24.04 LTS package indexes: cowsay from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | configurable talking cow | https://web.archive.org/web/20120527202447/http://www.nog.net/~tony/warez/cowsay.shtml
- Ubuntu apt - cowsay-off - 3.03+dfsg2-8: normalized package name match | Ubuntu 24.04 LTS package indexes: cowsay-off from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | configurable talking cow (offensive cows) | https://web.archive.org/web/20120527202447/http://www.nog.net/~tony/warez/cowsay.shtml
- apk - cowsay - 3.04-r2: normalized package name match | Alpine Linux edge package indexes: cowsay from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | Configurable talking cow (and a few other creatures) | https://github.com/tnalpgge/rank-amateur-cowsay
- apk - cowsay-doc - 3.04-r2: normalized package name match | Alpine Linux edge package indexes: cowsay-doc from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | Configurable talking cow (and a few other creatures) (documentation) | https://github.com/tnalpgge/rank-amateur-cowsay
- dnf - cowsay - 3.8.4-5.fc44: normalized package name match | Fedora Rawhide package metadata: cowsay from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Configurable speaking/thinking cow | https://github.com/cowsay-org/cowsay
- pacman - cowsay - 3.8.4-1: normalized package name match | Arch Linux sync databases: cowsay from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Configurable talking cow (and a bit more) | https://cowsay.diamonds
- zypper - cowsay - 3.8.4-1.3: normalized package name match | openSUSE Tumbleweed package metadata: cowsay from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Configurable talking cow (and some other creatures) | https://cowsay.diamonds/
- MacPorts - cowsay: normalized package name match | MacPorts ports tree: textproc/cowsay/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Scoop - main/cowsay: normalized package name match | Scoop official bucket manifest trees: bucket/cowsay.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1


## Related links

- [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.
- [Game and emulation packages](https://www.automicvault.com/pkg/game-emulation-tools/) - Matched game or emulation metadata.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [tractorgen](https://www.automicvault.com/pkg/brew/tractorgen/) - Shares av.db curated category or tags: ascii-art, cli, games, terminal.
- [asciiquarium](https://www.automicvault.com/pkg/brew/asciiquarium/) - Shares av.db curated category or tags: ascii-art, cli, games, perl, terminal.
- [avanor](https://www.automicvault.com/pkg/brew/avanor/) - Shares av.db curated category or tags: cli, games, terminal.
- [brogue](https://www.automicvault.com/pkg/brew/brogue/) - Shares av.db curated category or tags: cli, games, terminal.
- [dmagnetic](https://www.automicvault.com/pkg/brew/dmagnetic/) - Shares av.db curated category or tags: cli, games, terminal.
- [fortune](https://www.automicvault.com/pkg/brew/fortune/) - Shares av.db curated category or tags: cli, games, terminal.
- [gittype](https://www.automicvault.com/pkg/brew/gittype/) - Shares av.db curated category or tags: cli, games, terminal.
- [gpcslots2](https://www.automicvault.com/pkg/brew/gpcslots2/) - Shares av.db curated category or tags: cli, games, terminal.
- [cowsay](https://www.automicvault.com/pkg/npm/cowsay/) - Same normalized package name appears in another local ecosystem. Shared terms: ascii, cowsay, cowthink.
- [cowsay](https://www.automicvault.com/pkg/npm/cowsay/) - Same normalized package name in another local ecosystem.

## Combined YAML source

View the package source record on GitHub. [combined/cowsay.yml](https://github.com/automic-vault/db/blob/main/combined/cowsay.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
