hledger/site/download.md
2019-02-20 09:14:30 -08:00

15 KiB

Download

There are several ways to install hledger:

a. Download the binary or system package for your platform (quick install, often out of date) b. Build the latest release with hledger-install or with stack or with cabal (slow install, up to date) c. Build the development version with stack or cabal (slow install, cutting edge)

a. Download a binary or system package for your platform

*(please [update this page](https://github.com/simonmichael/hledger/edit/master/site/download.md),
report packaging issues)*
Binaries or system packages are quickest to install, but can be outdated or incomplete.
Latest release: 1.13.2
Release notes

Mac
Homebrew brew install hledger Homebrew

Windows
[Windows binaries][] hledger.zip no hledger-ui,doesn't work on old windows ?,many files in PATH causing hangs 1.12
[Linuxbrew][] brew install hledger Linuxbrew

GNU/Linux
[Linuxbrew][] brew install hledger Linuxbrew
[Arch][] pacman -S hledger hledger-ui hledger-web Arch
[Debian][] sudo apt install hledger hledger-ui hledger-web Debian Oldstable Debian Stable Debian Testing Debian Unstable
[Fedora][] sudo dnf install hledger
or (more complete & current):
sudo dnf copr enable kefah/HLedger && sudo dnf install hledger
Fedora 26 Fedora 27 Fedora 28 Fedora 29 Fedora Rawhide
[Gentoo][] sudo layman -a haskell && sudo emerge hledger hledger-ui hledger-web 1.13.2
[Ubuntu][] sudo apt install hledger hledger-ui hledger-web Ubuntu 12.04 Ubuntu 14.04 Ubuntu 16.04 Ubuntu 17.10 Ubuntu 18.04 Ubuntu 18.10 Ubuntu 19.04
[Void][] xbps-install -S hledger hledger-ui hledger-web Void Linux x86_64

BSD
OpenBSD Ports: https://github.com/jasperla/openbsd-wip/pull/104
Third-party binaries: OpenBSD6.3/amd64
1.10

Other
[Docker][] docker pull dastapov/hledger (more info) 1.13.2+
[Nix][] nix-env -iA nixpkgs.haskellPackages.hledger nixpkgs.haskellPackages.hledger-ui \
   nixpkgs.haskellPackages.hledger-web

problems with hledger-ui on Mac ?
nixpkgs stable nixpkgs unstable
[Sandstorm][] hledger-web Sandstorm app
features needed
1.9.2

[Homebrew contact]: @albins, simon@joyful.com [Linuxbrew]: https://linuxbrew.sh [Linuxbrew contact]: @albins, simon@joyful.com [Windows binaries]: https://ci.appveyor.com/project/simonmichael/hledger [Windows binaries contact]: simon@joyful.com [Arch]: https://www.archlinux.org/packages/?sort=&q=hledger [Arch contact]: ? [Debian]: https://packages.debian.org/search?searchon=names&keywords=hledger [Debian contact]: mailto:debian-haskell@lists.debian.org, Clint [Fedora]: https://apps.fedoraproject.org/packages/s/hledger [Fedora contact]: ? [Gentoo]: https://gentoo.zugaina.org/Search?search=hledger [Gentoo contact]: ? [Ubuntu]: https://packages.ubuntu.com/search?suite=all&searchon=names&keywords=hledger [Ubuntu contact]: ? [Void]: https://voidlinux.org/packages/?q=hledger [Void contact]: ? [Docker]: https://hub.docker.com/search?q=hledger&type=image&sort=updated_at&order=desc [Docker contact]: @adept [Nix]: http://hydra.nixos.org/search?query=hledger [Nix contact]: @peti [Sandstorm]: https://sandstorm.io [Sandstorm contact]:

b. Build the latest release

Good choice! You'll get the latest features and fixes mentioned in the release notes, and you'll be in a good position to give feedback and get support. Below are three ways to build the latest release, in order of preference. But first, some tips:

b1. with hledger-install

On systems with bash installed (mac, linux, unix-like windows..), if you don't already have stack or cabal, or if you are having trouble with them, hledger-install is an easy and reliable way to get the latest hledger. It automates the install process using stack or cabal, avoiding common pitfalls:

curl -s https://raw.githubusercontent.com/simonmichael/hledger/master/hledger-install/hledger-install.sh > hledger-install.sh
less hledger-install.sh # satisfy yourself that the script is safe
bash hledger-install.sh

b2. with stack

stack is the more reliable of Haskell's two build tools, for new users. You need stack 1.7.1 or newer; the latest release is best. On 64-bit Windows, use the 64-bit version of stack. The following command installs the main hledger packages; you can save some time by omitting hledger-ui, hledger-web and/or hledger-api (optional user interfaces). On Windows, hledger-ui is not available. To estimate the build time, add --dry-run:

stack install --resolver=lts-13 hledger-lib-1.13.1 hledger-1.13.2 hledger-ui-1.13.1 brick-0.46 text-zipper-0.10.1 config-ini-0.2.4.0 data-clist-0.1.2.2 word-wrap-0.4.1 hledger-web-1.13 hledger-api-1.13\

Other add-ons like hledger-diff, hledger-iadd, or hledger-interest can be installed like so:

stack install --resolver=lts-13 hledger-lib-1.13.1 hledger-diff-0.2.0.14 hledger-iadd-1.3.8 brick-0.46 text-zipper-0.10.1 config-ini-0.2.4.0 data-clist-0.1.2.2 word-wrap-0.4.1 hledger-interest-1.5.3\

b3. with cabal

cabal is the other Haskell build tool. If you're a cabal expert, use it in the usual way, eg:

cabal v2-update
cabal v2-install hledger-1.13.2 hledger-ui-1.13.1 hledger-web-1.13 hledger-api-1.13 [hledger-diff-0.2.0.14 hledger-iadd-1.3.8 hledger-interest-1.5.3]\

Set up PATH

You will probably see a message about where the executables were installed. After installation, make sure this install directory is configured in your shell's $PATH (preferably near the start of it, to preempt older hledger system packages you may have installed). The install directory is:

on non-Windows systems on Windows
If stack was used $HOME/.local/bin %APPDATA%\local\bin (eg C:\Users\Joe\AppData\Roaming\local\bin)
If cabal was used $HOME/.cabal/bin %APPDATA%\cabal\bin

How to configure $PATH is platform- and shell-specific. If you are using bash, this should take care of it:

echo "export PATH=~/.local/bin:~/.cabal/bin:$PATH" >> ~/.bashrc && source ~/.bashrc

\

Test the installation

You should now be able to run the hledger tools (whichever ones you installed) and see the expected versions:

$hledger --version
hledger 1.13.2
$hledger-ui --version
hledger-ui 1.13.1
$hledger web --version
hledger-web 1.13
$hledger iadd --version
This is hledger-iadd version 1.3.8\

And you can check that the unit tests pass (just for fun):

$hledger test
...
✅ 188 tests passed, no failures! 👍 🎉\

c. Build the development version

Also a good choice. Our master branch is stable enough for daily use, and includes the latest improvements. You'll need git and stack or cabal. Eg, this will build and install all of the main hledger tools using stack:

git clone https://github.com/simonmichael/hledger
cd hledger
stack install\

cabal users may find the cabal-install.sh or cabal.project files useful.

See the troubleshooting, PATH, and test tips above. Note development builds will have a .99 suffix (eg 1.13.99 means "1.14-dev").