Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Get Wire on F-Droid #5

Closed
YogliB opened this issue Jul 23, 2016 · 39 comments
Closed

Get Wire on F-Droid #5

YogliB opened this issue Jul 23, 2016 · 39 comments

Comments

@YogliB
Copy link

@YogliB YogliB commented Jul 23, 2016

Please get Wire on the F-Droid FOSS app store.

@feer921
Copy link

@feer921 feer921 commented Jul 25, 2016

Start the wire app,it shows me "Important update" ,crashed when click the "Download" button

@mvdan
Copy link

@mvdan mvdan commented Jul 25, 2016

At a first glance, blockers for our official repo:

  • Third party maven repo - url "https://dl.bintray.com/wire-android/third-party" (mavenCentral/jcenter/jitpack are allowed)
  • Use of play-services (non-free android lib)
  • I see api keys are missing in app/api-keys.properties.template

Seems like an easier way would be for Wire to set up their own F-Droid repo, like others did: https://f-droid.org/wiki/page/Known_Repositories

Instructions on how to set up a binary repo: https://f-droid.org/manual/html_node/Simple-Binary-Repository.html

@dev-rke
Copy link

@dev-rke dev-rke commented Jul 26, 2016

I'd also like to see wire on f-droid. :-)

@zuglufttier
Copy link

@zuglufttier zuglufttier commented Jul 27, 2016

F-droid would be very nice!

@mvdan
Copy link

@mvdan mvdan commented Jul 27, 2016

Stop giving +1 comments. This is what 👍 emojis are for.

@beerisgood
Copy link

@beerisgood beerisgood commented Jul 29, 2016

A F-Droid version without google service is a must!

@est31 est31 mentioned this issue Aug 2, 2016
@mrshankly69
Copy link

@mrshankly69 mrshankly69 commented Aug 16, 2016

Agree that a version that doesn't rely on Google Play Services for GCM would be very welcome and F-Droid would be the best place to publish it.

@vrms
Copy link

@vrms vrms commented Sep 6, 2016

+1

@someoneEsle
Copy link
Contributor

@someoneEsle someoneEsle commented Sep 24, 2016

@mvdan they already have a version that works without google play services on their website. I think (but I am not 100% sure) that that version is the equivalent of compiling the app from the github repository. Maybe they could get that version to F-Droid?

@mvdan
Copy link

@mvdan mvdan commented Sep 24, 2016

By all means the app can be included if it meets the inclusion policy, which basically is no non-free software.

@h-2
Copy link

@h-2 h-2 commented Sep 25, 2016

I am confused, they publicly said they have a version that works without Play. Is this rue or not?

@someoneEsle
Copy link
Contributor

@someoneEsle someoneEsle commented Sep 25, 2016

They do have that version, it's published regularly on their website. But so far they aren't putting it on f-droid

@MoSal
Copy link

@MoSal MoSal commented Sep 25, 2016

@someoneEsle

wire-android/build.gradle

Lines 120 to 124 in e5f08bb

// Play services
psBase : "com.google.android.gms:play-services-base:$playServicesVersion",
psGcm : "com.google.android.gms:play-services-gcm:$playServicesVersion",
psMaps : "com.google.android.gms:play-services-maps:$playServicesVersion",
psLocation : "com.google.android.gms:play-services-location:$playServicesVersion",

Are you sure they publish a build that does not depend on the Google Play Services library.
Where is that build?"

@someoneEsle
Copy link
Contributor

@someoneEsle someoneEsle commented Sep 25, 2016

It's here: https://wire.com/download/
If you download the APK, that should be the version that doesn't rely on Google-proprietary libraries. At least this is what I've always thought given their tweets

@mvdan
Copy link

@mvdan mvdan commented Sep 25, 2016

Let's focus on source code. Unless you can find source code that builds without play-services, talking about apks is going nowhere.

@MoSal
Copy link

@MoSal MoSal commented Sep 25, 2016

@mvdan Agreed.

@someoneEsle
Google Play Services are not disabled in that build.
You can see for yourself:

mkdir test_wire
cd test_wire
wget https://wire-app.wire.com/android/prod/wire-2.16.282.apk
unzip wire-2.16.282.apk
dexdump classes.dex -h | grep gms | less
@someoneEsle
Copy link
Contributor

@someoneEsle someoneEsle commented Sep 26, 2016

@rmader
Copy link

@rmader rmader commented Sep 26, 2016

If wire works with microG, wouldn't that be enough for inclusion in fdroid (with a big warning that one needs a gcm implementation)?
Libresignal and threema work great with it.

@mvdan
Copy link

@mvdan mvdan commented Sep 26, 2016

For that to be true, someone would have to patch and maintain a fork of the wire client with those.

@someoneEsle
Copy link
Contributor

@someoneEsle someoneEsle commented Sep 26, 2016

Why do you need a gcm implementation? The latest version should use websockets for notifications

@est31
Copy link

@est31 est31 commented Sep 26, 2016

@h-2
Copy link

@h-2 h-2 commented Sep 27, 2016

This is why I said that: https://twitter.com/wire/status/775616447976529920

Yeah, I asked in that thread, too, no answer :(

Can someone official please clarify if the websocket version requires non-free build dependencies or whether they were just included to give the option of using GCM? If the latter is the case, shouldn't it be trivial to add a build flag for a completely free build?

@hakonbo
Copy link

@hakonbo hakonbo commented Oct 4, 2016

Hi all,

sorry for slow response. I'll try to address the issues mentioned here.

The APK available to download from our web page is the exact same version as we release through Google Play Store. This direct download is there for people who for some reason are unable to access Google Play Store.

We do use Google Play Services in our app. This is used for GCM and for sending location messages. If your device doesn't have Google Play Services installed/available for Wire, Wire will still work, but GCM and sending location messages will not. We detect this and have a fallback solution using a websocket, so you will still receive notifications when receiving messages. This solution is most likely not as battery friendly as GCM though.

So for the original question, publishing Wire on F-Droid. At the moment we don't comply with the inclusion policy, as there are some dependencies that are not open source. We are certainly interested in getting Wire on F-Droid, but for the time being it will not happen.

It is on our (ever growing) TODO list and we will revisit this in the future.

Thank you all for your valuable input!

@sxiii
Copy link

@sxiii sxiii commented Dec 11, 2016

I would be super-happy if you manage to make clean app version that will work okay. I am ready to compile it myself if needed :)

@leedoyle
Copy link

@leedoyle leedoyle commented Jun 22, 2017

Any progress so far?

@Soundtoxin
Copy link

@Soundtoxin Soundtoxin commented Aug 21, 2017

Still wanting this.

@nextgenthemes
Copy link

@nextgenthemes nextgenthemes commented Sep 13, 2017

Question: If GCM is used how does the simple in browser app work without it then? Why can't it at least be a option?

Things like this really piss me off. Doing a App that actually competes with Signal and others and offers more features and yet again fucking Google play BS. The "security" of any app pretty much is thrown overboard by using Google servives. I use copperhead OS that comes without any Google Play and I do not plan to install them. And yes I know there are just empty messages send thought GCM or am I wrong about that?

@hex-m
Copy link

@hex-m hex-m commented Sep 20, 2017

@nextgenthemes: this issue was closed by @hakonbo because he says Wire does have a fallback that is used on devices without play services. You may just want to try and install Wire on your device.

The f-droid/free software issue is continued here: #233

@nenadandric
Copy link

@nenadandric nenadandric commented Jan 15, 2018

+1 for F-Droid app. It is the only thing left to be done in order to use Android without Play Store

@fungs
Copy link

@fungs fungs commented Nov 29, 2018

Maybe, if you (Wire team) would embrace the technical community a little more, you would get help with some of the things which are important to the community but seemingly low priority to you.

BTW @hakonbo : There is a fallback for message push notification without GCM but apparently not for location services. To send someone a location, I open a navigation app and share the location from there. That's sad. How difficult can it be to obtain a location from the device without relying on Google?

@eighthave
Copy link

@eighthave eighthave commented Nov 29, 2018

@fungs since you don't find it difficult to do, it sounds like you're the best candidate to do the work 🙂

@fungs
Copy link

@fungs fungs commented Nov 29, 2018

@eighthave I would but I'm not a mobile dev. I would allocate other resources if necessary. It's all about lowering the barriers for participation, apparently just opening the source code is not enough. But this is not a discussion board...

@trymeouteh
Copy link

@trymeouteh trymeouteh commented Apr 3, 2019

Is this still in the works! I want to use Wire on my LineageOS devices.

@barkingbandicoot
Copy link

@barkingbandicoot barkingbandicoot commented Apr 21, 2019

Is this still in the works! I want to use Wire on my LineageOS devices.

Yes, me also. It does work well in Havoc os though! 🤷
In Lineage for microg, if you disable mircog it works. Not a solution though.
It seems that with microg in LOS it reads the GCM replacement of microg, drops the fall back "Maintain connection to server" toggle in settings, but cannot utilise the GCM replacement of microg!

@JavaZauber
Copy link

@JavaZauber JavaZauber commented Jul 14, 2019

Android (AOSP) can provide location via LocationProvider. It works okay for navigation.
It's not as well-engineered as the properitary google FusedLocationProvider which also uses cell tower triangulation and properitary google data in order to make good guesses.
Google has an interest in making their APIs better than the open source APIs and they can't be blamed for that.

Current best practice is to use the most suitable provider available on the device. Using the open source Location provider as a fallover guarantees that location will work on any device. When the user has the google location API installed that will be used, if not then the open source location will be used.
I never had trouble with this approach on my LineageOS devices. I also tested this on phones with google APIs.

Notice: it's annoying to use different APIs for the same task. The location API is not the only one which is affected by the API policy of Google. I recommend using a library which acts as an abstraction layer for the various APIs. There are already ready-to-use wrapper librarys out there.

Summary:
The Location API is not really a hindrance. I solved this sufficiently for my use case within an afternoon. This book has an excellent chapter on location API.
Disclosure: I am not affiliated with the authors or distributors of "The Busy Coder's Guide to Android Development" in any way. I have bought and read it and it's really good.

@EdaNano
Copy link

@EdaNano EdaNano commented Nov 9, 2019

Hi, anyone knows why this issue is closed? I thought that it was on the TODO list (see official comment up #5 (comment)).

Is this still the case?

@pepper-jk
Copy link

@pepper-jk pepper-jk commented Nov 9, 2019

Hi, anyone knows why this issue is closed?

Some maintainers close issue to keep the bug tracker "clean", which kinda defeats the purpose of a bug tracker imho. Since there was no official response to why they closed the issue, I'm assuming that is the case.

However they left the "new" issue regarding this topic open.

@EdaNano
Copy link

@EdaNano EdaNano commented Nov 9, 2019

Oh thanks for the new issue link, I missed it :)

However they left the "new" issue regarding this topic open.

@makingthematrix
Copy link
Contributor

@makingthematrix makingthematrix commented Jan 9, 2020

We're trying to clean up our GitHub issues a bit. This one will stay closed. Please see #1903 for discussion.
However, I can already tell you that currently we have no plans to remove FCM.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
You can’t perform that action at this time.