You are not logged in.
Pretty much as the subject says. After I updated to 3.26 attempting to search for an application in the gnome-shell (i.e. interface displayed when win-key pressed) yields no results.
Sometimes I can other search terms to provide results (e.g. file search, math expressions), but it seems as soon as an application match occurs, all searches stop working.
Watching the journal shows this error, which repeats:
JS ERROR: TypeError: this._actions.get(...) is undefined
SystemActions<.getName@resource:///org/gnome/shell/misc/systemActions.js:283:16
wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22
AppSearchProvider<.getResultMetas@resource:///org/gnome/shell/ui/appDisplay.js:1108:28
wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22
SearchResultsBase<._ensureResultActors@resource:///org/gnome/shell/ui/search.js:227:13
wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22
SearchResultsBase<.updateSearch@resource:///org/gnome/shell/ui/search.js:265:13
wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22
SearchResults<._updateResults@resource:///org/gnome/shell/ui/search.js:662:9
wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22
SearchResults<._gotResults@resource:///org/gnome/shell/ui/search.js:487:9
wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22
bind/<@resource:///org/gnome/gjs/modules/lang.js:97:16
AppSearchProvider<.getInitialResultSet@resource:///org/gnome/shell/ui/appDisplay.js:1144:9
wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22
AppSearchProvider<.getSubsearchResultSet@resource:///org/gnome/shell/ui/appDisplay.js:1148:9
wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22
SearchResults<._doSearch/<@resource:///org/gnome/shell/ui/search.js:519:17
SearchResults<._doSearch@resource:///org/gnome/shell/ui/search.js:514:9
wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22
SearchResults<._onSearchTimeout@resource:///org/gnome/shell/ui/search.js:531:9
wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22
Before these errors in the journal I see this, which I have no idea if it is related:
dbus-daemon[895]: Activating service name='org.gnome.ControlCenter.SearchProvider'
dbus-daemon[895]: Activating service name='org.gnome.Contacts.SearchProvider'
dbus-daemon[895]: Activating service name='org.gnome.Nautilus'
dbus-daemon[895]: Activating service name='org.gnome.Calculator.SearchProvider'
dbus-daemon[895]: Activating service name='org.gnome.seahorse.Application'
dbus-daemon[895]: Activating via systemd: service name='org.gnome.Terminal' unit='gnome-terminal-server.service'
dbus-daemon[895]: Activating service name='org.gnome.EpiphanySearchProvider'
systemd[877]: gnome-terminal-server.service: Failed to add inotify watch descriptor for control group /user.slice/user-1000.slice/user@1000.service/gnome-terminal-server.service: No space left on device
systemd[877]: Starting GNOME Terminal Server...
dbus-daemon[895]: Successfully activated service 'org.gnome.Calculator.SearchProvider'
dbus-daemon[895]: Successfully activated service 'org.gnome.ControlCenter.SearchProvider'
dbus-daemon[895]: Successfully activated service 'org.gnome.Nautilus'
dbus-daemon[895]: Successfully activated service 'org.gnome.seahorse.Application'
dbus-daemon[895]: Successfully activated service 'org.gnome.EpiphanySearchProvider'
dbus-daemon[895]: Successfully activated service 'org.gnome.Terminal'
systemd[877]: Started GNOME Terminal Server.
dbus-daemon[895]: Successfully activated service 'org.gnome.Contacts.SearchProvider'
dbus[473]: [system] Activating via systemd: service name='org.bluez' unit='dbus-org.bluez.service'
dbus[473]: [system] Activation via systemd failed for unit 'dbus-org.bluez.service': Unit dbus-org.bluez.service not found.
Last edited by JiGGaK (2017-10-26 14:40:02)
Offline
Maybe a broken extension?
Offline
Try indeed turning off all extensions to see whether that cures the problem. However, before that, you might check the trivial. Is the main toggle on the Search dialog in "Settings" turned on? If that is turned of, applications will not show up in the overview.
Offline
Thanks for the tips. I tried disabling all extensions and I checked that search was enabled (it is). No luck so far.
I did a bit of digging in the code...
getResultMetas: function(apps, callback) {
let metas = [];
for (let id of apps) {
if (id.endsWith('.desktop')) {
let app = this._appSys.lookup_app(id);
metas.push({ 'id': app.get_id(),
'name': app.get_name(),
'createIcon': function(size) {
return app.create_icon_texture(size);
}
});
} else {
let name = this._systemActions.getName(id);
let iconName = this._systemActions.getIconName(id);
let createIcon = size => new St.Icon({ icon_name: iconName,
width: size,
height: size,
style_class: 'system-action-icon' });
metas.push({ id, name, createIcon });
}
}
callback(metas);
},
It's failing in the else block. One of the entries in that apps array doesn't have a .desktop extension in the ID BUT whatever that ID is it is not a system action id. I'm trying to figure out how this apps array is being generated so I can look at the entries.
Offline
What the $%#&!
I did some more digging and it turns out that if/else block in getResultMetas is incorrectly dropping into the else, even though id does in fact end with .desktop.
For example if I open up looking glass and evaluate
'visual-studio-code.desktop'.endsWith('.desktop')
it evaluates to false. But if I eval the same expr in gjs it is true. My best guess at this point is something to do with text encoding / locale.
Offline
Found the culprit. Turns out it was caused by an extension. I could have swore I reloaded gnome-shell after disabling extension previously but apparently I didn't. That or gnome-shell still reads the javascript of the extension even if it is disabled. The extension had a global override of String.prototype.endsWith.
Offline
I'm having the same error, JiGGaK could you tell me how did you identify the the faulty extension???
Offline