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

Release on F-Droid #471

Open
alexanderadam opened this issue Feb 14, 2021 · 19 comments
Open

Release on F-Droid #471

alexanderadam opened this issue Feb 14, 2021 · 19 comments

Comments

@alexanderadam
Copy link

I was searching for SmartTubeNext on F-Droid but I was unable to find it.
IMHO the license should be fine but I don't know about the dependencies.

It would be great if you could make SmartTubeNext available on F-Droid.

PS: Thank you for creating SmartTubeNext 🙏
PPS: If you are considering to publish SmartTubeNext on F-Droid, you probably might be interested the FAQ and maybe this guide
PPPS: I'm not an Android developer or related to F-Droid. So I don't know about technical limitations in case there are some.

@IzzySoft
Copy link

IzzySoft commented Jun 9, 2021

Some showstoppers there. Here's the report from one of the library scanners:

Libraries detected:
-------------------
* Android Support v4 (/android/support/v4): Development Framework
* Arch (/androidx/arch): Utility
* AppCompat (/androidx/appcompat): Utility
* Browser (/androidx/browser): Utility
* Androidx Core (/androidx/core): Utility
* Documentfile (/androidx/documentfile): UI Component
* Exifinterface (/androidx/exifinterface): Utility
* Leanback (/androidx/leanback): Utility
* androidx.legacy (/androidx/legacy): Utility
* Lifecycle (/androidx/lifecycle): Utility
* Loader (/androidx/loader): Utility
* Media (/androidx/media): Utility
* Preference (/androidx/preference): Utility
* Print (/androidx/print): Utility
* Room (/androidx/room): Utility
* Sqlite (/androidx/sqlite): Utility
* Vectordrawable (/androidx/vectordrawable): UI Component
* WorkManager (/androidx/work): Utility
* Glide (/com/bumptech/glide): Utility
* Crashlytics (/com/crashlytics): Mobile Analytics Tracking
* Firebase Data Transport (/com/google/android/datatransport): Utility NonFreeNet
* ExoPlayer (/com/google/android/exoplayer2): Utility
* Google Mobile Services (/com/google/android/gms): Development Framework NonFreeDep
* Google Core Libraries for Java 6+ (/com/google/common): Utility
* Firebase (/com/google/firebase): Utility NonFreeNet,NonFreeDep
* Firebase Analytics (/com/google/firebase/analytics): Mobile Analytics Tracking
* Google Gson (/com/google/gson): Utility
* Disk LRU Cache (/com/jakewharton/disklrucache): Utility
* Jayway JsonPath (/com/jayway/jsonpath): Utility
* OkHttp (/com/squareup/okhttp): Utility
* Dagger (/dagger): Utility
* RxJava (/io/reactivex): Utility
* JavaX Dependency Injection (/javax/inject): Utility
* json-smart-v2 (/net/minidev/json): Utility
* OkHttp okio Framework (/okio): Utility
* Apache Commons (/org/apache/commons): Development Framework
* ASM (/org/objectweb/asm): Utility
* Reactive Streams (/org/reactivestreams): Utility
* Simple Logging Facade for Java (/org/slf4j): Utility
* dnsjava (/org/xbill/DNS): Utility
* Retrofit (/retrofit2): Utility

Offending libs:
---------------
* Crashlytics (/com/crashlytics): Tracking
* Firebase Data Transport (/com/google/android/datatransport): NonFreeNet
* Google Mobile Services (/com/google/android/gms): NonFreeDep
* Firebase (/com/google/firebase): NonFreeNet,NonFreeDep
* Firebase Analytics (/com/google/firebase/analytics): Tracking

5 offenders.

The 5 offenders are not permitted at F-Droid (and before you ask: I wouldn't take it into my repo either unless at least Crashlytics and Firebase Analytics are removed; 5 non-free libraries is a bit much for free/libre software).

@theScrabi
Copy link

Sounds like this needs a post patched version to be releasable on fdroid.

@theScrabi
Copy link

Ah no. Apparently you have to implement some parts yourself in order to be able to compile this, as not the whole source code of the app is publicly available:
#622

@theScrabi
Copy link

Try this branch. It compiles, but does not run propperly:
https://github.com/theScrabi/SmartTubeNext/tree/fdroid

@DraconicNEO
Copy link

DraconicNEO commented Aug 16, 2021

Sounds like this needs a post patched version to be releasable on fdroid.

Also Fdroid doesn't have official Support for Android TV (Leanback) which is too bad.

@theScrabi
Copy link

That does not matter. You can still install apps from adb or use a different fdroid client ;)

@DraconicNEO
Copy link

That does not matter. You can still install apps from adb or use a different fdroid client ;)

Although if it were put on Fdroid I imagine a lot of Mobile (Phone & Tablet) users would download it then complain that it doesn't work correctly, without understanding that it's for TV devices. This is because Fdroid is targeted towards mobile users more so than TV users.

@theScrabi
Copy link

theScrabi commented Aug 25, 2021

The fdroid client is targeted for mobile users yes, but Fdroid is primarily a repository of free/open source software, which is not and should not be bound by how you use the applications or where they will run. This satisfies the reason to add the app there.

Also there is something like an app description in fdroid so you can tell the user that it is ment for TV use ;)

@IzzySoft
Copy link

users would download it then complain that it doesn't work correctly, without understanding that it's for TV devices.

To mitigate that fear: what is the minimum screen size of an Android TV device? Assuming there's none for the pockets of your trousers, you could set supports-screens to omit "small" and "normal", just featuring "large" and "xlarge", so it wouldn't even offered to be installed on phones (and tablet users are few in comparison). Further, are there any features not (or rarely) supported by phones but always by TVs? That's what uses-feature is for. If you declare such a feature there, the app will only be offered to devices which can supply it.

Also there is something like an app description in fdroid so you can tell the user that it is ment for TV use ;)

And there's that 🤣 As you might argue some folks won't read that (the very same folks won't read it anywhere else then either), there are things like emphasis. So you could say as first thing Android TV only!!!11!! (using <b>Android TV only!!!11!!</b>). Those who still miss it then cannot be helped anyway…

@DraconicNEO
Copy link

DraconicNEO commented Aug 26, 2021

To mitigate that fear: what is the minimum screen size of an Android TV device? Assuming there's none for the pockets of your trousers, you could set supports-screens to omit "small" and "normal", just featuring "large" and "xlarge", so it wouldn't even offered to be installed on phones (and tablet users are few in comparison). Further, are there any features not (or rarely) supported by phones but always by TVs? That's what uses-feature is for. If you declare such a feature there, the app will only be offered to devices which can supply it.

I don't know if Android TVs have a Minimum "screen size", All depends on the size of the TV (which obviously isn't known by the manufacturer). Also if you include users of MXQ and MBOX devices you can forget about those methods since it will register as a tablet or even a Phone thus you'll exclude those devices which unfortunately are the Majprity of Android TVs out there.

(I'm not saying they're good at all, I've owned on, they are lousy TV devices that need a Mouse and keyboard to be even remotely usable. You Should never buy them, get something decent).

@eighthave
Copy link

There is a working proof-of-concept for F-Droid on Android TV:
https://gitlab.com/fdroid/fdroidclient/-/merge_requests/685

It would be great to see that work progress further. I think the cleanest development path would be to take that merge request and make a development fork. We can add that development fork to fdroiddata/f-droid.org so that people can easily use releases. Then as that gets finalized, the changes can be split out into patches and merged into fdroidclient.

@Hund
Copy link

Hund commented Sep 5, 2021

It's sad to see that this client contains that account of crap and that's it's not fully open source. Do we have any forks or is the developer perhaps interested in fixing this?

I would love to see this or a similar client on F-Droid.

@theScrabi
Copy link

theScrabi commented Sep 6, 2021

Maybe there is a small chance of getting this to work using the NewPipeExtractro. Maybe this could be possible if someone wrote a wrapper that behaves exactly like the MediaServiceCore this way the fronted of SmartTubeNext would still be usable. Some things like login and account support would have to be removed however.

@DraconicNEO
Copy link

Maybe there is a small chance of getting this to work using the NewPipeExtractro. Maybe this could be possible if someone wrote a wrapper that behaves exactly like the MediaServiceCore this way the fronted of SmartTubeNext would still be usable. Some things like login and account support would have to be removed however.

Not worth it, accounts are kind of a vital feature of SmartTubeNext. People want an Ad free YouTube TV client that otherwise functions the same as regular YouTube TV, not a NewPipe TV client.

@krodelabestiole
Copy link

Although if it were put on Fdroid I imagine a lot of Mobile (Phone & Tablet) users would download it then complain that it doesn't work correctly, without understanding that it's for TV devices. This is because Fdroid is targeted towards mobile users more so than TV users.

I think this should be a question of the past : we invented responsive design and on the same way I think any application built for android should work on any device. It's called convergence and I have no doubt it will happen eventually. Though we might not have the use for a calculator or a calendar on a TV (it might still be the case with mouse and keyboard plugged in), it makes perfect sense for both an app store and a video player, and it's absolutely doable. I guess it's mainly a matter of having the right shortcuts on a remote control.
On this matter F-droid official client is still not great to use on a TV but it already works.

I wonder what's the use of this proprietary bits ? Look mostly related to Google analytics... Are they mandatory ?

@bt4ibwem8
Copy link

F-droid official client is still not great to use on a TV but it already works.

Which f-droid client does work best on ATV?

@KruyKaze
Copy link

F-droid official client is still not great to use on a TV but it already works.

Which f-droid client does work best on ATV?

Neo store does auto updates.

@Linkinsoldier
Copy link

Any hope this night be solved any time soon?

@ncodee
Copy link

ncodee commented Apr 25, 2024

Any updates on this please?

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

No branches or pull requests