GNOME Settings panel for Bluetooth dysfunctional

  • Done
  • quality assurance status badge
Details
5 participants
  • Ben Sturmfels
  • Liliana Marie Prikler
  • Ludovic Courtès
  • Mathieu Othacehe
  • Taylan Kammer
Owner
unassigned
Submitted by
Taylan Kammer
Severity
normal
Merged with
T
T
Taylan Kammer wrote on 15 Jul 2018 23:34
(address . bug-guix@gnu.org)
87in5gi3oy.fsf@guixsd.i-did-not-set--mail-host-address--so-tickle-me
I've got Bluetooth running by adding (bluetooth-service) to my list of
services and connecting my devices via 'bluetoothctl', which are now
fully functional, yet the GNOME Settings panel for Bluetooth still says
it couldn't find Bluetooth and asks me to insert a Bluetooth dongle.

It doesn't bother me much since after trusting/pairing my devices, they
now connect automatically after a reboot, but it's an inconvenience
nevertheless.


Taylan
L
L
Ludovic Courtès wrote on 23 Jul 2018 14:59
(name . Taylan Kammer)(address . taylanbayirli@gmail.com)(address . 32166@debbugs.gnu.org)
87r2jurttk.fsf@gnu.org
Taylan Kammer <taylanbayirli@gmail.com> skribis:

Toggle quote (5 lines)
> I've got Bluetooth running by adding (bluetooth-service) to my list of
> services and connecting my devices via 'bluetoothctl', which are now
> fully functional, yet the GNOME Settings panel for Bluetooth still says
> it couldn't find Bluetooth and asks me to insert a Bluetooth dongle.

Wild guess: could it be that we’re missing a .service D-Bus file or a
polkit file for whatever deals with Bluetooth in GNOME? Does the
Settings panel or D-Bus or polkit leave any messages?

Thanks,
Ludo’.
B
B
Ben Sturmfels wrote on 4 Nov 2019 03:45
(name . Ludovic Courtès)(address . ludo@gnu.org)
87v9s01hr1.fsf@sturm.com.au
On Mon, 23 Jul 2018, Ludovic Courtès wrote:

Toggle quote (11 lines)
> Taylan Kammer <taylanbayirli@gmail.com> skribis:
>
>> I've got Bluetooth running by adding (bluetooth-service) to my list of
>> services and connecting my devices via 'bluetoothctl', which are now
>> fully functional, yet the GNOME Settings panel for Bluetooth still says
>> it couldn't find Bluetooth and asks me to insert a Bluetooth dongle.
>
> Wild guess: could it be that we’re missing a .service D-Bus file or a
> polkit file for whatever deals with Bluetooth in GNOME? Does the
> Settings panel or D-Bus or polkit leave any messages?

When I install bluetooth-service and click the "Bluetooth" item in GNOME
settings, the following lines are added to /var/log/messages:

Nov 4 13:39:29 localhost dbus-daemon[471]: [system] Rejected send message, 2 matched rules; type="method_call", sender=":1.126" (uid=1000 pid=1976 comm="/gnu/store/9imb9ffn8rkrp0bijlcxnvx496wl510n-gnome-") interface="org.freedesktop.DBus.ObjectManager" member="GetManagedObjects" error name="(unset)" requested_reply="0" destination=":1.139" (uid=0 pid=2886 comm="/gnu/store/052b2lxw9d4qypr8gsv71f0zn8qljvax-bluez-")
Nov 4 13:39:29 localhost dbus-daemon[471]: [system] Rejected send message, 2 matched rules; type="method_call", sender=":1.126" (uid=1000 pid=1976 comm="/gnu/store/9imb9ffn8rkrp0bijlcxnvx496wl510n-gnome-") interface="org.bluez.AgentManager1" member="RegisterAgent" error name="(unset)" requested_reply="0" destination=":1.139" (uid=0 pid=2886 comm="/gnu/store/052b2lxw9d4qypr8gsv71f0zn8qljvax-bluez-")

On a side note, given that Bluetooth is listed in GNOME settings, perhaps
bluetooth-service should also be added to %desktop-services? It's
included by default in Trisquel.

Regards,
Ben
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEPn825zvdanEG+SAhAjwF4snAaPAFAl2/kOIACgkQAjwF4snA
aPDcgg//f6wYzill0A2Ne25kmkGxYpxqFD1JsfnoKT7/cyTDB9T6KF42hJMVRnjr
YTMljhvmE5kWiUNnlN4ka86F+JaBju++z7t9+VQZXEaLWA0xxZkU/kai1qdHku2L
mOWf058WgQPmSYLvFw/vCB5u4rmKQu2CRMwJPPjRQlv0M0sIx51vyOxh5Ummsba3
q9w7hilWt+TnzroKkG9jVIJIo9QBo3cHdNtxFDf12AhYLIQjGvrtbJkL2Mz9KZU6
4ZOK4WLqjrZ8PzuOL2FoxxvozXNw6xV9IZO1Bfc5G8Ugya9wNUSiM3vfFtDji19e
iHha0abSP9nJKrVv2ikXHHHUxszXJkWJvovks2qJuCbkraC/g2AFArjMor8ftiuX
Ru4A35sclc/6Qyh2akgmXDz++6S0hvEuJqPj60JbOWLXEXOe2/JniO5+HPDwq6OO
0CL9n75eQA92wzckruhbA1xjM899BI+jeUL0VbZsJq3aDophB+GxVS05o+riSnH+
u/4A1c4vkl+5Hn4PfgxZJe33kRJ9UiV4cPa2HhyEDlzqiLyrUV0YK/kkvvKvT7zH
iQ8YCqWHG3OKAhOn3kc7Fgh6w4olVkg8Nn9rztA3MOxAiAspW+XWF84wecOdotyW
yOM6FxTF9yrgm/p5U3/Wq1rRh+PQ4bw2UiGtDNNOcZYit6ux9F0=
=aQvp
-----END PGP SIGNATURE-----

B
B
Ben Sturmfels wrote on 4 Nov 2019 03:58
(name . Ludovic Courtès)(address . ludo@gnu.org)
87pni81h6t.fsf@sturm.com.au
On Mon, 04 Nov 2019, Ben Sturmfels wrote:

Toggle quote (4 lines)
> On a side note, given that Bluetooth is listed in GNOME settings, perhaps
> bluetooth-service should also be added to %desktop-services? It's
> included by default in Trisquel.

The other non-obvious thing about installing bluetooth-service is that
bluetoothd fails to run until dbus-system has been restarted, though
there's no error that explains this. I ended up restarting the machine
as running `herd restart dbus-system` crashed GNOME.

Regards,
Ben
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEPn825zvdanEG+SAhAjwF4snAaPAFAl2/k7oACgkQAjwF4snA
aPA2cw//bR44bIv0wHMMatqWS7Z/l6BPu9079lf+UFtHfkXMoryEX1TDXe8baWq1
ehi6zJ255hWJb5kPFw0e5TVmsPiGoJyRXUojf0sCzi5MepXacRj1LFCkSbYviZCz
LkBAa9oNsG/GjVVv8/cl48wYz5FxT6C34OCrxAcJjdjjjh8o63X/r01n3e5JarpQ
lcAab7yCWj/TnB+KkRL5FgbbuYTUSIqMc+Ji1t/1cJYRRwvkBkEQ4uEqpbex/pRb
7o5jTSszfkNcwe080KyzH71ASrxUNxWzVxAFbYJHPrWhfAjZyWkWqy5XpatK2gXD
U84x4yYLlRSe370UyjNRAwvN/4cYZrOVKGpenfXtT9DWCF2DG23xfVYoBtEJbKn4
k2YIHUw2COKuQlqMXVgutABBf91OlcSm9nVTGzBYqLfZrrVh/mQx0xdLBlGf4bsQ
kp6G9rs9SEKODv+vWuOZS17UK7jLZWsGR5QBae0ODedMmY48aU4sg2tu45ZVTcq8
AQnjSOnjLn8LiOxtaEttS5GEb8Qwii2Fw01Sgi4pzQ6lbT4CiqnS97HUzEmlg0ZV
QVZE8NI7MbytgyJBnBJ0KarNv7jt3gEjj/gUviG6jWDDpY+IPJETNTm/ZBwYKj7P
PXy7M8mAB+unJN7kCBIRGA+hjBgDicoFzDKMXZeAb/ZYZgiz0So=
=bGVS
-----END PGP SIGNATURE-----

L
L
Liliana Marie Prikler wrote on 27 Dec 2021 21:36
GNOME Bluetooth integration is broken
(address . control@debbugs.gnu.org)
9694a626e61bf7961b236a50c147f4df6f286a47.camel@gmail.com
merge 32166 52829
thanks
M
M
Mathieu Othacehe wrote on 4 Jan 2022 09:17
Re: bug#32166: GNOME Settings panel for Bluetooth dysfunctional
(address . 52829@debbugs.gnu.org)(address . 32166@debbugs.gnu.org)
875yqz29ug.fsf@gnu.org
Hello,

Toggle quote (5 lines)
> Using the bluetooth-service and blueman, I can manage to connect to
> bluetooth devices. However, the "Bluetooth" section in the GNOME
> settings reports: "No Bluetooth Found", as can be seen in the attached
> capture.

Took me some times to figure it out, but the attached patches do fix the
issue. In short, gnome-settings-daemon needs a RW access to
/dev/rfkill.

It installs an udev rule to add an uaccess tag to the /dev/rfkill
device. Then elogind takes care of modifying the file ACL accordingly.

Two things were broken:

1. The gnome-settings-daemon udev path was wrong.

2. The gnome service didn't registered the udev rules installed by the
gnome-settings-daemon.

I now have, as intended:

Toggle snippet (12 lines)
mathieu@meije ~$ getfacl /dev/rfkill
getfacl: Removing leading '/' from absolute path names
# file: dev/rfkill
# owner: root
# group: root
user::rw-
user:mathieu:rw-
group::rw-
mask::rw-
other::r--

Thanks,

Mathieu
From 8ba28c5b1fe65c469bb0ce041f43159f9f136202 Mon Sep 17 00:00:00 2001
From: Mathieu Othacehe <othacehe@gnu.org>
Date: Mon, 3 Jan 2022 20:21:11 +0100
Subject: [PATCH 1/2] gnu: gnome-settings-daemon: Fix udev directory.

* gnu/packages/gnome.scm (gnome-settings-daemon)[arguments]
{#:configure-flags}: Fix the udev directory.
---
gnu/packages/gnome.scm | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

Toggle diff (16 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index f7f00100b3..a472e66358 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -5577,8 +5577,7 @@ (define-public gnome-settings-daemon
#:glib-or-gtk? #t
#:configure-flags
(list (string-append "-Dudev_dir="
- (assoc-ref %outputs "out")
- "/lib/udev/rules.d/")
+ (assoc-ref %outputs "out") "/lib/udev")
"-Dsystemd=false"
;; Otherwise, the RUNPATH will lack the final path component.
(string-append "-Dc_link_args=-Wl,-rpath="
--
2.34.0
From fb60e647dcd92e294c33fdb4293f6c69290d260f Mon Sep 17 00:00:00 2001
From: Mathieu Othacehe <othacehe@gnu.org>
Date: Mon, 3 Jan 2022 20:22:02 +0100
Subject: [PATCH 2/2] services: gnome: Add udev rules.


* gnu/services/desktop.scm (gnome-packages, gnome-udev-rules): New procedures.
(gnome-polkit-settings): Use the gnome-packages procedure.
(gnome-desktop-service-type): Add an udev service extension.
---
gnu/services/desktop.scm | 28 ++++++++++++++++++++--------
1 file changed, 20 insertions(+), 8 deletions(-)

Toggle diff (49 lines)
diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm
index c6761ca784..c2ee3a3d80 100644
--- a/gnu/services/desktop.scm
+++ b/gnu/services/desktop.scm
@@ -868,22 +868,34 @@ (define-record-type* <gnome-desktop-configuration> gnome-desktop-configuration
gnome-desktop-configuration?
(gnome gnome-package (default gnome)))
-(define (gnome-polkit-settings config)
- "Return the list of GNOME dependencies that provide polkit actions and
-rules."
+(define (gnome-packages config packages)
+ "Return the list of GNOME dependencies from CONFIG which names are part of
+the given PACKAGES list."
(let ((gnome (gnome-package config)))
(map (lambda (name)
((package-direct-input-selector name) gnome))
- '("gnome-settings-daemon"
- "gnome-control-center"
- "gnome-system-monitor"
- "gvfs"))))
+ packages)))
+
+(define (gnome-udev-rules config)
+ "Return the list of GNOME dependencies that provide udev rules."
+ (gnome-packages config '("gnome-settings-daemon")))
+
+(define (gnome-polkit-settings config)
+ "Return the list of GNOME dependencies that provide polkit actions and
+rules."
+ (gnome-packages config
+ '("gnome-settings-daemon"
+ "gnome-control-center"
+ "gnome-system-monitor"
+ "gvfs")))
(define gnome-desktop-service-type
(service-type
(name 'gnome-desktop)
(extensions
- (list (service-extension polkit-service-type
+ (list (service-extension udev-service-type
+ gnome-udev-rules)
+ (service-extension polkit-service-type
gnome-polkit-settings)
(service-extension profile-service-type
(compose list
--
2.34.0
?