7.1 KiB
A. I want to download a packaged version
Packaged versions are the quickest to install, but they sometimes lag behind the latest release, or provide only some of the hledger tools. (Packagers welcome!)
Windows: | Download and run the latest development builds (-> Appveyor CI) |
Mac: | brew install hledger |
Debian, Ubuntu: | sudo apt install hledger hledger-ui hledger-web |
Fedora, RHEL: | sudo dnf install hledger |
Gentoo: | sudo layman -a haskell && sudo emerge hledger hledger-ui hledger-web |
NixOS: | nix-env -iA nixpkgs.haskellPackages.hledger \ nixpkgs.haskellPackages.hledger-ui \ nixpkgs.haskellPackages.hledger-web |
Sandstorm: | hledger-web Sandstorm app -> demo (your own fully-functional private/public hledger-web instance in 3 clicks) |
B. I want to build the latest release
The latest release (see release notes) is a good choice. You have to build it, but that's pretty easy.
-
Install
stack
. On Windows, the 64-bit version is recommended. On Arch, you may need to also install GHC manually.
(If you're acabal
expert, feel free to use that instead, adapting these instructions appropriately.) -
stack install --resolver=nightly hledger [hledger-ui] [hledger-web] [hledger-api]
Note you don't type the square brackets; they mean "this bit is optional". So eg if you don't care about the web tools, you would typestack install --resolver=nightly hledger hledger-ui
On Windows, hledger-ui is not yet available.
If stack says you need to runstack setup
, do that first.
Warnings about "No packages found in snapshot which provide a "hsc2hs" executable" can be ignored.
If required C libraries (like curses) are not installed, you might need to install those manually and try again, eg:Debian, Ubuntu: sudo apt install libncurses5-dev
Fedora, RHEL: sudo dnf install ncurses-devel
-
If stack warns that
~/.local/bin
(or the Windows equivalent) is not in$PATH
, fix that. Eg if you're a bash user:
echo "export PATH=$PATH:~/.local/bin" >> ~/.bashrc && source ~/.bashrc
Now you can runhledger --version
,hledger-ui --version
etc.
C. I want to build the development version
The dev version includes not-yet-released features and is stable enough for daily use.
-
git clone http://code.hledger.org hledger
-
cd hledger
-
stack install
with the same caveats as mentioned above:- if stack says you need to run
stack setup
, do that first, - if building fails due to missing C libs, install those first
- if stack warns that
~/.local/bin
(or the Windows equivalent) is not in$PATH
, fix that - warnings about "No packages found in snapshot which provide a hsc2hs executable" can be ignored
- if stack says you need to run
Cabal users can use the cabal-install.sh
or cabal.project
files instead.
D. I want to install all add-on commands
Some experimental commands are not built in to hledger, but
included in the source as
add-on commands, such as:
chart
,
check-dates
,
dupes
,
equity
,
print-unique
,
register-match
,
rewrite
.
To install these and make them available in hledger's commands list:
- Install
stack
and git (see above) git clone http://code.hledger.org hledger
(as above)cd hledger
bin/compile.sh
(optional, makes them start faster)- add the hledger
bin/
directory to your$PATH
There is also a hledger-autosync
symbolic link showing how to make
the ledger-autosync tool available
as a hledger command.
Other commands are published as separate packages:
hledger-diff
,
hledger-iadd
,
hledger-interest
,
hledger-irr
.
Some are available in Stackage and can be installed with stack as in B above:
stack install --resolver nightly hledger-iadd hledger-interest
Others are available only on Hackage, so you must specify the Hackage version number. Eg:
stack install hledger-diff-0.2.0.7 hledger-irr-0.1.1.10