Skip to content

New App: com.openathena

Matthew Krupczak requested to merge mkrupczak/fdroiddata:com.openathena into master

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


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.

OpenAthena_Concept_Diagram

tap_to_locate_demo_small

More information is available at our website https://openathena.com (redirects to theta.limited)

scanignore'd files: the purpose of included .tar.gz and .bin data files

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.

Edited by Matthew Krupczak

Merge request reports