maplibre / maplibre-gl-js

MapLibre GL JS - Interactive vector tile maps in the browser
https://maplibre.org/maplibre-gl-js/docs/
Other
6.39k stars 690 forks source link

Separate build flavor to avoid any references to non-FLOSS software #1440

Closed cyBerta closed 2 years ago

cyBerta commented 2 years ago

Delta Chat faces problems to distribute the Android app containing MapLibre in F-Droid. F-Droid considers MapLibre as violating their FOSS principles because it contains references to google gms. Even though we didn’t opt-in the use of the GoogleLocationEngine and thus using any google dependencies in the client, these dependencies are required during compile time. Other software projects do or will face the same problem with F-Droid and MapLibre, e.g. see https://gitlab.com/fdroid/fdroiddata/-/merge_requests/11527)

A contributor proposed to remove the problematic classes on compile-time. While this works, it’s quite a hack. I would like to propose instead to have a separate build flavor that fulfits F-Droids requirements, which has no references to com.google.android.gms.

Problematic classes we identified are:

com/mapbox/mapboxsdk/location/engine/LocationEngineResult.java com/mapbox/mapboxsdk/location/engine/GoogleLocationEngineImpl.java com/mapbox/mapboxsdk/location/engine/LocationEngineProvider.java

And some tests.

cyBerta commented 2 years ago

closing, I created the ticket accidentally in the wrong repository