android icon indicating copy to clipboard operation
android copied to clipboard

Android app isn't on F-Droid

Open kalmanbencze opened this issue 9 years ago • 66 comments

From @redsteakraw on July 28, 2016 2:9

F-Droid is the free software app store for android, it is a collection of various open source apps including many OpenStreetMap apps. I would love to be able to download and use the app from F-Droid.

https://f-droid.org

Copied from original issue: openstreetview/openstreetview.org#22

kalmanbencze avatar Aug 01 '16 06:08 kalmanbencze

We will look into it, most probably will release on F-droid as well.

kalmanbencze avatar Aug 01 '16 06:08 kalmanbencze

From @james2432 on July 31, 2016 7:6

Should probably be moved to android repo @martijnv-telenav

kalmanbencze avatar Aug 01 '16 06:08 kalmanbencze

Just want to add that F-Droid inclusion is important security-wise, as they build the app locally with their signing key.

More details on how to add it to F-Droid: https://f-droid.org/contribute/

The first steps here would be identify potential third-party code within the app and their licenses. Also, providing a building recipe for F-Droid devs (or just send them a PR). How does that sound, @kalmanbencze?

pizzamaker avatar Sep 22 '16 21:09 pizzamaker

@pizzamaker the only closed source dependency that remains is the map sdk that we're using. The Google services are now optional so that can be excluded from the build. We're looking into alternatives for the map sdk currently.

kalmanbencze avatar Sep 23 '16 06:09 kalmanbencze

You seriously used Google services???! And a closed-source map sdk for contributing to such an open database like openstreetmap??

Oh, how good that there is FDroid.

As for other SDKs I though you know your own wiki pages and personally I'd recommend MapBox.

rugk avatar Sep 23 '16 17:09 rugk

@rugk it's a bit more complicated than that. Our initial choices were limited.

kalmanbencze avatar Sep 23 '16 20:09 kalmanbencze

@kalmanbencze What map sdk are you currently using? Is there no other equivalent sdk in terms of quality?

pizzamaker avatar Oct 14 '16 09:10 pizzamaker

Any news here?

rugk avatar Nov 10 '16 17:11 rugk

Still ongoing, there are no good alternatives as of now that are approved. Also our focus was on the next big feature release.

kalmanbencze avatar Nov 10 '16 17:11 kalmanbencze

The google services are now optional. the only issue is the map sdk

kalmanbencze avatar Nov 10 '16 17:11 kalmanbencze

Probably a new issue should be created for each non-free dependency. I haven't run the app yet, but mapsforge is used by SatStat and seems to work decently, plus it works offline.

gdt avatar Jan 30 '17 13:01 gdt

Is there any progress regarding this issue? I'm very interested because I'm using OSC on a phone without Google stuff. That means I'm sticking on version 1.9.9.6 because this is the one of the apk you put into dropbox. The latest version actually must be 2.something. So this is a bit unsatisfying and I hope you'll find a solution soon.

derSoe avatar Mar 23 '17 07:03 derSoe

Hello @derSoe , I'm sorry about the inconvenience, I've updated the build on dropbox. https://www.dropbox.com/s/fen2ibvyte10xhs/app-release-2.0.2.apk?dl=0 About fdroid I'cant promise anything because we have so many other priorities right now, and for the app to be accespted, we would have to find alternatives for a lot of components.

kalmanbencze avatar Mar 23 '17 09:03 kalmanbencze

Thank you for the fast response. Of course Fdroid compatibility is not a major issue for you. With an up to date version on Dropbox people like me can life for quite a while I think. If you announce new releases on Twitter or somewhere else we can update the app manually.

Maybe you should also update the link on the homepage to avoid further confusion ;)

By the the way, that whole thing you're doing here is pretty awesome! Keep up the good work!

derSoe avatar Mar 23 '17 10:03 derSoe

Updated the website, it should now download app-release-latest which is updated everytime after releases. Until now it was pointing, in a static static way, to 1.9.9.9 I think.

And thanks. :)

kalmanbencze avatar Mar 23 '17 11:03 kalmanbencze

No FDroid is a big concern and I certainly won't install any app from DropBox. If you have proprietary components in your app this means the app is not completely open source, so you should fix this anyway. It has a good reason that this is a requirement for FDroid applications.

rugk avatar Mar 23 '17 14:03 rugk

So because we're using Dropbox it's a spyware? Oh boy I wish there would be market where you could download verified apps safely... But seriously though, for the time being this would be the only alternative for people who don't use play services, and rest assured it's the same digitally signed apk. The only things keeping us from uploading to FDroid are the map sdk, the play services which we are using for some features of the app like Google login, the facebook api needed for Facebook login, and the crash reporting sdk from fabric. Removing all these from the source code leaves us with an app which has much less features and an app that we cannot provide support for. Not to mention another parallel branch to maintain. While there are more pressing issues, we have to prioritize our efforts, but putting the app on fdroid is something we eventually want to do.

kalmanbencze avatar Mar 23 '17 14:03 kalmanbencze

There are a couple of open source projects I know of what have created their own signed F-Droid repositories and distribute their APKs that way. On their websites they have a page with QR code and text giving the repository information (location, public signing key info, etc.).

It is easy to add those repositories into the F-Droid app and then you can easily install the project's signed APK on your phone and you are notified of updates, etc.

Basically, by adding the developer's repository to the F-Droid app you are telling the app (and phone) to trust the developer. If the developer is using libraries the F-Droid project doesn't like, no big deal as the F-Droid project is not building or signing the APKs. It also means that the developer controls what version is released and when it is released instead of the F-Droid project noticing a new release and getting around to maybe building it sometime.

n76 avatar Mar 23 '17 15:03 n76

So because we're using Dropbox it's a spyware?

No that does not matter. Would be the same for OneDrive, Google Drive or own website or so… It's just not really FLOSS, that's the point.

And I know a lot of projects who distribute builds without play services and not-using Facebook or Google login is not really a big deal and likely understood (or not used at all) by FDroid users. As for the fabric sdk, yeah, it's not a disadvantage for the user, but if you want to use such a thing switching to a FLOSS alternative might be a good idea.

rugk avatar Mar 23 '17 15:03 rugk

Yeah I know it's not the best way to distribute software, I was half joking, but until we have everything set up for an FDroid release its better than nothing I think.

kalmanbencze avatar Mar 23 '17 15:03 kalmanbencze

@kalmanbencze it's better than not beeing able to use the software (or have to install Play store). Thanks!

davidak avatar Mar 23 '17 16:03 davidak

FYI, this is where the discussion is taking place: https://gitlab.com/fdroid/rfp/issues/80

Currently the blockers are the JAR files at https://github.com/openstreetcam/android/tree/master/app/libs

nicolasmaia avatar Mar 29 '17 12:03 nicolasmaia

While it might be tempting to say "F-Droid isn't important" (and that may be true in terms of potential users for many other open-source/libre apps), in this case, of an app designed to allow contribution to a free/open street imagery database, the sort of users who are interested in contributing are much more likely to be using F-Droid (and avoiding Play etc.) than average, since there will be a big crossover in terms of principles.

I would install and use this app today if it were free of closed-source dependencies (and available as a consequence on F-Droid). Looking at the imagery in my area (one of the biggest cities in the world), even my contribution would probably increase the available imagery in my city by 10%.

If OSC were a project with the scale of contribution that OSM has, a handful of potential extra users wouldn't be a big deal. But from what I see on openstreetcam.org, it isn't. F-Droid users are much more likely to be contributors since they already believe in a similar set of principles (a shared/open commons) enough to be using it instead of Play.

/0.02

p.s., why was the bug title changed to FDroid? The project's called F-Droid.

smithfred avatar Apr 15 '17 12:04 smithfred

why was the bug title changed to FDroid? The project's called F-Droid.

BTW, I hate this syntax/spelling. Always get it wrong… (bad when you search for issues)

rugk avatar Apr 15 '17 12:04 rugk

I think you're absolutely right about F-Droid, I will try to elevate this issue, convince the people who need convincing.

kalmanbencze avatar Apr 18 '17 07:04 kalmanbencze

I have to agree with @rugk on many things here (oh, hi rugk, nice to see you here :smile_cat: ). While the selected Map SDK might be a thing harder to fix (even though there's a good pointer to a replacement above), one thing very easy to replace is the Dropbox. Why not simply attach the .apk to its corresponding release (on the releases/ page)? Not difficult to do, and much easier to find. If you need some help with that, please check the Github help on Creating Releases, where this is described in more detail.

Looking forward to find the .apk at the new location then :smiley:

IzzySoft avatar May 19 '17 18:05 IzzySoft

Hi @IzzySoft , the map sdk is being used because of company "politics" mostly, if it would be my call I would swap it out. Attaching the apk to the release would be ok, but since we're working on another repo, I need to set up an automated system for commiting here, but its complicated since not everything is open source, that is why there are so few releases marked on the project. Creating releases with the apk but not updating the code would be inconsistent. So yeah, it's complicated, it's ugly, it's what we have right now. I'll try (even harder than !!!1hard!1!!!) to make the release system before adding binaries inconsistently to releases.

kalmanbencze avatar May 20 '17 08:05 kalmanbencze

@kalmanbencze Conclusion: Having non-FOSS components in your app causes tons of trouble :shit:

Just let me know whenever you managed to attach an .apk here to the releases/ page (and think you will do so in the future). I could then setup my grabber so your app were available via my F-Droid compatible repo (where "compatible" means it works with the F-Droid client, not that it's compliant with the F-Droid FOSS definition: my compliance criteria are a bit laxer, considering my repo a complement to the official one and a compromise between missing out too much and having to revert to Playstore too often :stuck_out_tongue_winking_eye:)

IzzySoft avatar May 20 '17 11:05 IzzySoft

Could we finally also come back to discuss whether/how this app can be included in the official F-Droid repo?

rugk avatar May 20 '17 12:05 rugk

@rugk that would be the best thing, sure. Though reading the last post of @kalmanbencze this is rather unlikely:

not everything is open source, that is why there are so few releases marked on the project

points to more non-FOSS components which cannot be (easily) open-sourced.

we're working on another repo […] not updating the code [here at Github]

Afraid there's not much @kalmanbencze can do unless the company gets committed. In that context I share your mystification on why the app contains so much proprietary stuff if the goal is contributing to a FOSS project (no rant, just citing a fact).

IzzySoft avatar May 20 '17 12:05 IzzySoft