58 lines
1.7 KiB
Markdown
58 lines
1.7 KiB
Markdown
As a haskell package, git-annex can be installed using cabal.
|
|
|
|
This involves building a lot of haskell packages from source, and so it has
|
|
a lot of moving parts, and it's not uncommon for it to be broken from time
|
|
to time.
|
|
|
|
If you are not comfortable tracking down and dealing with library build
|
|
problems, installing git-annex with cabal is probably not the right choice
|
|
for you!
|
|
|
|
## prerequisites
|
|
|
|
Start by installing the [Haskell Platform][]. In Debian, this is as
|
|
simple as:
|
|
|
|
sudo apt-get install haskell-platform
|
|
|
|
[Haskell Platform]: http://hackage.haskell.org/platform/
|
|
|
|
## minimal build
|
|
|
|
This builds git-annex without some features that require C libraries, that
|
|
can be harder to get installed. This is plenty to get started using it,
|
|
although it does not include the assistant or webapp.
|
|
|
|
cabal update
|
|
PATH=$HOME/bin:$PATH
|
|
cabal install git-annex --bindir=$HOME/bin -f"-assistant -webapp -webdav -pairing -xmpp -dns"
|
|
|
|
## full build
|
|
|
|
To build with all features enabled, including the assistant and webapp,
|
|
you will need to install several C libraries and their headers,
|
|
including libgnutls, libgsasl, libxml2, and zlib. Then run:
|
|
|
|
cabal update
|
|
PATH=$HOME/bin:$PATH
|
|
cabal install c2hs --bindir=$HOME/bin
|
|
cabal install git-annex --bindir=$HOME/bin
|
|
|
|
## building from git checkout
|
|
|
|
But maybe you want something newer (or older). Then [[download]] the version
|
|
you want, and use cabal as follows inside its source tree:
|
|
|
|
cabal update
|
|
PATH=$HOME/bin:$PATH
|
|
cabal install c2hs --bindir=$HOME/bin
|
|
cabal install --only-dependencies
|
|
cabal configure
|
|
cabal build
|
|
cabal install --bindir=$HOME/bin
|
|
|
|
## EKG
|
|
|
|
When building with cabal, you can optionally enable the
|
|
[[EKG monitoring interface|ekg]]. This is great for debugging resource
|
|
usage problems.
|