vinifmor / bauh

Graphical user interface for managing your Linux applications. Supports AppImage, Debian and Arch packages (including AUR), Flatpak, Snap and native Web applications
zlib License
959 stars 71 forks source link

There is no way to search through filtered applications/software that isn't installed without providing a search query #245

Open Templayer opened 2 years ago

Templayer commented 2 years ago

The filters do not seem to allow me to search through software that hasn't been installed if I don't type anything in the search input.

Example:

image

I wish to get a list of all available compression tools in bauh. I don't know the name of the compression tool that I'm going to need, as that is why I need them listed, so I cannot put anything in the search input. Toggling "App" doesn't do anything in this case.

Also, I tried inputting just whitespace into the search input, but that didn't work.

And I think I just managed to bork it.

First, I tried using "-" in the search input, which did partially get me the result I needed, but the filters were unset.

image

So I've tried setting the filter to compression software again.

image

The Installed button is there, the Installed filter checkbox is there and it is unchecked, yet it contains only installed software!

Templayer commented 2 years ago

PS: Unless there is no Compression tagged software that has a "-" in its package name that I don't have installed. Which I don't think is the case.

vinifmor commented 2 years ago

@Templayer , all the search is provided by the packaging technology back-ends (flatpak, aptitude, ...). So, if nothing is found when your search for "-", is because they did not find matching packages.

About filtering non-installed packages: it is working perfectly on my end (category, name, type, installed)

Templayer commented 2 years ago

@vinifmor I don't think we understand each other.

Searching for "-" DOES find all sorts of applications that are not installed. As shown in my printscreens (please look at them again!). But searching for "-" removes any other filter. If I THEN set another filter (like a category), it lists all the installed applications ONLY, even though the "Installed" checkbox is unchecked!

About filtering non-installed packages: it is working perfectly on my end (category, name, type, installed)

Very well. Please provide a walkthrough on how to make bauh list ALL Compression software, that is not installed. The "Installed" filter and button are not available if the search input is not given.

image

What should I do next? What should I click on the printscreen given? What should I input? Elaborate, please.

Templayer commented 2 years ago

@vinifmor After updating to a new unreleased version ( https://github.com/vinifmor/bauh/issues/242 ) , the filters are now working correctly!

image

OK, I spoke too soon. I've managed to bork them again. Looks like there is a specific trigger condition.

Found it - the filter "Category" is bugged - while the Application/Software type filter (Flatpack etc.) works as intended (presumably - filtering either both installed and not installed software if the Installed checkbox filter is unchecked or only installed ones if it is checked), the "Category" filter always acts as if the Installed checkbox filter is checked even if it isn't.

I can record a video if you don't believe or understand me.

vinifmor commented 2 years ago

The "Installed" and "Apps" checkboxes don't ignore their opposite meaning. Their function is to provide a quick filtering for their meaning. Is that the confusion ? If so, I can add some tooltips.

Templayer commented 2 years ago

My point is that the App Type filter (flatpack for example) and the Category filter act differently!

If App Type is defined in its filter, then it shows both installed and not installed (without checking the Installed checkbox). If Category is defined in its filter, then it ONLY shows installed (no matter what the Installed checkbox state is).

They need to act the same way.

I'm going to have to record a video during the weekend... to show you what I mean.

Basically, it is currently absolutely and completely impossible to use the Category filter AND see non-installed apps in the list.

Please make me a printscreen where you have the category filter used (a category is selected there) and the list shows apps that are not installed. Please. Please.

vinifmor commented 2 years ago

Perhaps the software you are looking for is not categorized ? Not all of them are.

Here is a working example (software properly categorized):

1) Searching for "database" (displaying only 50/864): bauh_search

2) Applying the "Development" category filter (displaying both installed and not installed software as expected -> 12/864): bauh_search_dev_category

2) Applying the "Installed" filter (only DBeaver was displayed -> 1/864): bauh_search_dev_category_installed

vinifmor commented 2 years ago

Here is an example of a search that didn't return categorized software (the category filter is not even displayed) bauh_search_non_categorized

Probably in your case some of the software returned were categorized, but the Flatpaks returned were not.

Templayer commented 2 years ago

You are completely correct. And I was completely wrong. I wasn't aware that some applications weren't categorized. (and I've just checked all the comments in this Issue and it seems like I wasn't told that, nor does the application say that anywhere)

Maybe a Category column is in order? It is a little bit silly to have a filter for something that the list doesn't even show. :P

Also, there is still that issue of not being able to "browse" all applications (installed and non-installed) without using that fulltext input (supertux in your latest printscreen). Just checked the comments here and I think you never answered that. It might just be that I'm missing some kind of a catch.

While we are at it, why is development twice in the filter?

image

And Network? (and there are going to be more of them, presumably. I think I also saw email twice, but in different spots)

image

Is it because two app types use the same name for a category? If that is the case, shouldn't those get consolidated?

vinifmor commented 2 years ago

Just to clarify: the upper "Search" bar asks the back-ends to perform a search based on the words you typed. The filters are used to perform sub-searches within the returned results (the back-ends do not interfere, just the UI). You would have to use the "name" filter for your use case.

About the categories: they should have been merged. It is probably a separate issue.

Another one: the "Installed" filter should not be displayed f there are no installed applications displayed (as you mentioned)

Templayer commented 2 years ago

Just to clarify: the upper "Search" bar asks the back-ends to perform a search based on the words you typed.

And do they support searching for nothing, i.e. browsing everything?

vinifmor commented 2 years ago

Sorry for the late reply. It is not possible to search for an empty String. Some back-ends don't support this (probably because thousands of packages would be returned), so bauh does not even proceed with the call.

Templayer commented 2 years ago

And there isn't a special way to get all packages? For example, those that would support searching for an empty string would use that, while for those that don't support it a different method to obtain all packages would be used instead.

It just feels weird to me that the packaging mechanisms don't have some kind of a master index that could be browsed. Not common to each other, of course. But each of them individually should have something like that. :-S

Let me try to put my two cents into this...

Debian supports it, I was able to get a list of all packages from there. While specifying what I presume is the debian version codename: https://packages.debian.org/buster/allpackages

Flatpacks seem to be browsable to "all" - https://flathub.org/apps/category/All

Aur seems to be doable at a first glance - https://bbs.archlinux.org/viewtopic.php?pid=1978090#p1978090 which leads to: https://wiki.archlinux.org/title/Arch_User_Repository#How_can_I_obtain_a_list_of_all_AUR_packages?

After some fiddling, I think I might have managed to list all snaps in a rather hilarious manner. By using two apostrophes '. Tried quotation marks at first, but those didn't work. It's weird that I can search for an empty string like that (two apostrophes), but not by searching with nothing in the search input via web. https://snapcraft.io/search?q=%27%27

AppImageHub can browse all AppImages - https://www.appimagehub.com/browse and https://appimage.github.io/apps/

vinifmor commented 2 years ago

bauh doesn't use these interfaces for querying. Most of the extensions are associated with an official back-end application.

Templayer commented 2 years ago

Maybe in this specific instance it should. :^)

But it is a lot of work. Maybe you could just ask them to provide methods in their back-end applications for this and see if they respond?