New App: com.openathena
Required
-
The app complies with the inclusion criteria -
The original app author has been notified (I am the original app author) -
All related fdroiddata and RFP issues have been referenced in this merge request -
Builds with fdroid build
Yes,scanignore
added for two data binary files
Strongly Recommended
-
The upstream app source code repo contains the app metadata (summary/description/images/changelog/etc) in a Fastlane or Triple-T folder structure -
Releases are tagged
Suggested
-
External repos are added as git submodules instead of srclibs -
Enable Reproducible Builds
New App: OpenAthena for Android
Greetings,
I am the author of OpenAthena for Android, a free and opensource app which allows common drones to spot precise locations using their images. I am submitting this app to F-Droid on behalf of my firm, Theta Informatics LLC (https://theta.limited).
The OpenAthena for Android app uses a terrain-raycasting technique with our custom geodesy engine to find the exact ground location for any selected point which appears in an image taken by most DJI, Skydio, Parrot, or Autel drones.
More information is available at our website https://openathena.com (redirects to theta.limited)
.tar.gz
and .bin
data files
scanignore'd files: the purpose of included Context
This app's terrain raycasting technique requires the presence of an Earth Geoid Model which can allow it to convert between ellipsoidal height (as used by GPS) and an orthometric Mean Sea Level height (as used by most aircrafts, including drones).
The library and data used for this conversion is based on matthiaszimmermann's EGM96 repo, under the MIT license. matthiaszimmermann calculated these data values from offsets in an online EGM96 Geoid calculator published by the U.S. National Geospatial Intelligence Agency. The resultant data file is available here: https://github.com/matthiaszimmermann/EGM96/blob/master/src/main/resources/EGM96complete.dat.gz
and has the sha256sum hash:
ace58e67f0bbda6c382c503aeb3558ce330bd637871af22a9a147a10a5f360a3
The OpenAthena for Android source code contains this exact file in exactly two places:
app/src/main/resources/EGM96complete.dat.gz
app/src/main/assets/EGM96complete.bin
The second file's extension has been changed from .dat.gz to .bin to workaround a bug present in Android file handling.
The hashcode for both files is provably the same hashcode as the original file:
bobjoe@mighty-m1 OpenAthenaAndroid % sha256sum ~/Projects/OpenAthenaAndroid/app/src/main/resources/EGM96complete.dat.gz
ace58e67f0bbda6c382c503aeb3558ce330bd637871af22a9a147a10a5f360a3 /Users/bobjoe/Projects/OpenAthenaAndroid/app/src/main/resources/EGM96complete.dat.gz
bobjoe@mighty-m1 OpenAthenaAndroid % sha256sum ./app/src/main/assets/EGM96complete.bin
ace58e67f0bbda6c382c503aeb3558ce330bd637871af22a9a147a10a5f360a3 ./app/src/main/assets/EGM96complete.bin
Applicability to FDroid
FDroid has a (sensible) policy that no app with non-free code binaries can be submitted to its registry. Fortunately, this app contains no such code binaries, only a data binary for the EGM96 geoid. I have added the two files as scanignore
entries so they do not cause the build to fail.
The EGM96 geoid binary data file is processed in a fixed process using the code in app/src/main/java/org/matthiaszimmerman.location
, which is mostly unmodified from the original source. The data binary is used only for loading the heights of the EGM96 geoid and does not contain nor trigger any dynamic code.
Closing thoughts
One of my primary motivations in creating this app and founding Theta Informatics is my belief that users deserve software that they can trust. Inclusion of the OpenAthena for Android app in FDroid would serve our users by allowing them to download the app from a platform that vets its listings and preserves the privacy and rights of its users.