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

Display user-friendly message boxes from shell scripts. Version 1.3-20260107 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:dialog
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install dialog
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install dialog
```

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

### Linux

- apk (92%):

```sh
sudo apk add dialog
```

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

- Debian apt (92%):

```sh
sudo apt install dialog
```

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

- dnf (92%):

```sh
sudo dnf install dialog
```

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

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

- pacman (92%):

```sh
sudo pacman -S dialog
```

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

- zypper (92%):

```sh
sudo zypper install dialog
```

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

## Package facts

- **Package key:** brew:dialog
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/dialog>
- **Version:** 1.3-20260107
- **Source summary:** Display user-friendly message boxes from shell scripts
- **Homepage:** <https://invisible-island.net/dialog/>
- **Upstream docs:** <https://invisible-island.net/dialog>
- **License:** LGPL-2.1-or-later
- **Source archive:** <https://invisible-mirror.net/archives/dialog/dialog-1.3-20260107.tgz>
- **Generated:** 2026-07-09T07:20:21+00:00

## Executables

- dialog (cli)
- dialog-config (cli)
- dialog (alias)
- dialog-config (alias)

## Uses from macOS

- ncurses

## 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-09
- Package-manager version: 1.3-20260107
- Local data: ok
- Upstream repository: https://invisible-island.net/dialog/
- info: No package-manager update timestamp was available.
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

dialog is the classic curses-based program for showing message boxes, menus, gauges, forms, and other text user-interface widgets from shell scripts.

### Project history

The official history traces dialog to Savio Lam's initial 0.1 release on 1993-12-17, when the program had inputbox, msgbox, and yesno options. Through 1994 and 1995, contributors added checklist, menu, textbox, color, shadows, radiolist, gauge, mouse support, and related features.

### Adoption history

dialog became part of Unix installer and system-script culture because shell scripts could ask structured questions without depending on a graphical desktop. The official history notes FreeBSD's fork and its use around sysinstall, and the project page compares related tools such as whiptail, Xdialog, gdialog, zenity, kdialog, and bsddialog.

### How it is used

The manpage describes dialog as a program that lets scripts present questions or display messages using dialog boxes. Common package-manager users install it so shell scripts can use widgets such as checklist, menu, gauge, inputbox, passwordbox, textbox, and yesno.

### Why package nerds care

dialog matters to package people because it is one of the small tools that makes source builds, installers, and distribution scripts feel interactive while still being plain shell. Its long compatibility story explains why many packages also know about whiptail and other dialog-like front ends.

### Timeline

- 1993: dialog 0.1 released by Savio Lam.
- 1994: checklist, menu, color, shadow, radiolist, and gauge-era functionality appeared across early releases and forks.
- 2001: Vincent Stemen sent patches that were folded into ongoing dialog snapshots.
- 2012: dialog 1.2-era widget coverage and compatibility history were documented on the official site.

### Related projects

- Official related and compatibility discussion covers lxdialog, Xdialog, whiptail, gdialog, zenity, kdialog, and bsddialog.

### Sources

- <https://invisible-island.net/dialog/>
- <https://invisible-island.net/dialog/dialog.html>
- <https://invisible-island.net/dialog/manpage/dialog.html>
- <https://invisible-island.net/dialog/CHANGES.html>


## Security Notes

generalized runtime or code generation signal.

- **Geiger risk:** yellow / medium
- generalized runtime or code generation signal


## 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: $DIALOGRC, ~/.dialogrc, /etc/dialogrc
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** dialog
- **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 - dialog - 1.3-20250116-1: normalized package name match | Debian stable package indexes: dialog from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Displays user-friendly dialog boxes from shell scripts | https://invisible-island.net/dialog/dialog.html
- Debian apt - libdialog-dev - 1.3-20250116-1: normalized package name match | Debian stable package indexes: libdialog-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Displays user-friendly dialog boxes -- development files | https://invisible-island.net/dialog/dialog.html
- Debian apt - libdialog15 - 1.3-20250116-1: normalized package name match | Debian stable package indexes: libdialog15 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Displays user-friendly dialog boxes -- shared library | https://invisible-island.net/dialog/dialog.html
- Nix - dialog: normalized package name match | nixpkgs package indexes: pkgs/by-name/di/dialog/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - dialog - 1.3-20240101-1: normalized package name match | Ubuntu 24.04 LTS package indexes: dialog from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Displays user-friendly dialog boxes from shell scripts | https://invisible-island.net/dialog/dialog.html
- apk - dialog - 1.3.20260107-r1: normalized package name match | Alpine Linux edge package indexes: dialog from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Script interpreter providing curses widgets | https://invisible-island.net/dialog/dialog.html
- apk - dialog-doc - 1.3.20260107-r1: normalized package name match | Alpine Linux edge package indexes: dialog-doc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Script interpreter providing curses widgets (documentation) | https://invisible-island.net/dialog/dialog.html
- apk - dialog-static - 1.3.20260107-r1: normalized package name match | Alpine Linux edge package indexes: dialog-static from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Script interpreter providing curses widgets (static library) | https://invisible-island.net/dialog/dialog.html
- dnf - dialog - 1.3-57.20250116.fc44: normalized package name match | Fedora Rawhide package metadata: dialog from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | A utility for creating TTY dialog boxes | https://invisible-island.net/dialog/dialog.html
- dnf - dialog-devel - 1.3-57.20250116.fc44: normalized package name match | Fedora Rawhide package metadata: dialog-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Development files for building applications with the dialog library | https://invisible-island.net/dialog/dialog.html
- pacman - dialog - 1:1.3_20260107-1: normalized package name match | Arch Linux sync databases: dialog from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | A tool to display dialog boxes from shell scripts | https://invisible-island.net/dialog/
- zypper - dialog - 1.3-13.3: normalized package name match | openSUSE Tumbleweed package metadata: dialog from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Menus and Input Boxes for Shell Scripts | http://invisible-island.net/dialog/
- zypper - dialog-devel - 1.3-13.3: normalized package name match | openSUSE Tumbleweed package metadata: dialog-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Menus and Input Boxes for Shell Scripts | http://invisible-island.net/dialog/
- zypper - dialog-examples - 1.3-13.3: normalized package name match | openSUSE Tumbleweed package metadata: dialog-examples from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Examples of using dialog tool | http://invisible-island.net/dialog/
- zypper - dialog-lang - 1.3-13.3: normalized package name match | openSUSE Tumbleweed package metadata: dialog-lang from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Translations for package dialog | http://invisible-island.net/dialog/
- zypper - libdialog15 - 1.3-13.3: normalized package name match | openSUSE Tumbleweed package metadata: libdialog15 from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Menus and Input Boxes for Shell Scripts | http://invisible-island.net/dialog/


## Related links

- [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.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [backupninja](https://www.automicvault.com/pkg/brew/backupninja/) - Popular package that depends on this formula.
- [bashish](https://www.automicvault.com/pkg/brew/bashish/) - Popular package that depends on this formula.
- [dzr](https://www.automicvault.com/pkg/brew/dzr/) - Popular package that depends on this formula.
- [cdk](https://www.automicvault.com/pkg/brew/cdk/) - Shares av.db curated category or tags: cli, curses, developer-tools, terminal-ui, widgets.
- [ncurses](https://www.automicvault.com/pkg/brew/ncurses/) - Shares av.db curated category or tags: cli, curses, developer-tools, terminal-ui.
- [flowrs](https://www.automicvault.com/pkg/brew/flowrs/) - Shares av.db curated category or tags: cli, developer-tools, terminal-ui.
- [gitu](https://www.automicvault.com/pkg/brew/gitu/) - Shares av.db curated category or tags: cli, developer-tools, terminal-ui.
- [gitui](https://www.automicvault.com/pkg/brew/gitui/) - Shares av.db curated category or tags: cli, developer-tools, terminal-ui.
- [jqp](https://www.automicvault.com/pkg/brew/jqp/) - Shares av.db curated category or tags: cli, developer-tools, terminal-ui.
- [nerdlog](https://www.automicvault.com/pkg/brew/nerdlog/) - Shares av.db curated category or tags: cli, developer-tools, terminal-ui.
- [newt](https://www.automicvault.com/pkg/brew/newt/) - Shares av.db curated category or tags: cli, developer-tools, terminal-ui, widgets.

## Combined YAML source

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