QubesOS / qubes-issues

The Qubes OS Project issue tracker
https://www.qubes-os.org/doc/issue-tracking/
541 stars 48 forks source link

nm-applet: No Wifi password prompt = no connection #4521

Closed 3hhh closed 5 years ago

3hhh commented 5 years ago

Qubes OS version:

4.0 debian 9 template with the most recent updates

Affected component(s):

nm-applet

Steps to reproduce the behavior:

Click on the nm-applet icon, select a Wifi network that is not saved (WPA 2 PSK).

Expected behavior:

A popup appears asking for a passphrase.

Actual behavior:

No popup appears, the connection fails (journalctl -f shows authentication failure).

Workaround: Use nmtui instead, that one will display a password prompt.

General notes:

For some strange reason WPA2 Enterprise with certificates did show a popup.

It did work until last week (before the last apt-get dist-upgrade in my debian 9 template VM).

My guess: nm-applet appears to be using gnome-keyring for storing passwords and that integration somewhat fails.

I'm not sure whether it only happens with awesome WM (I'm using awesome).

Example logs:

Nov 19 17:43:16 d-sys-net kernel: IPv6: ADDRCONF(NETDEV_UP): wls7: link is not ready
Nov 19 17:43:16 d-sys-net NetworkManager[617]: <info>  [1542645796.8962] device (wls7): supplicant interface state: disconnected -> disabled
Nov 19 17:43:16 d-sys-net NetworkManager[617]: <info>  [1542645796.8990] device (wls7): state change: prepare -> config (reason 'none') [40 50 0]
Nov 19 17:43:16 d-sys-net NetworkManager[617]: <info>  [1542645796.8995] device (wls7): Activation: (wifi) access point 'TEST' has security, but secrets 
Nov 19 17:43:16 d-sys-net NetworkManager[617]: <info>  [1542645796.8996] device (wls7): state change: config -> need-auth (reason 'none') [50 60 0]
Nov 19 17:43:16 d-sys-net NetworkManager[617]: <info>  [1542645796.9116] device (wls7): supplicant interface state: disabled -> disconnected
Nov 19 17:43:16 d-sys-net dbus-daemon[747]: Activating service name='org.freedesktop.secrets'
Nov 19 17:43:16 d-sys-net dbus-daemon[747]: Activated service 'org.freedesktop.secrets' failed: Failed to execute program org.freedesktop.secrets: No such f
Nov 19 17:43:16 d-sys-net NetworkManager[617]: <warn>  [1542645796.9214] device (wls7): No agents were available for this request.
Nov 19 17:43:16 d-sys-net NetworkManager[617]: <info>  [1542645796.9219] device (wls7): state change: need-auth -> failed (reason 'no-secrets') [60 120 7]
Nov 19 17:43:16 d-sys-net NetworkManager[617]: <info>  [1542645796.9230] manager: NetworkManager state is now DISCONNECTED
Nov 19 17:43:16 d-sys-net NetworkManager[617]: <warn>  [1542645796.9236] device (wls7): Activation: failed for connection 'TEST'
Nov 19 17:43:16 d-sys-net NetworkManager[617]: <info>  [1542645796.9255] device (wls7): state change: failed -> disconnected (reason 'none') [120 30 0]
Nov 19 17:43:16 d-sys-net kernel: IPv6: ADDRCONF(NETDEV_UP): wls7: link is not ready

Related issues:

It looks like this one to me: https://github.com/NixOS/nixpkgs/issues/38967

3hhh commented 5 years ago
dpkg -l |grep gnome-keyring
ii  gnome-keyring                         3.20.0-3                          amd64        GNOME keyring services (daemon and tools)
ii  libgnome-keyring-common               3.12.0-1                          all          GNOME keyring services library - data files
ii  libgnome-keyring0:amd64               3.12.0-1+b2                       amd64        GNOME keyring services library
ii  libpam-gnome-keyring:amd64            3.20.0-3                          amd64        PAM module to unlock the GNOME keyring upon login

dpkg -l |grep NetworkMan
ii  libnm0:amd64                          1.6.2-3+deb9u2                    amd64        GObject-based client library for NetworkManager
ii  qubes-core-agent-network-manager      4.0.38-1+deb9u1                   amd64        NetworkManager integration for Qubes VM

uname -r
4.14.74-1.pvops.qubes.x86_64
unman commented 5 years ago

@3hhh I have exactly the same packages as you cite, and the password popup appears under KDE and Xfce. I doubt that i3 is responsible but you could check this by switching to Xfce, and confirming that the prompt appears.

If the prompt doesn't appear for you under Xfce, please change template for sys-net to a stock stretch. Confirm the prompt appears. Update, and confirm it appears again. That would isolate any issue to your template.

3hhh commented 5 years ago

I now also tested with xfce and the behaviour is the same there.

Testing with stock stretch or fedora-28 will take a longer time though...

Side note: I'm using a disposable sys-net for ages, maybe that is also relevant. I tested without my custom NetworkManager conf, but that didn't change anything neither.

3hhh commented 5 years ago

Ah... Found the reason:

Looks like I had manually removed /usr/bin/gnome-keyring-daemon a long time ago as it was annoying me a lot (always generating popups asking to set a master passphrase or whatever). Now it backfired with nm-applet having a runtime dependency on it, presumably after the most recent update.

So my bad, thanks that you verified it @unman.