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

Support filtering by runtime #2750

Closed
ssokolow opened this issue Mar 21, 2024 · 11 comments
Closed

Support filtering by runtime #2750

ssokolow opened this issue Mar 21, 2024 · 11 comments

Comments

@ssokolow
Copy link

I have strong opinions on my UIs and, as a KDE user, I find the growing UI-design alienness and shrinking customizability of GTK apps to be a deal-breaker... and given how many of them there are on Flathub, that's a discouragement to using Flathub because of how many I have to middle-click and then triage via their screenshots.

As a proxy for filtering based on UI type which doesn't require packages be retrofitted with new metadata, please consider supporting filtering based on the runtime the application depends on, so I can just check org.freedesktop.Platform and org.kde.Platform and anything else non-org.gnome.Platform that shows up rather than feeling demotivated to check for new apps I might want.

@bbhtt
Copy link
Contributor

bbhtt commented Mar 21, 2024

You can do this by going to https://flathub.org/statistics and clicking the bar graph of the corresponding runtime.

It's not exposed in search or anywhere else though.

@ssokolow
Copy link
Author

ssokolow commented Mar 21, 2024

Discoverability aside, I see two problems with that which affect me personally:

  1. It doesn't appear to have a way to let me do version-independent filtering (or grouped "anything but" filtering, for that matter)
  2. It won't combine with Filter while browsing #1910 when that gets fixed.

Combined, those two make it more impractical than just accepting the demotivating inefficiency of performing a search/browse across all runtimes, middle-clicking a bunch of times, and then scrolling through my tab bar, closing the ones where the screenshots appear to show GNOME HIG influences.

(As much as I dislike Electron, I dislike the CSDs and CSD-related bugs that are leaking into things like Inkscape + KDE Breeze even more... especially since Electron can be mitigated somewhat by my once-a-decade CPU upgrade, which just happened.)

@razzeee
Copy link
Member

razzeee commented Mar 21, 2024

I don't think we want this.

In general, you should be fine searching whatever you're looking for and maybe adding a kde to the end. Most apps that are looking like that will have it somewhere in the metadata, otherwise they are irrelevant for you anyway.

@ssokolow
Copy link
Author

ssokolow commented Mar 21, 2024

But I don't want KDE, I want "not GTK". (or, more specifically, not gtk>=3.)

I'm fine with other toolkits as long as they can be made to look reasonably decent in the context of Breeze (eg. I have a kde_breeze.reg color scheme for Wine) and continue the UI design lineage started by Classic Mac OS and Windows 95.

@razzeee
Copy link
Member

razzeee commented Mar 21, 2024

IMO that's not possible anyway.

@ssokolow
Copy link
Author

Extending the existing filter UI so I can manually check every checkbox in the category except org.gnome.Platform would be an acceptable proxy.

@razzeee
Copy link
Member

razzeee commented Mar 21, 2024

Runtimes should be irrelevant for average users, so we shouldn't confuse them with that in our search UI.

@ssokolow
Copy link
Author

Call it "Ecosystem: KDE/GNOME/Other" if you want.

Failing that, is Flathub's API designed in a way where I could write a tool that performs a search, grabs metadata for each result, filters out any which use org.gnome.Platform, and then presents me with a PyQt QListWidget in icon-grid mode full of candidate tabs to open without getting blocked for excessive requests or would I need to do something like requesting the entire metadata database slowly over the course of a week and then caching it with the assumption that icons and runtimes never change?

@JakobDev
Copy link
Contributor

You can actually search for Runtimes. Just add the Runtime parameter to your search URL.

@ssokolow
Copy link
Author

ssokolow commented Mar 22, 2024

Also good to know but, again, I'm trying to search for "all runtimes except ..." so, unless I'm writing some kind of tool to run multiple searches automatically and then combine them for display, I don't see how that would help. (Or, if it supports multiple ORed-together filters, a tool to automatically grab the list of runtimes in use and build such a search.)

@razzeee
Copy link
Member

razzeee commented Mar 22, 2024

Call the search endpoint https://flathub.org/api/v2/docs#/app/post_search_search_post it also returns the used runtime

@razzeee razzeee closed this as not planned Won't fix, can't repro, duplicate, stale Jun 9, 2024
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

4 participants