site: download: recommend the install script; cleanups
This commit is contained in:
parent
f20592e10c
commit
7e9e29a942
@ -15,8 +15,8 @@ td:first-of-type {
|
|||||||
a { white-space:nowrap; }
|
a { white-space:nowrap; }
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
Packaged versions are the quickest to install, but they sometimes lag behind the
|
Packaged versions are the quickest to install,
|
||||||
latest release, or provide only some of the hledger tools.
|
but they can be out of date or incomplete.
|
||||||
|
|
||||||
|
|
|
|
||||||
|----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
@ -36,11 +36,29 @@ latest release, or provide only some of the hledger tools.
|
|||||||
## B. I want to build the latest release
|
## B. I want to build the latest release
|
||||||
|
|
||||||
The latest release (see [release notes](release-notes.html)) is a good choice.
|
The latest release (see [release notes](release-notes.html)) is a good choice.
|
||||||
You have to build it, but this is relatively easy:
|
|
||||||
|
|
||||||
1. **Install [`stack`](http://haskell-lang.org/get-started)**\
|
On POSIX systems (mac/linux/freebsd..), use our new hassle-free installer
|
||||||
|
to get the current release of hledger and related tools.
|
||||||
|
Here's the more secure way:
|
||||||
|
|
||||||
|
**`curl -sSLO http://hledger.org/hledger-install.sh`** *# (or `wget -qO- ...`; or fetch it from [github](https://github.com/simonmichael/hledger/blob/master/hledger-install/hledger-install.sh))* \
|
||||||
|
**`less hledger-install.sh`** *# (do security review)* \
|
||||||
|
**`bash hledger-install.sh`** *# (add `-v` for more detail; use `bash -x` to show commands being run)*
|
||||||
|
|
||||||
|
and here's the less secure, more convenient way:
|
||||||
|
|
||||||
|
**`curl -sSL http://hledger.org/hledger-install.sh | bash`**
|
||||||
|
|
||||||
|
Note this could take significant time (minutes to hours), memory (~2G),
|
||||||
|
and disk space (up to a gigabyte) depending on your connection,
|
||||||
|
machine and past cabal/stack installations. You can kill and rerun it without losing progress.
|
||||||
|
If the installer fails, please help improve it by [reporting](docs.html#get-helpgive-feedback) the full output.
|
||||||
|
|
||||||
|
Or, you can install manually (all systems):
|
||||||
|
|
||||||
|
1. **Install [haskell `stack`](http://haskell-lang.org/get-started)**\
|
||||||
\
|
\
|
||||||
Avoid using versions older than 1.0 which give ["Invalid package ID" errors](https://github.com/simonmichael/hledger/issues/513);
|
Avoid using versions older than 1.0, which give ["Invalid package ID" errors](https://github.com/simonmichael/hledger/issues/513);
|
||||||
latest version is good.\
|
latest version is good.\
|
||||||
On Windows, the 64-bit version is [recommended](https://github.com/simonmichael/hledger/issues/275#issuecomment-123834252).\
|
On Windows, the 64-bit version is [recommended](https://github.com/simonmichael/hledger/issues/275#issuecomment-123834252).\
|
||||||
On Arch, you [may need to also install GHC manually](https://github.com/simonmichael/hledger/issues/434).\
|
On Arch, you [may need to also install GHC manually](https://github.com/simonmichael/hledger/issues/434).\
|
||||||
@ -48,16 +66,14 @@ You have to build it, but this is relatively easy:
|
|||||||
Eg if you're a bash user:\
|
Eg if you're a bash user:\
|
||||||
`echo "export PATH=$PATH:~/.local/bin" >> ~/.bashrc && source ~/.bashrc`
|
`echo "export PATH=$PATH:~/.local/bin" >> ~/.bashrc && source ~/.bashrc`
|
||||||
|
|
||||||
2. **`stack install --resolver lts-8 hledger-lib-1.3 hledger-1.3 [hledger-ui-1.3] [hledger-web-1.3] [hledger-api-1.3]`**\
|
2. **`stack install --install-ghc --resolver lts-8 hledger-lib-1.3 hledger-1.3 [hledger-ui-1.3] [hledger-web-1.3] [hledger-api-1.3]`**\
|
||||||
\
|
\
|
||||||
This command installs the specified hledger packages (and required haskell libraries and tools) from the latest [Stackage LTS](https://www.stackage.org) snapshot (and if needed, [Hackage](http://hackage.haskell.org)).
|
This command installs the specified hledger packages (and required haskell libraries and tools) from [Stackage](https://www.stackage.org) (and if needed, [Hackage](http://hackage.haskell.org)).
|
||||||
It is reliable, but can take significant time (minutes to hours) and space (megabytes to a gigabyte) depending on your connection, machine and past installations.
|
As noted above, it can take a while.
|
||||||
You can add `--dry-run` to see what it plans to do, and kill/restart it without losing progress.\
|
You can add `--dry-run` to see what it plans to do, and kill/restart it without losing progress.\
|
||||||
You can omit the bracketed packages to save time, and maybe install them later. If you include them, don't type the brackets.
|
You can omit the bracketed packages to save time, and maybe install them later. If you include them, don't type the brackets.
|
||||||
hledger-ui is [not yet available on Windows](https://github.com/jtdaugherty/vty/pull/1#issuecomment-297143444).\
|
hledger-ui is [not yet available on Windows](https://github.com/jtdaugherty/vty/pull/1#issuecomment-297143444).\
|
||||||
<!-- You can try removing `--resolver lts-8` to save time, if your default snapshot (in $HOME/.stack/global/stack.yaml) is lts-8.x or newer.\ -->
|
If it gives "Invalid package ID" errors, get a newer version of stack.\
|
||||||
If it says you need to run `stack setup`, do that then run the install command again.\
|
|
||||||
If it gives "Invalid package ID" errors, get a newer version of stack (see step 1).\
|
|
||||||
If you're a [cabal](https://www.haskell.org/cabal/) expert, feel free to use that instead of stack.\
|
If you're a [cabal](https://www.haskell.org/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:
|
If you get errors due to missing C libraries (like curses or terminfo), install those manually, eg:
|
||||||
|
|
||||||
@ -68,37 +84,14 @@ You have to build it, but this is relatively easy:
|
|||||||
|
|
||||||
If you need to build with an older GHC version for some reason, these commands should work
|
If you need to build with an older GHC version for some reason, these commands should work
|
||||||
(except on Mac Sierra which [requires at least GHC 8.0.2/lts-8](https://ghc.haskell.org/trac/ghc/ticket/12479)):\
|
(except on Mac Sierra which [requires at least GHC 8.0.2/lts-8](https://ghc.haskell.org/trac/ghc/ticket/12479)):\
|
||||||
`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` # 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` *# (GHC 8.0.1)* \
|
||||||
`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 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 7.10.3)* \
|
||||||
<!-- keep synced with stack.yaml files -->
|
<!-- keep synced with stack.yaml files -->
|
||||||
|
|
||||||
Now you should be able to run `hledger --version`
|
Now you should be able to run `hledger --version`
|
||||||
(and `hledger-ui --version`, `hledger-web --version` etc. if you installed those)
|
(and `hledger-ui --version`, `hledger-web --version` etc. if you installed those)
|
||||||
and see the version you just installed.
|
and see the version you just installed.
|
||||||
|
|
||||||
<!--(The exact steps depend on your OS, cabal version and expertise.)-->
|
|
||||||
<!--
|
|
||||||
Short version:\
|
|
||||||
`cabal update && cabal install hledger [hledger-ui] [hledger-web] [hledger-api]`
|
|
||||||
-->
|
|
||||||
<!--
|
|
||||||
If you're brand new to cabal, these steps should work on unix-like systems
|
|
||||||
(on Windows, adjust commands and paths as needed):
|
|
||||||
|
|
||||||
1. Install [GHC](http://haskell.org/ghc) and [cabal](http://haskell.org/cabal/download.html) if needed,
|
|
||||||
eg from [https://www.haskell.org/downloads](https://www.haskell.org/downloads)
|
|
||||||
2. Ensure `~/.cabal/bin` or the Windows equivalent is in your `$PATH`,
|
|
||||||
eg `echo "export PATH=$PATH:~/.cabal/bin" >> ~/.bashrc && source ~/.bashrc`
|
|
||||||
3. `cabal update`
|
|
||||||
4. `cabal install alex happy`
|
|
||||||
5. `mkdir hledger-sandbox`
|
|
||||||
6. `cd hledger-sandbox`
|
|
||||||
7. `cabal sandbox init`
|
|
||||||
8. `cabal install hledger-1.0.1 [hledger-ui-1.0.2] [hledger-web-1.0.1] [hledger-api-1.0]`
|
|
||||||
9. `mv .cabal-sandbox/bin/hledger* ~/.cabal/bin`
|
|
||||||
10. `cd ..; rm -rf hledger-sandbox`
|
|
||||||
-->
|
|
||||||
|
|
||||||
|
|
||||||
<a name="c"></a>
|
<a name="c"></a>
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user