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

Convert pixel information into colored ASCII art. Version 0.99.beta20 via Homebrew; verified from local package data. Also installable with debian: sudo apt install caca-utils.

## Install

```sh
sudo av install brew:libcaca
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install libcaca
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install libcaca
```

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

### Linux

- apk (92%):

```sh
sudo apk add libcaca
```

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

- dnf (92%):

```sh
sudo dnf install libcaca
```

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

- Nix (92%):

```sh
nix profile install nixpkgs#libcaca
```

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

- pacman (92%):

```sh
sudo pacman -S libcaca
```

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

- Debian apt (92%):

```sh
sudo apt install caca-utils
```

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

- zypper (92%):

```sh
sudo zypper install caca-utils
```

  Evidence: openSUSE Tumbleweed package metadata: caca-utils from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst

## Package facts

- **Package key:** brew:libcaca
- **Package manager:** Homebrew
- **Version:** 0.99.beta20
- **Source summary:** Convert pixel information into colored ASCII art
- **Homepage:** <http://caca.zoy.org/wiki/libcaca>
- **Repository:** <https://github.com/cacalabs/libcaca>
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- caca-config (alias)
- cacaclock (alias)
- cacademo (alias)
- cacafire (alias)
- cacaplay (alias)
- cacaserver (alias)
- cacaview (alias)
- img2txt (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 0.99.beta20
## Project history and usage

libcaca is the Colour ASCII Art Library, a terminal/media library and utility suite for rendering images, demos, and animations as colored text.

### Project history

The NEWS file starts with a 0.1 release that already had S-Lang, ncurses, and conio drivers plus primitive drawing routines. Subsequent early releases added 256 color pairs, mouse support, BMP loading, image viewing through cacaview, antialiasing, dithering controls, alpha handling, and the cacafire demo.

The 0.99 beta line expanded libcaca from a funny terminal renderer into a surprisingly broad text-graphics toolkit. The 0.99.beta1 notes list a switch to the WTFPL, a split into libcucul and libcaca, Unicode and TrueColor support, Floyd-Steinberg dithering, gamma correction, export formats including HTML, IRC, ANSI, SVG, PostScript, and TGA, OpenGL output, a telnet server, and image-to-IRC tooling. The 0.99.beta15 notes say libcucul was merged back into libcaca for clarity.

### Adoption history

libcaca became widely packaged because it is both a library and a memorable collection of terminal demos and converters. Distribution packages often expose caca-utils commands such as cacaview, img2txt, cacafire, cacademo, and cacaplay.

### How it is used

Developers can link against libcaca through pkg-config, while end users use tools such as img2txt and cacaview to convert or view pixel images in terminals. The README documents optional output backends including ncurses, S-Lang, conio, X11, OpenGL, Win32, and a network server.

### Why package nerds care

libcaca is package-index folklore: useful enough to ship everywhere, unserious enough to be remembered, and technically richer than the joke suggests. Its presence in package managers marks the long Unix tradition of terminal graphics, demos, and image conversion tools.

### Timeline

- 0.1: Initial release with S-Lang, ncurses, conio drivers, and basic drawing primitives.
- 0.99.beta1: Switched to WTFPL, split libcucul from libcaca, and added Unicode, TrueColor, dithering, exporters, OpenGL, cacaserver, and img2irc.
- 2008-09-27: v0.99.beta14 and v0.99.beta15 tags were published on GitHub.
- 2010-02-08: v0.99.beta17 tag was published on GitHub.
- 2012-04-06: v0.99.beta18 tag was published on GitHub.
- 2013-09-16: v0.99.beta19 tag was published on GitHub.
- 2021-10-19: v0.99.beta20 release added IPv6 support in cacaserver and memory-safety fixes.

### Related projects

- Related projects and concepts include aalib-style text rendering, FIGlet and TOIlet fonts, ncurses, S-Lang, Imlib2-backed image viewing, OpenGL text output, and terminal demo programs such as cacafire.

### Sources

- <http://caca.zoy.org/wiki/libcaca>
- <https://formulae.brew.sh/formula/libcaca>
- <https://github.com/cacalabs/libcaca>
- <https://github.com/cacalabs/libcaca/releases>
- <https://github.com/cacalabs/libcaca/tags>
- <https://raw.githubusercontent.com/cacalabs/libcaca/main/NEWS>
- <https://raw.githubusercontent.com/cacalabs/libcaca/main/README>


## Security Notes

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

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

## Other Package-Manager Records

- Debian apt - caca-utils - 0.99.beta20-5+deb13u1: normalized package name match | Debian stable package indexes: caca-utils from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | text mode graphics utilities | http://caca.zoy.org/wiki/libcaca
- Debian apt - libcaca-dev - 0.99.beta20-5+deb13u1: normalized package name match | Debian stable package indexes: libcaca-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | development files for libcaca | http://caca.zoy.org/wiki/libcaca
- Debian apt - libcaca0 - 0.99.beta20-5+deb13u1: normalized package name match | Debian stable package indexes: libcaca0 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | colour ASCII art library | http://caca.zoy.org/wiki/libcaca
- Nix - libcaca: normalized package name match | nixpkgs package indexes: pkgs/by-name/li/libcaca/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - caca-utils - 0.99.beta20-4build2: normalized package name match | Ubuntu 24.04 LTS package indexes: caca-utils from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | text mode graphics utilities | http://caca.zoy.org/wiki/libcaca
- Ubuntu apt - libcaca-dev - 0.99.beta20-4build2: normalized package name match | Ubuntu 24.04 LTS package indexes: libcaca-dev from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | development files for libcaca | http://caca.zoy.org/wiki/libcaca
- Ubuntu apt - libcaca0 - 0.99.beta20-4build2: normalized package name match | Ubuntu 24.04 LTS package indexes: libcaca0 from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | colour ASCII art library | http://caca.zoy.org/wiki/libcaca
- apk - libcaca - 0.99_beta20-r5: normalized package name match | Alpine Linux edge package indexes: libcaca from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | graphics library that outputs text instead of pixels | http://caca.zoy.org/wiki/libcaca
- apk - libcaca-apps - 0.99_beta20-r5: normalized package name match | Alpine Linux edge package indexes: libcaca-apps from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | graphics library that outputs text instead of pixels | http://caca.zoy.org/wiki/libcaca
- apk - libcaca-dev - 0.99_beta20-r5: normalized package name match | Alpine Linux edge package indexes: libcaca-dev from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | graphics library that outputs text instead of pixels (development files) | http://caca.zoy.org/wiki/libcaca
- apk - libcaca-doc - 0.99_beta20-r5: normalized package name match | Alpine Linux edge package indexes: libcaca-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | graphics library that outputs text instead of pixels (documentation) | http://caca.zoy.org/wiki/libcaca
- apk - libcaca-static - 0.99_beta20-r5: normalized package name match | Alpine Linux edge package indexes: libcaca-static from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | graphics library that outputs text instead of pixels (static library) | http://caca.zoy.org/wiki/libcaca
- apk - py3-libcaca - 0.99_beta20-r5: normalized package name match | Alpine Linux edge package indexes: py3-libcaca from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | graphics library that outputs text instead of pixels (python bindings) | http://caca.zoy.org/wiki/libcaca
- apk - py3-libcaca-pyc - 0.99_beta20-r5: normalized package name match | Alpine Linux edge package indexes: py3-libcaca-pyc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Precompiled Python bytecode for py3-libcaca | http://caca.zoy.org/wiki/libcaca
- dnf - caca-utils - 0.99-0.86.beta20.fc45: normalized package name match | Fedora Rawhide package metadata: caca-utils from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Colour AsCii Art Text mode graphics utilities based on libcaca | http://caca.zoy.org/wiki/libcaca
- dnf - libcaca - 0.99-0.86.beta20.fc45: normalized package name match | Fedora Rawhide package metadata: libcaca from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Library for Colour AsCii Art, text mode graphics | http://caca.zoy.org/wiki/libcaca


## Combined YAML source

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