When a new or relatively nontechnical user uses Discover to search for an app they know exists (like VLC, or Chrome, or TeamViewer) which just happens to not be in any configured repos due to distro packaging policies or lack of packaging resources, Discover says "Nothing found" and the user is left thinking one of two things:
"Man, Discover sure is stupid, it can't even find $APP!"
"Wow, this Linux thing sucks, they don't even have $APP!"
Neither is true, but by not showing the user the app they expect, Discover inadvertently creates these impressions in their minds, because they are not familiar with the concept of divergent and political distro packaging policies--and frankly, they probably don't care. As a result, Discover and KDE look stupid, and FOSS environments are tarnished in the user's mind. This user knows that the app in question exists, and they want to use it, so what are they going to do next? Search the web for it, just like they did on Windows or macOS, which is where they found it last time they needed to install it.
This commit attempts to improve the situation by having Discover show an extended message that helps to explain the situation in this case, and directs users to the web with a helpful button they can click on to perform a DuckDuckGo search for "Linux $SEARCH_TERM". This accomplishes several things:
- It helps the user understand that Discover isn't at fault here
- It blame-shifts the problem onto distros
- It makes Discover seem helpful and friendly for assisting the user in doing what they were going to do next anyway (search the web for it)
- It provides a warning that apps found on the web are more risky than apps in repos, as a simple CYA
- Introduces the concept of a non-Google search engine, planting the seed in the user's mind that it's possible to search the web without Google, in case they didn't already know this
Here's how it looks: