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

F-Droid inclusion #17

Closed
shuvashish76 opened this issue Aug 15, 2022 · 31 comments · Fixed by #62
Closed

F-Droid inclusion #17

shuvashish76 opened this issue Aug 15, 2022 · 31 comments · Fixed by #62

Comments

@shuvashish76
Copy link

shuvashish76 commented Aug 15, 2022

Would you consider publishing this app on F-Droid please?
BTW this project comes under which license?

@Kounex
Copy link
Owner

Kounex commented Aug 15, 2022

I will take a look at how the process looks like to upload the app to F-Droid and see if it's feasible! :)

License is GPL 3.0

@shuvashish76
Copy link
Author

@licaon-kter
Copy link

licaon-kter commented Aug 15, 2022

Which Flutter version exactly? Neither 2.10.5 nor 3.0.5 are usable, eg. Because obs_blade requires SDK version >=2.17.1 <3.0.0, version solving failed.

@Kounex
Copy link
Owner

Kounex commented Aug 15, 2022

Version 3.0.5 should work (now) - was playing around with the master branch version for a while since it has some interesting merges which are not present in stable yet. Updated a dependency which was stopping you from using the stable version. Pull again and let me know if you are still not able to build! :)

@licaon-kter
Copy link

Oops, non-FOSS dependency:

$ gradle :app:dependencies --configuration releaseRuntimeClasspath
...
+--- project :in_app_purchase_android
|    +--- androidx.annotation:annotation:1.0.0 -> 1.4.0 (*)
|    +--- com.android.billingclient:billing:3.0.2
|    \--- io.flutter:flutter_embedding_release:1.0.0-e85ea0e79c6d894c120cda4ee8ee10fe6745e187 (*)

ref: 8f0372d#diff-8b7e9df87668ffa6a04b32e1769a33434999e54ae081c52e5d943c541d4c0d25

@Kounex
Copy link
Owner

Kounex commented Aug 15, 2022

Ah yeah true! I wanted to add an option to enable users to support me and unfortunately Google Play Store is very strict on purchases in apps which are not handled through the store (got rejected multiple times). That's why I implemented it through actual in app purchases.

I could add a version as a branch which does not have this - would take some time though since it's nested in the app.

Will see what's possible in the future! :)

@ghost
Copy link

ghost commented Nov 4, 2022

I just attempted to install via Aurora Store and it failed due to a missing library. I'm guessing that's related to the above, but I thought maybe it's worth mentioning that it seems the above dependency doesn't just exclude the app from listing in FOSS app stores, it excludes it from installing on devices without google services installed.

@licaon-kter
Copy link

Not sure that's the case, the lib will come bundled.

Please post the whole stacktrace of the crash (eg. Via logcat or the app Scoop)

@ghost
Copy link

ghost commented Nov 5, 2022

I'm really sorry, but I can't do that. The phone isn't rooted so I need to use ADB and I can't install it on this machine.
I have another machine I could use to do that, but no access to it right now.

The exact error I'm getting during installation is:
Incompatible app
INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=113

Perhaps this is totally unrelated to the above, in which case, my apologies.

@licaon-kter
Copy link

Scoop does not need root.

The error above sounds like you try to install the wrong APK.

Which device you have? Android version? Link the APK exactly.

@ghost
Copy link

ghost commented Nov 5, 2022

Thanks mate and again I'm sorry if I'm headed down the wrong path here. These things seemed related but I'm less confident of that, now. Please feel free to tell me to stop hijacking and go make my own issue, if I'm doing that.

Scoop doesn't need root but does need me to use ADB to grant permissions to read the logs.

The device is a Galaxy S5, running LineageOS 18.1 (Android 11). I don't have the APK itself, but use Aurora Store to open the google play store link from the web, and then tap the install button on the app. If you know of a non-shady site to download the APK (I saw many but don't know what's safe or not) , I could try that.

@IzzySoft
Copy link

IzzySoft commented Nov 25, 2022

While F-Droid inclusion is waiting (above issues), mind attaching the APK to your tagged release? I could meanwhile include them with my repo then (a single non-free dependency like the billing client here is tolerated with my repo).

@IzzySoft
Copy link

Now listed here. NonFreeDep + NonFreeNet because of the BillingClient (see above).

@Kounex
Copy link
Owner

Kounex commented Jan 21, 2023

Sorry, been on my list for quite a while now and did not have the chance to get to it so far.

The APK I released and tagged is an old version only working with the old WebSocket API since some users still had to rely on an old OBS version which is not capable of the new API - so not actually suitable for a broad release.

I think I will be able to create a branch and therefore a release which excludes the Google services in the next days, hopefully 😅

@IzzySoft
Copy link

Oops… Thanks for the context, @Kounex! As soon as there's a new tag with an APK attached, my updater should have fetched it within 24h then.

@Kounex
Copy link
Owner

Kounex commented Jan 21, 2023

It's up! Tagged with the current version (3.2.0) - still need to fiddle around with the GitHub action but at least works for now.

If someone has suggestions or recommendations, would be lovely! 😊

Let me know if this release works for the inclusion in F-Droid and other sites!

@IzzySoft
Copy link

It's up!

Yes, I've noticed with surprise as my updater notified me. Didn't expect it that soon, tapping my hat!

Let me know if this release works for the inclusion in F-Droid and other sites!

Good you remind me of that 🙈 See for yourself in the "Packages" section of your app's listing with my repo: no offenders to be seen, so I'll now remove the AntiFeature flags (done; effective with the next sync around 7 pm UTC).

Cannot say for 100% it meets all criteria – but all I can see looks good. And the remaining "guesses" we can only figure once you've tried. So if you wish for F-Droid.org, I'd say go ahead and open a RFP (request for Packaging) 🤩 See you there then (disclosure: I'm one of the maintainers there).

@ghost
Copy link

ghost commented Jan 22, 2023

I believe you've sorted out the requirement for the Google services, sadly no flutter apps work without them, and I knew this was one as soon as I opened the app and saw the graphical glitches that make it unusable, so I can't be sure. :(

Edit: Link to the issue in question: flutter/flutter#105093

F

@licaon-kter
Copy link

@xcasxcursex there's no connection between Flutter apps in general and Google Services. If some apps need them that's one thing, eg. Flutter apps in F-Droid don't need them.

@ghost
Copy link

ghost commented Jan 22, 2023

@xcasxcursex there's no connection between Flutter apps in general and Google Services. If some apps need them that's one thing, eg. Flutter apps in F-Droid don't need them.

Sorry I tried to spare you the boring details and only succeeded in confusing matters. To elaborate: When I flash this phone with all the google stuff, I don't suffer this issue, it's only without it, that flutter apps do this. I've seen the linked issue and am aware of the (theoretical) root cause.

As a result of this flutter bug when my phone is running this android config, I cannot confirm or deny whether the matters I discussed above are resolved... but they certainly appear to be, as I am no longer receiving the errors I was before, and can install and run the app, just, I cannot use it because the UI has gone nuts, so I can't post "hey, you fixed it, thanks" :)

@licaon-kter
Copy link

So you install Flutter apps from F-Droid and you see the issue everytime?

@ghost
Copy link

ghost commented Jan 22, 2023

So you install Flutter apps from F-Droid and you see the issue everytime?

I don't install many apps but I'm three for three, so yes :( Kinda makes sense if it's a driver incompatibility. Apparently flutter 2.x works, but I haven't tried to test it.

@IzzySoft
Copy link

Being one who does reviews on F-Droid inclusions (before MRs are merged): I cannot remember a single Flutter app I've reviewd and approved that didn't work. And I didn't approve any app that came with GServices. So I cannot follow your argument, @xcasxcursex – do you have any examples? That said, I got the first report back from someone who just installed the latest build (which arrived in my repo yesterday), being happy that now finally it works – which contradicts your argument.

@Kounex
Copy link
Owner

Kounex commented Jan 22, 2023

Affected users in the linked issues are all using LineageOS - you using it as well @xcasxcursex ?

Probably nothing I can do about it unfortunately. Next week is the Flutter Forward event and I kinda guess and hope that Impeller (the new rendering engine replacing Skia) gets to a useable state then. Maybe Impeller tackles the rendering problem! :)

@ghost
Copy link

ghost commented Jan 22, 2023

which contradicts your argument.

There is no argument here, I'm just reporting back with my results testing the package... which are that I don't have any. I mention the flutter bug only to explain why I don't have any result here, so that it will be understood that the failure on my phone should not be considered a failure here, and that my null result can be ignored (and does not contradict any reports that it works).

LineageOS - you using it as well

Yep.

Probably nothing I can do about it unfortunately.

Not unless you also are a flutter contributor hahah. Jokes aside, no, I don't expect anything of you here. I'm just explaining why I can't 100% confirm that this fix worked.

@Kounex
Copy link
Owner

Kounex commented Jan 22, 2023

Let's see what's coming up! Impeller might help as mentioned before or maybe the bug gets addressed (although there is not a lot of traction in the linked issue)

Using a Flutter version prior to 3 seems to work as well but unfortunately my code is too intertwined with features and changes made along the way so I can't build it with 2.X - sorry!

@ghost
Copy link

ghost commented Jan 22, 2023

sorry

Please, don't be! I really appreciate your taking the time to make this work with FOSS setups. My future devices will be running this for sure :)

@IzzySoft
Copy link

May I kindly ask where we stand here? The RFP is still waiting to be processed. Last issuebot report also mentions missing Fastlane structures, I don't see they have been added here yet; if you want I can open a PR with them from what is set up with my repo, @Kounex. The dependencies discussed above is a different question that also needs to be solved before we can process the RFP further.

@Kounex
Copy link
Owner

Kounex commented Apr 26, 2023

Wasn't able to work on that, sorry! I managed to squeeze in some time for today, so I will see what's possible. I will set up the Fastlane configuration for Android first. The foss branch should have all non-foss dependencies removed. How should I proceed with the RFP once I think we are good to go?

@IzzySoft
Copy link

How should I proceed with the RFP once I think we are good to go?

Just give us a ping here (and maybe "over there" to make sure it's not missed) so we send the bot again, have a look ourselves – and see how to proceed from there. Thanks a lot!

@qwertychouskie
Copy link

Just want to pitch in my support here. This app looks cool, hopefully it will help make managing my event streams easier.

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

Successfully merging a pull request may close this issue.

5 participants