Subject: WiFi stops working if managed with NetworkManager after migration to unprivileged guix daemon
From: Rodion Goritskov <[email-masked]>
To: [email-masked]
Date: Thu, 24 Apr 2025 21:03:22 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi!

I tried to opt-in into using guix daemon in unprivileged mode using:

> (modify-services %base-services
> 		 (guix-service-type config =>
>                                     (guix-configuration (inherit config)
> 							  (privileged? #f))))

After reconfiguration (and finish of the task changing owner of store to
guix-daemon), I rebooted system to found out that WiFi not working anymore.

I use NetworkManager for the network configuration, with pretty much the
default configuration:

> (service wpa-supplicant-service-type)
> (service network-manager-service-type
>          (network-manager-configuration (vpn-plugins (list
>                                                       network-manager-openvpn))))

In logs I can see the following errors:

> 2025-04-24 10:34:15 localhost NetworkManager[852]: <warn>  [1745483655.8534] plugin: skip invalid file /gnu/store/agadky1p0ba367avf524sh5wmcdxcxb1-network-manager-1.52.0/lib/NetworkManager/1.52.0/libnm-device-plugin-ovs.so: file has invalid owner (should be root)
> 2025-04-24 10:34:15 localhost NetworkManager[852]: <warn>  [1745483655.8535] plugin: skip invalid file /gnu/store/agadky1p0ba367avf524sh5wmcdxcxb1-network-manager-1.52.0/lib/NetworkManager/1.52.0/libnm-device-plugin-bluetooth.so: file has invalid owner (should be root)
> 2025-04-24 10:34:15 localhost NetworkManager[852]: <warn>  [1745483655.8536] plugin: skip invalid file /gnu/store/agadky1p0ba367avf524sh5wmcdxcxb1-network-manager-1.52.0/lib/NetworkManager/1.52.0/libnm-device-plugin-adsl.so: file has invalid owner (should be root)
> 2025-04-24 10:34:15 localhost NetworkManager[852]: <warn>  [1745483655.8536] plugin: skip invalid file /gnu/store/agadky1p0ba367avf524sh5wmcdxcxb1-network-manager-1.52.0/lib/NetworkManager/1.52.0/libnm-device-plugin-wifi.so: file has invalid owner (should be root)
> 2025-04-24 10:34:15 localhost NetworkManager[852]: <warn>
> [1745483655.8537] plugin: skip invalid file
> /gnu/store/agadky1p0ba367avf524sh5wmcdxcxb1-network-manager-1.52.0/lib/NetworkManager/1.52.0/libnm-device-plugin-wwan.so:
> file has invalid owner (should be root)

Looks like NetworkManager doesn't like a non-root owner of plugins.

After reconfiguration back to the priveleged guix-service-type,
NetworkManager is back to normal:

> 2025-04-24 11:40:49 localhost NetworkManager[833]: <info>  [1745487649.2569] Loaded device plugin: NMOvsFactory (/gnu/store/agadky1p0ba367avf524sh5wmcdxcxb1-network-manager-1.52.0/lib/NetworkManager/1.52.0/libnm-device-plugin-ovs.so)
> 2025-04-24 11:40:49 localhost NetworkManager[833]: <info>  [1745487649.3357] Loaded device plugin: NMBluezManager (/gnu/store/agadky1p0ba367avf524sh5wmcdxcxb1-network-manager-1.52.0/lib/NetworkManager/1.52.0/libnm-device-plugin-bluetooth.so)
> 2025-04-24 11:40:49 localhost NetworkManager[833]: <info>  [1745487649.3373] Loaded device plugin: NMAtmManager (/gnu/store/agadky1p0ba367avf524sh5wmcdxcxb1-network-manager-1.52.0/lib/NetworkManager/1.52.0/libnm-device-plugin-adsl.so)
> 2025-04-24 11:40:49 localhost NetworkManager[833]: <info>  [1745487649.3414] Loaded device plugin: NMWifiFactory (/gnu/store/agadky1p0ba367avf524sh5wmcdxcxb1-network-manager-1.52.0/lib/NetworkManager/1.52.0/libnm-device-plugin-wifi.so)
> 2025-04-24 11:40:49 localhost NetworkManager[833]: <info>
> [1745487649.3427] Loaded device plugin: NMWwanFactory
> (/gnu/store/agadky1p0ba367avf524sh5wmcdxcxb1-network-manager-1.52.0/lib/NetworkManager/1.52.0/libnm-device-plugin-wwan.so)