### goals 1. Get git-annex working at the command line in Android, along with all the programs it needs, and the assistant. **done** 2. Deal with crippled filesystem; no symlinks; etc. **done** 3. Get an easy to install Android app built. **done** 4. Get the webapp working. Needs Template Haskell, or switching to . 5. Possibly, switch from running inside terminal app to real standalone app. See and . ### Android specific features The app should be aware of power status, and avoid expensive background jobs when low on battery or run flat out when plugged in. The app should be aware of network status, and avoid expensive data transfers when not on wifi. This may need to be configurable. ## Template Haskell for android? Best lead I have on getting cross compilation of TH working is that GHCJS does it, and that it involves compiling each file twice, once natively for TH and once for cross. ## TODO * webapp * autostart any configured assistants. Best on boot, but may need to only do it when app is opened for the first time. * Don't make app initially open terminal, but go to a page that allows opening the webapp or terminal. * I have seen an assistant thread crash with an interrupted system call when the device went to sleep while it was running. Auto-detect and deal with that somehow. * Make git stop complaining that "warning: no threads uspport, ignoring --threads" * git does not support http remotes. To fix, need to port libcurl and allow git to link to it. * getEnvironment is broken on Android and a few places use it. * Enable WebDAV support. Currently needs template haskell (could be avoided by changing the DAV library to not use it), and also networking support, which seems broken in current ghc-android. * XMPP support. I got all haskell libraries installed, but it fails to find several C libraries at link time. * Get local pairing to work. network-multicast and network-info don't currently install. * Get test suite to pass. Current failure is because `git fetch` is somehow broken with local repositories.