Closed refi64 closed 6 years ago
Hmm, this is sort of a tough one to handle. The most immediate solution is to just kill the GSConnect service which will unexport all DBus interfaces (it should restart itself):
kill $(ps aux | grep '[d]aemon.js' | awk '{print $2}')
Long Story
Essentially there was an error while enabling the plugin after it's DBus interface was exported, but before it was registered as enabled. When you try to enable it again it fails because the interface already exists, and it can't disable it (which would remove the DBus interface) because it doesn't have a reference to it; ironically the DBus interface is the only thing keeping the plugin alive.
This obviously shouldn't happen, but especially not with the Share plugin because exporting the DBus interface is basically all it does when it's enabled. The only other thing it does it setup the default download directory, but I'd be surprised if that could fail...although not much else makes sense.
Short Story
Unfortunately it's too late to catch the original error in the log. Either way you'll have to restart the service anyways, then (if you want) enable Debug Mode in the About page of preferences. If it does happen again their should be more helpful output there, or it may just never happen again.
Assuming this hasn't re-occured and closing for now, re-open if the issues persists.
This actually happens every single time... It's actually really bizarre, because nothing seems to be appearing in journalctl implying of extension problems. Is there another log location where this stuff might be at?
I don't think so, I mean with debug enabled everything possible should show up the debug window. You could check Gnome Logs or just run a generic journalctl -f
to catch everything and try restarting the daemon. I really can't imagine why this is happening, or why it isn't fixed on a restart since that should totally flush the DBus interfaces.
Ok, so I realized I missed a pretty interesting message in the logs. Here's everything I got from journalctl -b -g 'JS LOG'
after a fresh reboot:
-- Logs begin at Mon 2018-04-09 13:07:29 CDT, end at Tue 2018-06-05 09:26:15 CDT. --
Jun 05 09:24:58 DevPC-archLX gjs[1247]: JS LOG: UdpListener: using port 1716
Jun 05 09:24:58 DevPC-archLX gjs[1247]: JS LOG: TcpListener: using port 1716
Jun 05 09:24:58 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: UdpListener.send()
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: google (d08ad6ab56561925)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: Connecting to 'd08ad6ab56561925'
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: 1 devices loaded from cache
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: UdpListener.send()
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: UdpListener.receive()
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Daemon._addDevice(GSConnect)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: UdpListener.receive()
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Daemon._addDevice(GSConnect)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: google (d08ad6ab56561925)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: google (d08ad6ab56561925) already active
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: Authenticating 'd08ad6ab56561925'
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: Connected to 'google'
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Device.enablePlugin(battery, false)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Battery: request()
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: LanChannel.send(d08ad6ab56561925, {"id":0,"type":"kdeconnect.battery.request","body":{"request":true}})
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Device.enablePlugin(sftp, false)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Device.enablePlugin(clipboard, false)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Device.enablePlugin(findmyphone, false)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Device.enablePlugin(mpris, false)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Device.enablePlugin(notification, false)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: LanChannel.send(d08ad6ab56561925, {"id":0,"type":"kdeconnect.notification.request","body":{"request":true}})
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Device.enablePlugin(ping, false)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Device.enablePlugin(runcommand, false)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: LanChannel.send(d08ad6ab56561925, {"id":0,"type":"kdeconnect.runcommand.request","body":{"requestCommandList":true}})
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Device.enablePlugin(telephony, false)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: LanChannel.receive(d08ad6ab56561925)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Device received: {"id":1528208699826,"type":"kdeconnect.battery","body":{"currentCharge":76,"isCharging":false,"thresholdEvent":0}}
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: Received from 'google'
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Battery: handlePacket()
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Battery: receive()
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: LanChannel.receive(d08ad6ab56561925)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Device received: {"id":1528208699850,"type":"kdeconnect.mpris.request","body":{"requestPlayerList":true}}
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: Received from 'google'
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: MPRIS: handlePacket()
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: MPRIS: sendPlayerList()
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: LanChannel.send(d08ad6ab56561925, {"id":0,"type":"kdeconnect.mpris","body":{"playerList":[]}})
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: LanChannel.receive(d08ad6ab56561925)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Device received: {"id":1528208699851,"type":"kdeconnect.runcommand.request","body":{"requestCommandList":true}}
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: Received from 'google'
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: RunCommand: handlePacket()
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: RunCommand: sendCommandList()
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: LanChannel.send(d08ad6ab56561925, {"id":0,"type":"kdeconnect.runcommand","body":{"commandList":"{}"}})
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: LanChannel.receive(d08ad6ab56561925)
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Device received: {"id":1528208699826,"type":"kdeconnect.battery","body":{"currentCharge":76,"isCharging":false,"thresholdEvent":0}}
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: Received from 'google'
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Battery: handlePacket()
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Battery: receive()
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: MPRIS: _updatePlayers()
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: MPRIS: _listPlayers()
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: MPRIS: sendPlayerList()
Jun 05 09:24:59 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: LanChannel.send(d08ad6ab56561925, {"id":0,"type":"kdeconnect.mpris","body":{"playerList":[]}})
Jun 05 09:25:11 DevPC-archLX gnome-shell-ext[1765]: JS LOG: Extension user-theme@gnome-shell-extensions.gcampax.github.com already installed in /home/ryan/.local/share/gnome-shell/extensions/user-theme@gnome-shell-extensions.gcampax.github.com. /usr/share/gnome-shell/extensions/user-theme@gnome-shell-extensions.gcampax.github.com will not be loaded
Jun 05 09:25:11 DevPC-archLX gnome-shell-ext[1765]: JS LOG: [gsconnect@andyholmes.github.io]: initializing extension preferences
Jun 05 09:25:11 DevPC-archLX gnome-shell-ext[1765]: JS LOG: [gsconnect@andyholmes.github.io]: Prefs: buildPrefsWidget()
Jun 05 09:25:11 DevPC-archLX gnome-shell-ext[1765]: JS LOG: [gsconnect@andyholmes.github.io]: PrefsWidget._serviceAppeared()
Jun 05 09:25:11 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: UdpListener.send()
Jun 05 09:25:11 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: UdpListener.receive()
Jun 05 09:25:11 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Daemon._addDevice(GSConnect)
Jun 05 09:25:14 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Device.enablePlugin(share, true)
Jun 05 09:25:14 DevPC-archLX gjs[1247]: JS LOG: Error enabling plugin 'share': Argument 'value' (type utf8) may not be null
Jun 05 09:25:14 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: share (google)
Jun 05 09:25:14 DevPC-archLX gjs[1247]: JS LOG: Error disabling plugin 'share': plugin is undefined
Jun 05 09:25:42 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: Device.enablePlugin(share, true)
Jun 05 09:25:42 DevPC-archLX gjs[1247]: JS LOG: Error enabling plugin 'share': An object is already exported for the interface org.gnome.Shell.Extensions.GSConnect.Plugin.Share at /org/gnome/Shell/Extensions/GSConnect/Device/d08ad6ab56561925
Jun 05 09:25:42 DevPC-archLX gjs[1247]: JS LOG: [gsconnect@andyholmes.github.io]: share (google)
Jun 05 09:25:42 DevPC-archLX gjs[1247]: JS LOG: Error disabling plugin 'share': plugin is undefined
Line of interest:
Jun 05 09:25:14 DevPC-archLX gjs[1247]: JS LOG: Error enabling plugin 'share': Argument 'value' (type utf8) may not be null
This was from the first time I tried activating the plugin. It's only the second time that I get the interface error.
Unfortunately there doesn't seem to be a traceback of any sort.
That looks like a GVariant error, in which case it's probably happening here.
Are you using a non-standard Downloads directory or can you think of any reason GLib.UserDirectory.DIRECTORY_DOWNLOAD
wouldn't be resolving on your system?
Ack, I'm sorry. For some reason, the directory won't resolve if xdg-user-dirs
isn't installed? I just installed it and ran xdg-user-dirs-update
, and now it works.
Sorry for the noise!
I get the following errors when I try to enable the share plugin:
FWIW this is the extension's D-Bus object tree as reported by
busctl --user org.gnome.Shell.Extensions.GSConnect
: