diff -Nru blueman-2.0.4/debian/changelog blueman-2.0.4/debian/changelog --- blueman-2.0.4/debian/changelog 2016-03-30 10:52:19.000000000 +0000 +++ blueman-2.0.4/debian/changelog 2016-03-31 00:03:42.000000000 +0000 @@ -1,3 +1,10 @@ +blueman (2.0.4-1ubuntu2) xenial; urgency=medium + + * debian/patches/02_lp1533206.patch + - Fix startup crash for systems without bluetooth (LP: #1533206) + + -- Sean Davis Wed, 30 Mar 2016 20:03:33 -0400 + blueman (2.0.4-1ubuntu1) xenial; urgency=low * Merge from Debian unstable. Remaining changes: diff -Nru blueman-2.0.4/debian/patches/02_lp1533206.patch blueman-2.0.4/debian/patches/02_lp1533206.patch --- blueman-2.0.4/debian/patches/02_lp1533206.patch 1970-01-01 00:00:00.000000000 +0000 +++ blueman-2.0.4/debian/patches/02_lp1533206.patch 2016-03-30 23:36:47.000000000 +0000 @@ -0,0 +1,40 @@ +Description: Fix crash on systems without bluetooth +Author: Sean Davis +Bug: https://github.com/blueman-project/blueman/issues/488 +Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/blueman/+bug/1533206 +Last-Update: 2016-03-30 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/blueman/bluez/BlueZInterface.py ++++ b/blueman/bluez/BlueZInterface.py +@@ -13,16 +13,21 @@ + @staticmethod + def get_interface_version(): + if not BlueZInterface.interface_version: +- obj = dbus.SystemBus().get_object('org.bluez', '/') +- introspection = dbus.Interface(obj, 'org.freedesktop.DBus.Introspectable').Introspect() +- if 'org.freedesktop.DBus.ObjectManager' in introspection: +- dprint('Detected BlueZ 5') ++ try: ++ obj = dbus.SystemBus().get_object('org.bluez', '/') ++ introspection = dbus.Interface(obj, 'org.freedesktop.DBus.Introspectable').Introspect() ++ if 'org.freedesktop.DBus.ObjectManager' in introspection: ++ dprint('Detected BlueZ 5') ++ BlueZInterface.interface_version = [5] ++ elif 'org.bluez.Manager' in introspection: ++ dprint('Detected BlueZ 4') ++ BlueZInterface.interface_version = [4] ++ else: ++ raise Exception('Could not find any compatible version of BlueZ') ++ except dbus.exceptions.DBusException: ++ # https://github.com/blueman-project/blueman/issues/488 + BlueZInterface.interface_version = [5] +- elif 'org.bluez.Manager' in introspection: +- dprint('Detected BlueZ 4') +- BlueZInterface.interface_version = [4] +- else: +- raise Exception('Could not find any compatible version of BlueZ') ++ dprint('Fallback BlueZ 5') + + return BlueZInterface.interface_version + diff -Nru blueman-2.0.4/debian/patches/series blueman-2.0.4/debian/patches/series --- blueman-2.0.4/debian/patches/series 2015-12-21 19:04:12.000000000 +0000 +++ blueman-2.0.4/debian/patches/series 2016-03-30 23:33:41.000000000 +0000 @@ -1 +1,2 @@ 01_dont_autostart_lxde.patch +02_lp1533206.patch