Right-click doesn't work
On Linux Mint Cinnamon 21.3 64-bit: after I pair a device, I can right-click it to trust, block etc. But, next day, probably after a reboot, I can't right-click it anymore (nothing happens). Only after I remove the device I can right-click it again. It's annoying, I have to remove an already paired device and pair it again.
Can you close blueman-manager, run blueman-manager --loglevel debug from a terminal, do the action that is faling (right click) and post the output of the terminal here.
Nice idea!
It seems to be related to the action of blocking mobile phones. Among many devices, it only happened to mobile phones, only after blocking them and probably restarting the app.
Here are the logs for left-clicking and right-clicking. I replaced actual device name with [ NAME OF DEVICE HERE ].
Left-clicking:
blueman-manager 15.19.16 DEBUG ManagerDeviceMenu:306 generate : [ NAME OF DEVICE HERE ]
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 92, in get
prop = self.call_sync(
gi.repository.GLib.GError: g-dbus-error-quark: GDBus.Error:org.freedesktop.DBus.Error.InvalidArgs: No such interface 'org.bluez.Network1' (16)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerMenu.py", line 229, in on_device_selected
self.device_menu = ManagerDeviceMenu(self.blueman)
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 83, in __init__
self.generate()
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 308, in generate
items = [item for plugin in self.Blueman.Plugins.get_loaded_plugins(MenuItemsProvider)
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 309, in <listcomp>
for item in plugin.on_request_menu_items(self, self.SelectedDevice)]
File "/usr/lib/python3/dist-packages/blueman/plugins/manager/Services.py", line 48, in on_request_menu_items
connectable_services = [service for service in services if service.connectable]
File "/usr/lib/python3/dist-packages/blueman/plugins/manager/Services.py", line 48, in <listcomp>
connectable_services = [service for service in services if service.connectable]
File "/usr/lib/python3/dist-packages/blueman/services/meta/NetworkService.py", line 25, in connectable
return not self.available or not self._service["Connected"]
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 135, in __getitem__
return self.get(key)
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 106, in get
raise parse_dbus_error(e)
blueman.bluez.errors.BluezDBusException: org.freedesktop.DBus.Error.InvalidArgs No such interface 'org.bluez.Network1'
Error in sys.excepthook:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 153, in apport_excepthook
with os.fdopen(os.open(pr_filename,
FileNotFoundError: [Errno 2] Arquivo ou diretório inexistente: '/var/crash/_usr_bin_blueman-manager.1000.crash'
Original exception was:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 92, in get
prop = self.call_sync(
gi.repository.GLib.GError: g-dbus-error-quark: GDBus.Error:org.freedesktop.DBus.Error.InvalidArgs: No such interface 'org.bluez.Network1' (16)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerMenu.py", line 229, in on_device_selected
self.device_menu = ManagerDeviceMenu(self.blueman)
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 83, in __init__
self.generate()
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 308, in generate
items = [item for plugin in self.Blueman.Plugins.get_loaded_plugins(MenuItemsProvider)
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 309, in <listcomp>
for item in plugin.on_request_menu_items(self, self.SelectedDevice)]
File "/usr/lib/python3/dist-packages/blueman/plugins/manager/Services.py", line 48, in on_request_menu_items
connectable_services = [service for service in services if service.connectable]
File "/usr/lib/python3/dist-packages/blueman/plugins/manager/Services.py", line 48, in <listcomp>
connectable_services = [service for service in services if service.connectable]
File "/usr/lib/python3/dist-packages/blueman/services/meta/NetworkService.py", line 25, in connectable
return not self.available or not self._service["Connected"]
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 135, in __getitem__
return self.get(key)
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 106, in get
raise parse_dbus_error(e)
blueman.bluez.errors.BluezDBusException: org.freedesktop.DBus.Error.InvalidArgs No such interface 'org.bluez.Network1'
Right-clicking:
blueman-manager 15.20.20 DEBUG ManagerDeviceMenu:306 generate : [ NAME OF DEVICE HERE ]
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 92, in get
prop = self.call_sync(
gi.repository.GLib.GError: g-dbus-error-quark: GDBus.Error:org.freedesktop.DBus.Error.InvalidArgs: No such interface 'org.bluez.Network1' (16)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceList.py", line 246, in on_event_clicked
self.menu.popup_at_pointer(event)
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 90, in popup_at_pointer
self.generate()
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 308, in generate
items = [item for plugin in self.Blueman.Plugins.get_loaded_plugins(MenuItemsProvider)
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 309, in <listcomp>
for item in plugin.on_request_menu_items(self, self.SelectedDevice)]
File "/usr/lib/python3/dist-packages/blueman/plugins/manager/Services.py", line 48, in on_request_menu_items
connectable_services = [service for service in services if service.connectable]
File "/usr/lib/python3/dist-packages/blueman/plugins/manager/Services.py", line 48, in <listcomp>
connectable_services = [service for service in services if service.connectable]
File "/usr/lib/python3/dist-packages/blueman/services/meta/NetworkService.py", line 25, in connectable
return not self.available or not self._service["Connected"]
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 135, in __getitem__
return self.get(key)
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 106, in get
raise parse_dbus_error(e)
blueman.bluez.errors.BluezDBusException: org.freedesktop.DBus.Error.InvalidArgs No such interface 'org.bluez.Network1'
Error in sys.excepthook:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 153, in apport_excepthook
with os.fdopen(os.open(pr_filename,
FileNotFoundError: [Errno 2] Arquivo ou diretório inexistente: '/var/crash/_usr_bin_blueman-manager.1000.crash'
Original exception was:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 92, in get
prop = self.call_sync(
gi.repository.GLib.GError: g-dbus-error-quark: GDBus.Error:org.freedesktop.DBus.Error.InvalidArgs: No such interface 'org.bluez.Network1' (16)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceList.py", line 246, in on_event_clicked
self.menu.popup_at_pointer(event)
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 90, in popup_at_pointer
self.generate()
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 308, in generate
items = [item for plugin in self.Blueman.Plugins.get_loaded_plugins(MenuItemsProvider)
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 309, in <listcomp>
for item in plugin.on_request_menu_items(self, self.SelectedDevice)]
File "/usr/lib/python3/dist-packages/blueman/plugins/manager/Services.py", line 48, in on_request_menu_items
connectable_services = [service for service in services if service.connectable]
File "/usr/lib/python3/dist-packages/blueman/plugins/manager/Services.py", line 48, in <listcomp>
connectable_services = [service for service in services if service.connectable]
File "/usr/lib/python3/dist-packages/blueman/services/meta/NetworkService.py", line 25, in connectable
return not self.available or not self._service["Connected"]
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 135, in __getitem__
return self.get(key)
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 106, in get
raise parse_dbus_error(e)
blueman.bluez.errors.BluezDBusException: org.freedesktop.DBus.Error.InvalidArgs No such interface 'org.bluez.Network1'
blueman-manager 15.20.20 DEBUG ManagerDeviceMenu:306 generate : [ NAME OF DEVICE HERE ]
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 92, in get
prop = self.call_sync(
gi.repository.GLib.GError: g-dbus-error-quark: GDBus.Error:org.freedesktop.DBus.Error.InvalidArgs: No such interface 'org.bluez.Network1' (16)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerMenu.py", line 229, in on_device_selected
self.device_menu = ManagerDeviceMenu(self.blueman)
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 83, in __init__
self.generate()
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 308, in generate
items = [item for plugin in self.Blueman.Plugins.get_loaded_plugins(MenuItemsProvider)
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 309, in <listcomp>
for item in plugin.on_request_menu_items(self, self.SelectedDevice)]
File "/usr/lib/python3/dist-packages/blueman/plugins/manager/Services.py", line 48, in on_request_menu_items
connectable_services = [service for service in services if service.connectable]
File "/usr/lib/python3/dist-packages/blueman/plugins/manager/Services.py", line 48, in <listcomp>
connectable_services = [service for service in services if service.connectable]
File "/usr/lib/python3/dist-packages/blueman/services/meta/NetworkService.py", line 25, in connectable
return not self.available or not self._service["Connected"]
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 135, in __getitem__
return self.get(key)
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 106, in get
raise parse_dbus_error(e)
blueman.bluez.errors.BluezDBusException: org.freedesktop.DBus.Error.InvalidArgs No such interface 'org.bluez.Network1'
Error in sys.excepthook:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 153, in apport_excepthook
with os.fdopen(os.open(pr_filename,
FileNotFoundError: [Errno 2] Arquivo ou diretório inexistente: '/var/crash/_usr_bin_blueman-manager.1000.crash'
Original exception was:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 92, in get
prop = self.call_sync(
gi.repository.GLib.GError: g-dbus-error-quark: GDBus.Error:org.freedesktop.DBus.Error.InvalidArgs: No such interface 'org.bluez.Network1' (16)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerMenu.py", line 229, in on_device_selected
self.device_menu = ManagerDeviceMenu(self.blueman)
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 83, in __init__
self.generate()
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 308, in generate
items = [item for plugin in self.Blueman.Plugins.get_loaded_plugins(MenuItemsProvider)
File "/usr/lib/python3/dist-packages/blueman/gui/manager/ManagerDeviceMenu.py", line 309, in <listcomp>
for item in plugin.on_request_menu_items(self, self.SelectedDevice)]
File "/usr/lib/python3/dist-packages/blueman/plugins/manager/Services.py", line 48, in on_request_menu_items
connectable_services = [service for service in services if service.connectable]
File "/usr/lib/python3/dist-packages/blueman/plugins/manager/Services.py", line 48, in <listcomp>
connectable_services = [service for service in services if service.connectable]
File "/usr/lib/python3/dist-packages/blueman/services/meta/NetworkService.py", line 25, in connectable
return not self.available or not self._service["Connected"]
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 135, in __getitem__
return self.get(key)
File "/usr/lib/python3/dist-packages/blueman/bluez/Base.py", line 106, in get
raise parse_dbus_error(e)
blueman.bluez.errors.BluezDBusException: org.freedesktop.DBus.Error.InvalidArgs No such interface 'org.bluez.Network1'
Just confirmed, the issue happens after blocking the device. Don't need to restart the app.
Thanks, I'll try to replicate and see what is going on.
Confirmed. I do see the interface org.bluez.Network1 removed when blocking. But we don't generate a new menu when we block so the issues doesn't show up until blueman-manager regenerates the menu.
gdbus monitor -y -d org.bluez
Monitoring signals from all objects owned by org.bluez
The name org.bluez is owned by :1.4
/org/bluez/hci0/dev_64_A2_00_10_C7_CF: org.freedesktop.DBus.Properties.PropertiesChanged ('org.bluez.Device1', {'Blocked': <true>}, @as [])
/: org.freedesktop.DBus.ObjectManager.InterfacesRemoved (objectpath '/org/bluez/hci0/dev_64_A2_00_10_C7_CF', ['org.bluez.Network1', 'org.bluez.MediaControl1'])
If you are able you can manually apply the patch from https://github.com/blueman-project/blueman/pull/2817/files
I'm not sure I can. I may have to wait until Linux Mint adds it. Do you know how long it usually takes?