kolibri-installer-android
kolibri-installer-android copied to clipboard
Create gradle build configuration
A big advantage of Chaquopy will be to make more of our build system more reproducible through Android Studio for dev purposes.
However, for the first pass integration it may be simpler to continue to do our custom unbundling/modifying of the Kolibri tar file outside of the scope of the Gradle build.
Therefore, for the first pass of Chaquopy build, we should be specifying the source of the installation for Kolibri from the patched tar file that we already create. Looking at the example for endless: https://github.com/endlessm/kolibri-installer-android/blob/develop/app/build.gradle.kts#L201 we would only install Kolibri, and do so differently, based on the patched tar source folder.
The endless build explicitly extracts migration folders to support Django's discovery. As this work will happen after Kolibri has been upgraded to Django 3.2, it is possible that this is no longer needed, but will need validation to be sure: https://github.com/endlessm/kolibri-installer-android/blob/develop/app/build.gradle.kts#L207
Lastly, looking at the example in the endless fork: https://github.com/endlessm/kolibri-installer-android/blob/develop/app/build.gradle.kts#L102 it seems that we do not need to support the x86 ABI, but should support the other three.
### Tasks
- [ ] Setup chaquopy to install Kolibri from the patched tar directory
- [ ] Check if Django 3.2 still has issues with reading from the bundled package, if so, replicate the extractPackages logic
- [ ] Investigate if this can be achieved by introspection rather than hardcoding, but not a blocker
- [ ] Add ABI filter logic to have full device coverage but limit bundle size