|
@@ -41,10 +41,12 @@ notify_object = None
|
|
|
from qubes.qubes import defaults
|
|
|
|
|
|
def tray_notify(str, label, timeout = 3000):
|
|
|
- notify_object.Notify("Qubes", 0, label.icon, "Qubes", str, [], [], timeout, dbus_interface="org.freedesktop.Notifications")
|
|
|
+ if notify_object:
|
|
|
+ notify_object.Notify("Qubes", 0, label.icon, "Qubes", str, [], [], timeout, dbus_interface="org.freedesktop.Notifications")
|
|
|
|
|
|
def tray_notify_error(str, timeout = 3000):
|
|
|
- notify_object.Notify("Qubes", 0, "dialog-error", "Qubes", str, [], [], timeout, dbus_interface="org.freedesktop.Notifications")
|
|
|
+ if notify_object:
|
|
|
+ notify_object.Notify("Qubes", 0, "dialog-error", "Qubes", str, [], [], timeout, dbus_interface="org.freedesktop.Notifications")
|
|
|
|
|
|
def vm_run_cmd(vm, cmd, options):
|
|
|
if options.shutdown:
|
|
@@ -169,7 +171,10 @@ def main():
|
|
|
|
|
|
if options.tray:
|
|
|
global notify_object
|
|
|
- notify_object = dbus.SessionBus().get_object("org.freedesktop.Notifications", "/org/freedesktop/Notifications")
|
|
|
+ try:
|
|
|
+ notify_object = dbus.SessionBus().get_object("org.freedesktop.Notifications", "/org/freedesktop/Notifications")
|
|
|
+ except dbus.DBusException as ex:
|
|
|
+ print >>sys.stderr, "WARNING: failed connect to tray notification service: %s" % str(ex)
|
|
|
|
|
|
qvm_collection = QubesVmCollection()
|
|
|
qvm_collection.lock_db_for_reading()
|