Kounex / obs_blade

Make use of the OBS WebSocket Plugin (https://github.com/obsproject/obs-websocket) and control your stream

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

F-Droid inclusion

shuvashish76 opened this issue · comments

commented

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

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

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.

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! :)

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

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! :)

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.

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)

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.

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.

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.

commented

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).

commented

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

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 😅

commented

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.

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!

commented

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).

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

@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.

@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" :)

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

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.

commented

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.

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! :)

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.

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!

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 :)