I tried to build the Android app according to the instructions on the install page.

But during step 2 (In the chroot, run install-haskell-packages) cabal fails to handle the dependencies correctly. So I tried to change the standalone/android/cabal.config file to update all the dependencies, but this had me running into something I think is unresolvable in another package's dependencies. Eventually I had the following output:

# ./standalone/android/install-haskell-packages 
Downloading the latest package list from hackage.haskell.org
Skipping download: Local and remote files match.
/home/repo/git-annex /home/repo/git-annex/standalone/android
Resolving dependencies...
cabal: Could not resolve dependencies:
trying: git-annex-6.20160318 (user goal)
trying: persistent-template-2.1.6/installed-08b... (dependency of
next goal: monad-control (dependency of git-annex-6.20160318)
rejecting: monad-control-,,,,,,,,, (global constraint
requires ==
rejecting: monad-control- (conflict: persistent-template =>
rejecting: monad-control-, 0.3.2,,,,,
0.3.1,, 0.3,,,, 0.2, 0.1 (global constraint
requires ==

This tells me that the package persistent-template depends on the package monad-control at a version of So I look at the persistent-template hackage page and see that it lists its dependency on monad-control as:

monad-control (>=0.2 && <1.1)

And I don't think that's possible to resolve.

All I wanted to do was change the icons on the Android package, so if you'll just accept the changed icons folder, I can submit the patch without testing the Android build, but currently I'm unable to build the Android port of git-annex.