# Install dhall-yaml with Homebrew, Nix, pacman

Convert between Dhall and YAML. Version 1.2.12 via Homebrew; verified from local package data.

## Install

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

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install dhall-yaml
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#dhall-yaml
```

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

- pacman (92%):

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

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

## Package facts

- **Package key:** brew:dhall-yaml
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/dhall-yaml>
- **Version:** 1.2.12
- **Source summary:** Convert between Dhall and YAML
- **Homepage:** <https://github.com/dhall-lang/dhall-haskell/tree/main/dhall-yaml>
- **Repository:** <https://github.com/dhall-lang/dhall-haskell>
- **Upstream docs:** <https://github.com/dhall-lang/dhall-haskell/tree/main/dhall-yaml#readme>
- **License:** BSD-3-Clause
- **Source archive:** <https://hackage.haskell.org/package/dhall-yaml-1.2.12/dhall-yaml-1.2.12.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- dhall-to-yaml-ng (cli)
- yaml-to-dhall (cli)
- dhall-to-yaml-ng (alias)
- yaml-to-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-08
- Package-manager version: 1.2.12
- Local data: ok
- Upstream repository: https://github.com/dhall-lang/dhall-haskell
- info: No package-manager update timestamp was available.
- info: No cached GitHub release or tag data was available.
## Project history and usage

dhall-yaml is the Dhall ecosystem package for moving between typed Dhall expressions and YAML. In package-manager terms it matters because it turns Dhall from a configuration language into a practical generator for the YAML files expected by Kubernetes, CI systems, and other infrastructure tools.

### Project history

The Hackage metadata for dhall-yaml 1.0.0 identifies Gabriel Gonzalez as author, gives 2019 copyright, and describes the package as both a library and executable tooling for converting between Dhall expressions and YAML. It lives in the dhall-lang/dhall-haskell repository alongside the main Dhall implementation.

### Adoption history

dhall-yaml adoption follows Dhall's broader use as a programmable configuration format. Official Dhall documentation teaches generation of JSON and YAML, and its production-use page lists organizations using dhall-to-yaml in infrastructure and application configuration workflows.

### How it is used

The package exposes the dhall-to-yaml-ng executable for Dhall-to-YAML conversion and yaml-to-dhall for the reverse direction, with library modules for Haskell callers. It is usually installed as a companion to Dhall when a downstream system still consumes YAML.

### Why package nerds care

For package nerds, dhall-yaml is the adapter layer that lets Dhall compete with hand-written YAML without requiring the target ecosystem to understand Dhall. It is small, specialized, and valuable mostly because YAML is everywhere and typed configuration is not.

### Timeline

- 2019: dhall-yaml 1.0.0 appears on Hackage with dhall-to-yaml-ng and yaml-to-dhall executables.
- 2026: Official Dhall documentation still presents JSON/YAML generation as a core getting-started workflow.

### Related projects

- dhall provides the core language and interpreter.
- dhall-json provides related JSON conversion tooling in the same ecosystem.

### Sources

- <https://hackage.haskell.org/package/dhall-yaml-1.0.0>
- <https://hackage.haskell.org/package/dhall-yaml-1.0.0/dhall-yaml.cabal>
- <https://docs.dhall-lang.org/tutorials/Getting-started_Generate-JSON-or-YAML.html>
- <https://docs.dhall-lang.org/discussions/Dhall-in-production.html>
- <https://github.com/dhall-lang/dhall-haskell/tree/main/dhall-yaml>


## 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:** dhall-yaml
- **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

- Nix - dhall-yaml: normalized package name match | nixpkgs package indexes: dhall-yaml from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
- pacman - dhall-yaml - 1.2.12-213: normalized package name match | Arch Linux sync databases: dhall-yaml from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Convert between Dhall and YAML | https://github.com/dhall-lang/dhall-haskell/tree/master/dhall-yaml


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [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.
- [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.
- [dhall-bash](https://www.automicvault.com/pkg/brew/dhall-bash/) - Shares the same upstream source repository.
- [dhall-json](https://www.automicvault.com/pkg/brew/dhall-json/) - Shares the same upstream source repository.
- [dhall-lsp-server](https://www.automicvault.com/pkg/brew/dhall-lsp-server/) - Shares the same upstream source repository.
- [dhall-toml](https://www.automicvault.com/pkg/brew/dhall-toml/) - Shares the same upstream source repository.
- [json2tsv](https://www.automicvault.com/pkg/brew/json2tsv/) - Shares av.db curated category or tags: cli, converter, data-conversion, developer-tools.
- [remarshal](https://www.automicvault.com/pkg/brew/remarshal/) - Shares av.db curated category or tags: cli, data-conversion, developer-tools, yaml.
- [ascii2binary](https://www.automicvault.com/pkg/brew/ascii2binary/) - Shares av.db curated category or tags: cli, data-conversion, developer-tools.
- [butane](https://www.automicvault.com/pkg/brew/butane/) - Shares av.db curated category or tags: cli, configuration, developer-tools, yaml.
- [config-file-validator](https://www.automicvault.com/pkg/brew/config-file-validator/) - Shares av.db curated category or tags: cli, configuration, developer-tools, yaml.

## Combined YAML source

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