Putting something out for discussion that may be improved in 18.04.
What do you think if we make it more clear which version of a software comes from which source (Snap, Flatpak, Repo)?
Take a look at the below example.
I installed Audacity from the repo as well as from Flatpak but visually I have no idea which one is which albeit they may provide different versions of Audacity and hence there is legitimate reason to have both!
I wonder if the user-side of the display should focus on both the version number and the install method, with emphasis on the version number - that’s what the user cares about.
I see a need for this on the support side, with the emphasis reversed (packaging more important than version) and terminal-based: A way to help unskilled users who made unwise choices unwind their mistakes.
I expect the number of snap and AppImage and FlatPack and pip support queries to increase as newer random-blog-entries full of obsolete or otherwise bad advice displace older on search engines. The number of pip problems in AskUbuntu already feels disproportionately high.
Yes, good point. It’s certainly not obvious either during install or execution where the app came from.
However from a user point of view, it would be nice to not have to care. Do Windows / Mac users have anything which determines whether an application came from the store or a random exe/dmg download? (I don’t think so). Similarly on Android if you install an application it isn’t obvious it came from the play store, f-droid or side loaded.
My android point was merely that at the point of launching an application, you generally don’t care where it came from, you just want the app to open. On Android you can move the icons around, and your own brain remembers “this icon is foo v2.0 I got from play store” and “this icon is foo v2.1 I got from f-droid” for example. With a desktop which has search as the main way to find applications, and no way to organise the icons, you don’t have that benefit. So for the desktop if we had a system where you could group and manage your icons, this wouldn’t be an issue, or would be less of one.
Not being a designer, I’m not sure how you would represent where something came from. I don’t think I want badges all over their icons. Especially if I don’t have two apps from different places - for example I have zero flatpaks installed, do I really need it to tell me something came from the snap store?
One thing, as a flavor contributor, that comes to mind immediately, is how can we fix this for everyone rather than just fixing it for one particular component. The badge is a good solution to this idea.
I’m also thinking about how command-line tools like apropos or which deal with such a thing???
Without the AppStream ID (or a similar method) the OS can’t tell that both versions of Audacity are actually the same application. So step one is completing that support
I wonder if this is a transition problem where users today have both the existing .deb installed and a .snap/.flatpak installed to get the freshest version. They probably don’t want to uninstall the .deb because the sandboxed application has some limitations.
Based on previous discussions the general agreement seems to be:
Users aren’t likely to care about the mechanism of getting an app, so that shouldn’t be presented to them (i.e. no flags on icons).
The newest packaging should take precedence (should hide the .deb icon, or make it take more clicks to get it, or uninstall the .deb on installation of the .snap).
As is often, the implementation would be time consuming but probably not too hard. A good design would help here.
Dumping some ideas in here in case it would be helpful to someone. I’m not on the design team and I have no idea how feasible any of this is, this is only to be taken as some very loose suggestions and there may be other better options.
#1 Tooltip on hover over
Multiple icons as it is today, but some information is displayed when the mouse hover over the icon. The information could for example be the summary from appdata, and the source of the application. For Audacity installed as a flatpak through Flathub that might be shown as “Record and edit audio files (source: Flathub)”.
One icon. Clicking on the icon launches the version which takes precedence on the distro. Today on Ubuntu if you have both a deb and snap of a application the snap will be listed first, so instead of being listed first the snap will be launched when clicking on the icon. I didn’t draw it, but to visualize multiple versions of a application the same number badge as in #3 could be used. When you right-click on the icon you will have the same menu as you have today, but also with the option to choose different versions of the application that you have installed (flatpak, appimage, etc).
#3 Number badge and menu
One icon. A number badge is shown to visualize that multiple versions are available on the system (maybe only on hover to not draw unnecessary attention?). Clicking on the icon gives you the option to launch the different versions of the application.
#4 Application folders
One icon. Clicking on the icon expands it exactly as todays application folders that are used for different applications, but inside this “folder” you’ll find all the versions of the same application and they will have a badge showing their source or format (“Snap Store” or “Snap”).