Server-side crashes on headless server

Asked by Mike

I have epoptes-server installed on a Ubuntu 14.04 headless server and run 'epoptes' using ssh x-forwarding. Everything has worked perfectly, up to and including version 0.5.7 (the default in 14.04 repos). As soon as I use the PPA to update it to the latest (now 0.5.10, but also .8 and .9) on the server, it works well until a client disconnects (logs out or reboots). Then the GUI throws an error - 'Lost connection - Make sure server is running' and the related ssh terminal shows the following Traceback:

Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/amp.py", line 889, in _commandReceived
    deferred = self.dispatchCommand(box)
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/amp.py", line 946, in dispatchCommand
    return maybeDeferred(responder, box)
  File "/usr/lib/python2.7/dist-packages/twisted/internet/defer.py", line 139, in maybeDeferred
    result = f(*args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/amp.py", line 1035, in doit
    return maybeDeferred(aCallable, **kw).addCallback(
--- <exception caught here> ---
  File "/usr/lib/python2.7/dist-packages/twisted/internet/defer.py", line 139, in maybeDeferred
    result = f(*args, **kw)
  File "/usr/lib/python2.7/dist-packages/epoptes/daemon/uiconnection.py", line 56, in clientDisconnected
    self.client.amp_clientDisconnected(handle)
  File "/usr/lib/python2.7/dist-packages/epoptes/ui/gui.py", line 597, in amp_clientDisconnected
    shutdownNotify(client.get_name())
  File "/usr/lib/python2.7/dist-packages/epoptes/ui/notifications.py", line 82, in shutdownNotify
    notify(_("Shut down:"), "%s" %(host), os.path.abspath("images/shutdown.svg"))
  File "/usr/lib/python2.7/dist-packages/epoptes/ui/notifications.py", line 73, in cached_notify
    n.show()
glib.GError: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Notifications was not provided by any .service files
 a root client

With additional error text:
  **Twisted error: when connecting client 192.168.yyy.zz:51085: [Failure instance: Traceback: <class 'glib.GError'>: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Notifications was not provided by any .service files
/usr/lib/python2.7/dist-packages/twisted/protocols/amp.py:909:ampBoxReceived
/usr/lib/python2.7/dist-packages/twisted/protocols/amp.py:841:_answerReceived
/usr/lib/python2.7/dist-packages/twisted/internet/defer.py:382:callback
/usr/lib/python2.7/dist-packages/twisted/internet/defer.py:490:_startRunCallbacks
--- <exception caught here> ---
/usr/lib/python2.7/dist-packages/twisted/internet/defer.py:577:_runCallbacks
/usr/lib/python2.7/dist-packages/epoptes/ui/gui.py:583:<lambda>
/usr/lib/python2.7/dist-packages/epoptes/ui/gui.py:761:addClient
/usr/lib/python2.7/dist-packages/epoptes/ui/notifications.py:86:loginNotify
/usr/lib/python2.7/dist-packages/epoptes/ui/notifications.py:73:cached_notify
]

I then have to re-run Epoptes and this just keeps repeating, until I downgrade it back to 0.5.7. This all happens regardless of the version on the clients, which are Xubuntu 14.04 installations, now with client 0.5.10.

Looking at the errors, is there a dependency missing related to notifications?

Question information

Language:
English Edit question
Status:
Solved
For:
Epoptes Edit question
Assignee:
No assignee Edit question
Solved by:
Mike
Solved:
Last query:
Last reply:
Revision history for this message
Alkis Georgopoulos (alkisg) said :
#1

epoptes depends on: notification-daemon | xfce4-notifyd

In Ubuntu, notify-osd provides: notification-daemon.

Do you have xfce4-notifyd installed on your server?
If so, it's possible that the new code after 0.5.7 wasn't tested with xfce4-notifyd and introduced some incompatibility.

Let's wait to hear what ftsamis has to say about this, if he plans to support xfce4-notifyd again or if he prefers a hard dependency on notification-daemon. :)

Revision history for this message
Mike (linux-hedd) said :
#2

Alkis,
Thank you for the reply. Interestingly, neither notify-osd nor xfce4-notifyd were installed. The package named notification-daemon was already installed from when I set up the server and Epoptes last May. That's what was not making sense, since I had that installed already. I installed notify-osd (since there is no GUI on the server), and it worked perfectly, with the notification showing on my local screen that the client had 'shutdown'. So I take it notification-daemon itself is not enough anymore as a dependency?

Thanks,
Mike