To install git-annex from scratch, you need a lot of stuff. Really quite a lot.
- Haskell stuff
- The Haskell Platform (GHC 7.4 or newer)
- mtl (2.1.1 or newer)
- MissingH
- utf8-string
- SHA
- cryptohash (optional but recommended)
- dataenc
- monad-control
- QuickCheck 2
- json
- aeson
- IfElse
- dlist
- bloomfilter
- edit-distance
- hS3 (optional)
- DAV (optional)
- SafeSemaphore
- UUID
- regex-tdfa
- extensible-exceptions
- feed
- async
- stm (version 2.3 or newer)
- Optional haskell stuff, used by the assistant and its webapp
- Shell commands
- git (1.7.2 or newer; 1.8.5 recommended)
- xargs
- rsync
- curl (optional, but recommended)
- wget (optional)
- sha1sum (optional, but recommended; a sha1 command will also do)
- gpg (optional; needed for encryption)
- lsof (optional; recommended for watch mode)
- gcrypt (optional)
- nocache (optional)
- multicast DNS support, provided on linux by nss-mdns (optional; recommended for the assistant to support pairing well)
- ikiwiki (optional; used to build the docs)
Then just download git-annex and run: make; make install