Gnome-shell search providers

Hi,
So I had heard there were plans to seed gnome-apps as snaps instead of debs for bionic. Today I discover that gnome-calculator has been moved in such a way. And I hear there are plans for a bunch more gnome apps to be snapped before release.

Many gnome apps provide search providers that are consumed by gnome-shell when searching in the overview. A non-exhaustive list includes, contacts, weather, calculator, Clocks, Terminal, Gnome-Control-Center, Boxes and Software. There are probably quite a few more though.

So my question is, has there been any consideration of exposing theses search providers back to the gnome-shell host? They provide a key part of the integration between gnome-shell and the official gnome-apps, but how is the shell going to see inside the snaps to find the dbus services, that allow these search providers to work?

2 Likes

Flatpak offers a way to “export” GNOME Shell search providers.

1 Like

@kenvandine, please see above ^

@tim I’m new to Linux dev, but am trying to figure a few things out. Isn’t the point of a message bus to decouple applications? The shell should not be looking inside snaps at all to see which ones are search capable. I would have imagined that it would send a message to the bus and see what responses it got back? (Probably a bit OT for this particular thread).

Is there any known manual work around - I quite often to quick calculations in the search bar?

Snaps can’t install search providers in a location the shell looks for them. This is something we need to support though.

The search provider is really an ini file that defines the DesktopId and the DBus name and path to find the provider. We probably need a snap hook, similar to desktop files, to install these ini files in /var/lib/snapd/gnome-shell/search-providers/. We’ll also probably need to do the same for the dbus service to handle dbus activating the provider.

This is something that’s on our roadmap.

2 Likes

Oh! Not how I imagined dbus might operate!

So If this is the ini file in question (https://github.com/GNOME/gnome-calculator/blob/master/search-provider/org.gnome.Calculator-search-provider.ini) - is there somewhere I can manually add it to restore the functionality?

The easiest manual fix for now is to run

snap remove gnome-calculator
sudo apt install gnome-calculator

That will switch you from using the Snap to using the traditional .deb version. Once this issue is fixed, you can uninstall the .deb and install the Snap version again.

1 Like

@kenvandine - can you make sure when the PR goes up you add me as a reviewer?

Will do! @oSoMoN has created a forum post with a proposed plan. @jdstrand we’d love feedback!

1 Like

Great. You saved my day. I didn’t know there was decision to distribute vital gnome apps as snap. I have just one question to devs. Why? I cannot see any point for such a move. More HDD consumed (because there has to be whole gnome as snap), themes are inconsistent in these apps, the system integration is broken. I use snaps for apps that does make sense. But gnome-apps? In LTS? Just why?

Fortunately thanks to this comment I have found out why my calculator is not in gnome-shell and found out that you actually did this to a few of gnome-apps. Now I have desnappied my gnome. The world is in the right order now.

I don’t mean anything bad. You are doing a great job for external apps devs (spotify etc) But I cannot understand what’s the point of experiments on gnome apps in LTS.