7.2 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	Download
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.
| Windows: | Latest developer builds (no hledger-ui, please help) | 
| Mac: | brew install hledger(CLI only, please
help) | 
| Arch Linux: | pacaur -S 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 | 
| Void Linux: | xbps-install -S hledger hledger-ui hledger-web hledger-api | 
| NixOS: | nix-env -iA nixpkgs.haskellPackages.hledger \nixpkgs.haskellPackages.hledger-ui \nixpkgs.haskellPackages.hledger-web | 
| Sandstorm: | hledger-web Sandstorm app -> demo (get a hledger-web server in 3 clicks. Features needed, please help) | 
B. I want to build the latest release
The latest release (see release notes) is a good choice. You have to build it, but this is relatively easy:
- Install - stack
 
 Avoid using versions older than 1.0 which give “Invalid package ID” errors; latest version is good.
 On Windows, the 64-bit version is recommended.
 On Arch, you may need to also install GHC manually.
 Ensure- ~/.local/bin(or Windows equivalent) is added to your $PATH. Eg if you’re a bash user:
 - echo "export PATH=$PATH:~/.local/bin" >> ~/.bashrc && source ~/.bashrc
- stack install hledger-lib-1.3 hledger-1.3 [hledger-ui-1.3] [hledger-web-1.3] [hledger-api-1.3]
 
 Don’t type the square brackets; they indicate optional packages which you can omit to save time.
 hledger-ui is not yet available on Windows.
 This command installs the latest released hledger packages (and the haskell libraries and tools they depend on) from an appropriate stackage snapshot and/or hackage, and will take a while.
 You can add- --dry-runto see what it plans to do, and kill/restart it without losing progress.
 If it says you need to run- stack setup, do that then run the install command again.
 If it says “Error: While constructing the build plan…”, try adding- --resolver=ltsto the install command, or setting a newer resolver in- $HOME/.stack/global/stack.yaml.
 On Mac, if it says “ghc: panic! … no suitable image found”, you may need to specify GHC 8.0.2+/lts-8+, as above.
 If it gives “Invalid package ID” errors, get a newer version of stack (see step 1).
 If you’re a cabal expert, feel free to use that instead of stack.
 If you get errors due to missing C libraries (like curses or terminfo), install those manually, eg:- Debian, Ubuntu: - sudo apt install libncurses5-dev- Fedora, RHEL: - sudo dnf install ncurses-devel- If you need to build with an older GHC version for some reason, these commands should work (except on Mac sierra which requires GHC 8.0.2+): 
 GHC 7.10.3:- stack install --resolver lts-6 hledger-lib-1.3 hledger-1.3 hledger-ui-1.3 hledger-web-1.3 hledger-api-1.3 megaparsec-5.3.1 brick-0.19 vty-5.15.1 data-clist-0.1.2.0 text-zipper-0.10
 GHC 8.0.1:- stack install --resolver lts-7 hledger-lib-1.3 hledger-1.3 hledger-ui-1.3 hledger-web-1.3 hledger-api-1.3 brick-0.19 vty-5.15.1 data-clist-0.1.2.0
Now you should be able to run hledger --version and see
a version similar to the above (and hledger-ui --version,
hledger-web --version etc. if you installed those).
C. I want to build the development version
The latest master branch includes not-yet-released features and is stable enough for daily use.
- Install stackand git (see notes in B above)
- git clone http://code.hledger.org hledger
- cd hledger
- stack install
Cabal users can use the cabal-install.sh or
cabal.project files instead.
D. I want to install more commands
Additional add-on
commands can be installed. Eg:
stack install hledger-iadd-1.2.1 or
stack install --resolver nightly hledger-iadd.
More, experimental add-ons are included in the hledger source repo; to install these:
- Download the hledger source code (as in C above)
- In the hledger directory, run
bin/compile.sh(installs dependencies & compiles for speed)
- Add the hledger/bin/directory to your$PATH(as in B above)
Now you should be able to run hledger iadd --version,
hledger check --help etc.