# Install dhall with Homebrew, apt, dnf, Nix, pacman, scoop

Interpreter for the Dhall language. Version 1.42.3 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:dhall
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install dhall
```

  Evidence: local Homebrew formula metadata

### Linux

- Debian apt (92%):

```sh
sudo apt install dhall
```

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

- dnf (92%):

```sh
sudo dnf install dhall
```

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

  Evidence: nixpkgs package indexes: dhall from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix

- pacman (92%):

```sh
sudo pacman -S dhall
```

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

### Windows

- Scoop (92%):

```sh
scoop install main/dhall
```

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

## Package facts

- **Package key:** brew:dhall
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/dhall>
- **Version:** 1.42.3
- **Source summary:** Interpreter for the Dhall language
- **Homepage:** <https://dhall-lang.org/>
- **Repository:** <https://github.com/dhall-lang/dhall-haskell>
- **Upstream docs:** <https://dhall-lang.org/>
- **License:** BSD-3-Clause
- **Source archive:** <https://hackage.haskell.org/package/dhall-1.42.3/dhall-1.42.3.tar.gz>
- **Generated:** 2026-07-10T07:20:53+00:00

## Executables

- dhall (cli)
- dhall (alias)

## Dependencies

- gmp

## Build dependencies

- cabal-install
- ghc

## Uses from macOS

- libffi
- 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-10
- Package-manager version: 1.42.3
- Local data: ok
- Upstream repository: https://dhall-lang.org/
- info: No package-manager update timestamp was available.
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

Dhall is a typed, terminating configuration language with a command-line interpreter. Its package-manager identity is unusual: it is a language runtime shipped like a CLI utility, most often installed to make large configuration files safer, less repetitive, and easier to generate.

### Project history

The first Hackage dhall 1.0.0 package metadata names Gabriel Gonzalez as author, carries 2016 copyright, and describes Dhall as a configuration language guaranteed to terminate. The dhall-lang/dhall-haskell repository was created in 2016 and remains the official Haskell implementation.

### Adoption history

Official Dhall documentation frames the language around programmable configuration files: reducing repetition while keeping stronger safety properties than general-purpose scripting languages. The official production-use page records adoption by integrations and companies using Dhall for package sets, server configuration, Kubernetes, CI, CloudFormation, and product configuration models.

### How it is used

The dhall executable parses, type-checks, evaluates, and pretty-prints Dhall expressions. In practice users combine it with converters such as dhall-to-json and dhall-to-yaml when a target tool still expects JSON or YAML.

### Why package nerds care

Dhall matters to package nerds because it sits at the boundary between programming languages and boring config files. It offers imports, functions, types, normalization, and hashes while intentionally avoiding unrestricted effects and Turing completeness, so package maintainers can ship configuration logic without shipping a general scripting environment.

### Timeline

- 2016: dhall 1.0.0 is published on Hackage as a terminating configuration language.
- 2016: dhall-lang/dhall-haskell is created as the Haskell implementation repository.
- 2017: dhall-lang/dhall-lang is created for language documentation and specification material.
- 2026: Official documentation continues to organize Dhall around tutorials, how-tos, references, and production use.

### Related projects

- dhall-yaml converts Dhall expressions to and from YAML.
- dhall-json provides JSON conversion tooling.
- dhall-lang/dhall-lang hosts the language documentation and specification material.

### Sources

- <https://hackage.haskell.org/package/dhall-1.0.0>
- <https://hackage.haskell.org/package/dhall-1.0.0/dhall.cabal>
- <https://api.github.com/repos/dhall-lang/dhall-haskell>
- <https://api.github.com/repos/dhall-lang/dhall-lang>
- <https://docs.dhall-lang.org/discussions/Programmable-configuration-files.html>
- <https://docs.dhall-lang.org/discussions/Safety-guarantees.html>
- <https://docs.dhall-lang.org/discussions/Dhall-in-production.html>


## Security Notes

generalized runtime or code generation signal.

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

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** dhall
- **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 - dhall - 1.42.1-1+b1: normalized package name match | Debian stable package indexes: dhall from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | configuration language guaranteed to terminate
- Nix - dhall: normalized package name match | nixpkgs package indexes: dhall from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
- Ubuntu apt - dhall - 1.41.2-1: normalized package name match | Ubuntu 24.04 LTS package indexes: dhall from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | configuration language guaranteed to terminate
- dnf - dhall - 1.42.3-1.fc44: normalized package name match | Fedora Rawhide package metadata: dhall from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | A configuration language guaranteed to terminate | https://hackage.haskell.org/package/dhall
- dnf - dhall-common - 1.42.3-1.fc44: normalized package name match | Fedora Rawhide package metadata: dhall-common from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | dhall common files | https://hackage.haskell.org/package/dhall
- dnf - ghc-dhall - 1.42.3-1.fc44: normalized package name match | Fedora Rawhide package metadata: ghc-dhall from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Haskell dhall library | https://hackage.haskell.org/package/dhall
- dnf - ghc-dhall-devel - 1.42.3-1.fc44: normalized package name match | Fedora Rawhide package metadata: ghc-dhall-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Haskell dhall library development files | https://hackage.haskell.org/package/dhall
- dnf - ghc-dhall-doc - 1.42.3-1.fc44: normalized package name match | Fedora Rawhide package metadata: ghc-dhall-doc from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Haskell dhall library documentation | https://hackage.haskell.org/package/dhall
- dnf - ghc-dhall-prof - 1.42.3-1.fc44: normalized package name match | Fedora Rawhide package metadata: ghc-dhall-prof from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Haskell dhall profiling library | https://hackage.haskell.org/package/dhall
- pacman - dhall - 1.42.3-81: normalized package name match | Arch Linux sync databases: dhall from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | A configuration language guaranteed to terminate | https://dhall-lang.org
- Scoop - main/dhall: normalized package name match | Scoop official bucket manifest trees: bucket/dhall.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1


## 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.
- [Language runtime packages](https://www.automicvault.com/pkg/language-runtime-packages/) - Matched language runtime, compiler, or interpreter metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [cabal-install](https://www.automicvault.com/pkg/brew/cabal-install/) - Build dependency declared by Homebrew.
- [ghc](https://www.automicvault.com/pkg/brew/ghc/) - Build dependency declared by Homebrew.
- [nickel](https://www.automicvault.com/pkg/brew/nickel/) - Shares av.db curated category or tags: cli, configuration-language, language-runtime.
- [abcl](https://www.automicvault.com/pkg/brew/abcl/) - Shares av.db curated category or tags: cli, interpreter, language-runtime.
- [algol68g](https://www.automicvault.com/pkg/brew/algol68g/) - Shares av.db curated category or tags: cli, interpreter, language-runtime.
- [arturo](https://www.automicvault.com/pkg/brew/arturo/) - Shares av.db curated category or tags: cli, interpreter, language-runtime.
- [bas55](https://www.automicvault.com/pkg/brew/bas55/) - Shares av.db curated category or tags: cli, interpreter, language-runtime.
- [befunge93](https://www.automicvault.com/pkg/brew/befunge93/) - Shares av.db curated category or tags: cli, interpreter, language-runtime.
- [bic](https://www.automicvault.com/pkg/brew/bic/) - Shares av.db curated category or tags: cli, interpreter, language-runtime.

## Combined YAML source

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