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

Easy plain text accounting with command-line, terminal and web UIs. Version 1.52.1 via Homebrew; verified 2026-04-29.

## Install

```sh
sudo av install brew:hledger
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install hledger
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install hledger
```

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

### Linux

- apk (92%):

```sh
sudo apk add hledger
```

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

- Debian apt (92%):

```sh
sudo apt install hledger
```

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

- dnf (92%):

```sh
sudo dnf install ghc-hledger
```

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

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

- pacman (92%):

```sh
sudo pacman -S hledger
```

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

- zypper (92%):

```sh
sudo zypper install ghc-hledger
```

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

### Windows

- Scoop (92%):

```sh
scoop install main/hledger
```

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

- winget (92%):

```sh
winget install --id simonmichael.hledger -e
```

  Evidence: Windows Package Manager source index: simonmichael.hledger from https://cdn.winget.microsoft.com/cache/source.msix

## Package facts

- **Package key:** brew:hledger
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/hledger>
- **Version:** 1.52.1
- **Source summary:** Easy plain text accounting with command-line, terminal and web UIs
- **Homepage:** <https://hledger.org/>
- **Repository:** <https://github.com/simonmichael/hledger>
- **Upstream docs:** <https://hledger.org/doc.html>
- **License:** GPL-3.0-or-later
- **Source archive:** <https://github.com/simonmichael/hledger/archive/refs/tags/1.52.1.tar.gz>
- **Last updated:** 2026-04-29T13:06:53Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- hledger (cli)
- hledger-ui (cli)
- hledger-web (cli)
- hledger (alias)
- hledger-ui (alias)
- hledger-web (alias)

## Dependencies

- gmp

## Build dependencies

- ghc
- haskell-stack

## 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.52.1
- Package-manager updated: 2026-04-29
- Local data: ok
- Upstream repository: https://github.com/simonmichael/hledger
- Upstream latest detected: 1.52.1 (current)
## Project history and usage

hledger is Simon Michael's Haskell implementation in the plain-text accounting family: a command-line, terminal, and web accounting tool that stores financial data in human-readable journal files and reports on money, investments, time, inventory, and other countable commodities.

### Project history

hledger was created as a Haskell response to Ledger, the earlier command-line tool that pioneered plain text accounting. The hledger FAQ says the project was motivated by making finance work more enjoyable, by frustration with Ledger's stalled development and rough edges, and by the desire to build a more usable, robust, documented, cross-platform-installable version in Haskell.

The README describes the codebase as continually improved since 2007, with a focus on reliability, maintainability, and practical everyday accounting. hledger's design keeps the plain-text journal at the center while offering multiple interfaces: hledger for the CLI, hledger-ui for a terminal interface, and hledger-web for a browser UI.

hledger has grown inside the broader Plain Text Accounting ecosystem. The hledger manual states that it is inspired by and largely compatible with ledger(1), and largely interconvertible with beancount(1). The hledger and Ledger page describes hledger as a reimplementation of Ledger's best parts with stronger focus on UX, reliability, consistency, and real-world practicality.

In 2026, the README records a branch split: the former master branch became hledger1 and work began on hledger 2.x in main. The stated 2.x goals include better lot tracking and capital gains calculation, more interoperability, more speed, easier contribution, and continued reliability.

### Adoption history

hledger adoption is tied to the plain-text accounting community: users choose editable text files, version control, scripts, and transparent data over database-backed personal finance applications. The README names the Plain Text Accounting ecosystem, documentation, videos, tutorials, editor/IDE integrations, mobile and web interfaces, and a contributor base as part of the project context.

The Homebrew input facts show broad packaging across Alpine, Homebrew, Debian, Fedora, MacPorts, Nix, Arch, Scoop, Ubuntu, WinGet, and openSUSE. That breadth matters because hledger is used by individuals and organizations on Unix, macOS, and Windows workstations.

The hledger FAQ frames the project's mission beyond a single executable: making plain text accounting more usable and useful, reducing finance and financial-technology stress, and supporting a thriving ecosystem of financial software projects.

### How it is used

hledger reads journal files containing dated double-entry transactions, then produces reports such as balance sheets, income statements, registers, budgets, and cashflow views. Users can edit data directly in a text editor, import CSV from banks, use terminal data-entry tools, use hledger-web, or integrate it into scripts and version-control workflows.

The manual describes hledger as a robust, user-friendly, cross-platform set of programs for tracking money, time, or any other commodity. The README highlights CSV import/export, text/HTML/JSON/SQL output, multi-currency support, high precision, and scriptability through CLI, HTTP, or API.

### Why package nerds care

hledger is important to package nerds because it treats accounting data as durable text. That makes backups, diffs, version control, review, automation, and migration tractable in a way that opaque finance-app databases often are not.

It also anchors one of the most package-manager-friendly corners of personal finance software: a Haskell executable suite with CLI/TUI/web surfaces, docs shipped with the tool, and broad distro packaging. For users who prefer reproducible environments and text-first workflows, hledger is one of the central packages in the plain-text accounting toolbox.

Its relationship to Ledger and Beancount makes it part of a larger lineage rather than an isolated app. Package maintainers and users often evaluate the three together: Ledger for the original format and C++ implementation, Beancount for Python-oriented workflows, and hledger for Haskell, cross-platform installability, and active UX-focused maintenance.

### Timeline

- 2007: hledger development lineage begins according to the project README.
- 2008: hledger maintenance and support era is described on the hledger and Ledger page.
- 2013-04-08: The simonmichael/hledger GitHub repository was created.
- 2026: The former master branch was renamed hledger1 and hledger 2.x work began in main.

### Related projects

- Ledger: the original plain-text accounting CLI and file-format influence.
- Beancount: a Python plain-text accounting system that hledger documentation names as largely interconvertible.
- PlainTextAccounting.org: the ecosystem portal maintained by Simon Michael for related tools, docs, and community resources.
- hledger-ui and hledger-web: sibling interfaces shipped in the hledger suite.

### Sources

- <https://api.github.com/repos/simonmichael/hledger>
- <https://hledger.org/faq.html>
- <https://hledger.org/ledger.html>
- <https://hledger.org/manual.html>
- <https://plaintextaccounting.org/>
- <https://raw.githubusercontent.com/simonmichael/hledger/master/README.md>
- input: source_facts.package-manager


## Security Notes

narrow executable package without higher-risk signals.

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


## 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: hledger.conf, ~/.hledger.conf, ~/.config/hledger/hledger.conf
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** hledger
- **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 - hledger - 1.32.3-1+b2: normalized package name match | Debian stable package indexes: hledger from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | command-line double-entry accounting program | https://hledger.org
- Nix - hledger: normalized package name match | nixpkgs package indexes: hledger from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
- Ubuntu apt - hledger - 1.30.1-1: normalized package name match | Ubuntu 24.04 LTS package indexes: hledger from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | command-line double-entry accounting program | https://hledger.org
- apk - hledger - 1.52-r0: normalized package name match | Alpine Linux edge package indexes: hledger from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Command-line interface for the hledger accounting system | https://hledger.org/hledger.html
- apk - hledger-bash-completion - 1.52-r0: normalized package name match | Alpine Linux edge package indexes: hledger-bash-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Bash completions for hledger | https://hledger.org/hledger.html
- apk - hledger-doc - 1.52-r0: normalized package name match | Alpine Linux edge package indexes: hledger-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Command-line interface for the hledger accounting system (documentation) | https://hledger.org/hledger.html
- apk - hledger-ui - 1.52-r0: normalized package name match | Alpine Linux edge package indexes: hledger-ui from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Curses-style terminal interface for the hledger accounting system | https://hledger.org/hledger-ui.html
- apk - hledger-ui-doc - 1.52-r0: normalized package name match | Alpine Linux edge package indexes: hledger-ui-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Curses-style terminal interface for the hledger accounting system (documentation) | https://hledger.org/hledger-ui.html
- apk - hledger-web - 1.52-r0: normalized package name match | Alpine Linux edge package indexes: hledger-web from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Web interface for the hledger accounting system | https://hledger.org/hledger-web.html
- apk - hledger-web-doc - 1.52-r0: normalized package name match | Alpine Linux edge package indexes: hledger-web-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Web interface for the hledger accounting system (documentation) | https://hledger.org/hledger-web.html
- apk - hledger-web-openrc - 1.52-r0: normalized package name match | Alpine Linux edge package indexes: hledger-web-openrc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Web interface for the hledger accounting system (OpenRC init scripts) | https://hledger.org/hledger-web.html
- dnf - ghc-hledger - 1.43.2-18.fc44: normalized package name match | Fedora Rawhide package metadata: ghc-hledger from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Haskell hledger library | https://hackage.haskell.org/package/hledger
- dnf - ghc-hledger-devel - 1.43.2-18.fc44: normalized package name match | Fedora Rawhide package metadata: ghc-hledger-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Haskell hledger library development files | https://hackage.haskell.org/package/hledger
- dnf - ghc-hledger-doc - 1.43.2-18.fc44: normalized package name match | Fedora Rawhide package metadata: ghc-hledger-doc from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Haskell hledger library documentation | https://hackage.haskell.org/package/hledger
- dnf - ghc-hledger-prof - 1.43.2-18.fc44: normalized package name match | Fedora Rawhide package metadata: ghc-hledger-prof from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Haskell hledger profiling library | https://hackage.haskell.org/package/hledger
- dnf - ghc-quote-quot - 0.2.1.0-18.fc44: normalized package name match | Fedora Rawhide package metadata: ghc-quote-quot from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Haskell quote-quot library | https://hackage.haskell.org/package/quote-quot


## Related links

- [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.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Web development packages](https://www.automicvault.com/pkg/web-dev-tools/) - Matched web development metadata.
- [ghc](https://www.automicvault.com/pkg/brew/ghc/) - Build dependency declared by Homebrew.
- [haskell-stack](https://www.automicvault.com/pkg/brew/haskell-stack/) - Build dependency declared by Homebrew.
- [rustledger](https://www.automicvault.com/pkg/brew/rustledger/) - Shares av.db curated category or tags: accounting, cli, finance, plain-text-accounting, productivity.
- [fava](https://www.automicvault.com/pkg/brew/fava/) - Shares av.db curated category or tags: accounting, cli, finance, productivity.
- [bagels](https://www.automicvault.com/pkg/brew/bagels/) - Shares av.db curated category or tags: cli, finance, productivity.
- [homebank](https://www.automicvault.com/pkg/brew/homebank/) - Shares av.db curated category or tags: accounting, cli, finance, productivity.
- [invoice](https://www.automicvault.com/pkg/brew/invoice/) - Shares av.db curated category or tags: cli, finance, productivity.
- [libofx](https://www.automicvault.com/pkg/brew/libofx/) - Shares av.db curated category or tags: cli, finance, productivity.
- [pytr](https://www.automicvault.com/pkg/brew/pytr/) - Shares av.db curated category or tags: cli, finance, productivity.
- [beancount](https://www.automicvault.com/pkg/brew/beancount/) - Shares av.db curated category or tags: accounting, cli, finance, productivity.
- [ledger](https://www.automicvault.com/pkg/brew/ledger/) - Local package facts share a topical domain. Shared terms: accounting, cli, command-line, finance, gmp.

## Combined YAML source

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