Bug 474723

Summary: Group items into "user-installed" and "system-installed" sections
Product: [Applications] Discover Reporter: Beyuum <az123azer>
Component: Installed pageAssignee: Plasma Bugs List <plasma-bugs>
Status: CONFIRMED ---    
Severity: wishlist CC: aleixpol, nate
Priority: NOR    
Version: 5.27.8   
Target Milestone: ---   
Platform: Fedora RPMs   
OS: Linux   
See Also: https://bugs.kde.org/show_bug.cgi?id=423344
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Beyuum 2023-09-20 08:48:51 UTC
SUMMARY
***
in the installed apps page there is no any type of filter. what is installed by the user and what is per-installed.
***

STEPS TO REPRODUCE
1. open Discover
2. go to installed page

OBSERVED RESULT
list of all the apps on the system.

EXPECTED RESULT
filter to show only the apps the user installed. 

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: 5.27.8
KDE Frameworks Version: 5.109 
Qt Version: 5.15.10
Comment 1 Nate Graham 2023-09-20 19:14:27 UTC
It's a good idea, but the devil's in the details, and collecting this information in a way that's accurate is tricky.

For example:, what specifically does "installed by the user" mean?
1. Only apps installed through Discover?
2. Apps installed through Discover, or the command-line using your package manager, or Flatpak or Snap?
3. Apps installed  by another app (e.g. Dolphin lets you install Konsole to gain access to its Terminal panel)?
4. Something else?
Comment 2 Beyuum 2023-09-22 16:36:15 UTC
(In reply to Nate Graham from comment #1)
> It's a good idea, but the devil's in the details, and collecting this
> information in a way that's accurate is tricky.
> 
> For example:, what specifically does "installed by the user" mean?
> 1. Only apps installed through Discover?
> 2. Apps installed through Discover, or the command-line using your package
> manager, or Flatpak or Snap?
> 3. Apps installed  by another app (e.g. Dolphin lets you install Konsole to
> gain access to its Terminal panel)?
> 4. Something else?

sorry. I'm new on Linux and KDE. idk what is snap or Dolphin is. I'm came from Linux mint.
but for the details the more filters the better. in mint soft manger show only what the user installed in the system (both Packages and Flappak) even if they are from deb file or from the Command-line. there is no option to show all what is pre-installed with the OS (which I'm not fan of).  but is convenient for the user (like me) to browse them in ez.  
I do forget fast what I installed in the OS, so it helps me remember so I can remove them when i dont need them anymore.
Comment 3 Nate Graham 2023-09-25 19:25:10 UTC
I hope you're enjoying Linux and KDE so far!

As you've no doubt observed, sometimes things aren't as straightforward as we'd prefer. :) In this case, to offer the feature, we would need to have a reliable answer to the question of "what did the user install themselves after the system was set up?"

However there are many ways the user can install things manually:
- Distro packages using Discover
- Distro packages using the command-line package manager
- Distro packages using the PackageKit API, called from other apps (e.g. the "Install Konsole" button in Dolphin, or the "Install Samba" button in the file sharing setup wizard)
- Downloaded-from-the-internet packages using Discover
- Downloaded-from-the-internet packages the command-line package manager
- Flatpak apps using Discover
- Flatpak apps using the `flatpak` command line tool
- Snap packages using Discover
- Snap apps using the `snap` command-line tool

We could implement the feature in a way that covers all things installed using Discover. But it would become inaccurate the moment the user installed anything using one of the other methods, because those tools don't communicate with Discover. As a result, it's highly likely the list would rarely be accurate, and we'd get bug reports about that.

This isn't an *impossible* problem to solve, but solving it in way that avoids misleading the user, or communicates its limitations, would be key.
Comment 4 Beyuum 2023-09-27 11:48:17 UTC
(In reply to Nate Graham from comment #3)
> I hope you're enjoying Linux and KDE so far!
> 
> As you've no doubt observed, sometimes things aren't as straightforward as
> we'd prefer. :) In this case, to offer the feature, we would need to have a
> reliable answer to the question of "what did the user install themselves
> after the system was set up?"
> 
> However there are many ways the user can install things manually:
> - Distro packages using Discover
> - Distro packages using the command-line package manager
> - Distro packages using the PackageKit API, called from other apps (e.g. the
> "Install Konsole" button in Dolphin, or the "Install Samba" button in the
> file sharing setup wizard)
> - Downloaded-from-the-internet packages using Discover
> - Downloaded-from-the-internet packages the command-line package manager
> - Flatpak apps using Discover
> - Flatpak apps using the `flatpak` command line tool
> - Snap packages using Discover
> - Snap apps using the `snap` command-line tool
> 
> We could implement the feature in a way that covers all things installed
> using Discover. But it would become inaccurate the moment the user installed
> anything using one of the other methods, because those tools don't
> communicate with Discover. As a result, it's highly likely the list would
> rarely be accurate, and we'd get bug reports about that.
> 
> This isn't an *impossible* problem to solve, but solving it in way that
> avoids misleading the user, or communicates its limitations, would be key.

Sorry for the late reply.
The feature was more complex then what i was thinking. but 
> - Distro packages using Discover
> - Flatpak apps using Discover
is in this case best choice for "Inside Discover feature". it will be very helpful if it get add to the app
Comment 5 Nate Graham 2023-09-28 18:51:59 UTC
If we can commit to only showing changes made inside Discover, then it's not that hard a feature to implement.

But we would need to write careful messaging in the app to communicate this to users, or else changes they made outside Discover wouldn't show up there, and it would be very confusing, and we'd get lots of bug reports about it!
Comment 6 Beyuum 2023-10-05 23:56:28 UTC
(In reply to Nate Graham from comment #5)
> If we can commit to only showing changes made inside Discover, then it's not
> that hard a feature to implement.
> 
> But we would need to write careful messaging in the app to communicate this
> to users, or else changes they made outside Discover wouldn't show up there,
> and it would be very confusing, and we'd get lots of bug reports about it!

i see. but dose Discover show the outside changes? if not then the implement wont change the confusing for who thinks Discover could show the outside apps.
still if there is button beside the "sort by" button called something like "Show: All" and when click on it show more options. 
Example:
Show: All -- show all apps
Show: User -- show only apps installed by the user
show: KDE org -- show apps developed by the KDE  org
this will make browsing the apps and packers which is on the  system much faster. there is not even a search function there.
Comment 7 Nate Graham 2023-10-11 16:17:59 UTC
Discover does show outside changes. For example if you install an app using your command-line package manager or Flatpak, or another GUI app front-end to these tools such as Gnome Software or Synaptic, the newly-installed app will appear in the "Installed" section in Discover.