Termux is an android terminal with apt. It should be possible to build git-annex this way, and this would be a nice alternative (or perhaps replacement) for the git-annex.apk.
Looks like termux uses ubuntu to build, but cross-compiles for android, using bionic. So, ghc-android would still need to be used to build git-annex.
Packages: https://github.com/termux/termux-packages
May be easier to build an appropriate .deb from the android git-annex binary, and add it to termux's sources.list?
Update: There's already an open issue in termux for this! https://github.com/termux/termux-packages/issues/420 --Joey
This would also help with tor support on android, since termux has a tor package. And would avoid needing to bundle other often out of date stuff with git-annex.apk.
--Joey
Retargeting this todo to be about making the git-annex linux standalone build work well when unpacked in termux. --Joey

The Linux standalone arm build of git-annex WORKS in termux!
Just untar somewhere other than /sdcard. Your termux user's home directory works.
cd git-annex.linux && runshellJust works. 100%. OMG
A few problems with using git-annex this way..
git init fails in sdcard because it tries to chmod something. It works in the termux home directory. Note that only the git bundled with git-annex has this problem; the termux one works (probably it's patched like I did in the android git-annex port). Hacking the standalone build to not run the bundled git should work. This could be done only when uname -o = Android. (Update: Fixed)
git annex init fails with a getUserEntryForID exception. 526243d6f5db6e16c32ed7f835da590b877f78b8 probably fixed this, but not tested yet. (Update: Fixed)
The webapp is able to open an url (after I upgraded termux) via xdg-open (alias for termux-open), but when in /sdcard/t2 it opened an url that chrome was not able to access, apparently a permissions problem. The webapp.html does not add any security on android, since it's not a multiuser unix system, and so it should open the url to the webapp directly. (Done)
Accessing the sdcard may need termux-setup-storage to be run once, depending on the version of android. That sets up $HOME/storage. The webapp ought to default to making a repository somewhere in there. (Done)
The assistant won't start on boot, but could be made to using https://wiki.termux.com/wiki/Termux:Boot (Integration in place now)
Apparently termux-exec sets a
LD_PRELOADthat is not compatible, so the wrapper script would need to unset it. (Done now)Webapp mountwatcher crashes "getMounts: does not exist" (caught exception now))