canonical / lightdm

Display Manager
GNU General Public License v3.0
827 stars 138 forks source link

After update to libxfce4ui v4.18.4 - User name still / already typed-in after resuming from standby #310

Closed gc-user closed 10 months ago

gc-user commented 1 year ago

So, I have the user list disabled, via greeter-hide-users=true in the settings. That means, I have to type in the user name (short format) into the user name text box after boot and after resuming from standby.

After updating libxfce4ui from v4.18.3 to v4.18.4 (on void linux), the short form of the user name is already (or still, however one wants to look at it) typed into the text box for the user name after resuming from standby. That box should be empty after resume from standby.

Downgrading libxfce4ui to v4.18.3 reverts the behavior to the expected one: The text box for the user name is empty (as the one for the password and as it should be).

So, I don't know, how LightDM and libxfce4ui interact and if LightDM, Light-Locker or LightDM-gtk-greeter is the package that handles the actual login and how the information "don't tell me which user is currently logged-in" (meaning: leave the text box for the user name empty and don't put in the user name (short form) in the box just because a user is logged-in but invoked a lock by going into standby) is relayed and handled (meaning, which packages are involved in the process), but maybe the devs of LightDM can elucidate me in that regard or know where to look and maybe adjust LightDM if it needs adjusting to the new requirements of libxfce4ui v4.18.4 (which seem to be the same in v4.19.2 - I tested that version to be sure: same issue as with v4.18.4).

I found a comparison between the versions 4.18.3 and 4.18.4 of libxfce4ui, but I can't really tell which change(s) might be responsible for the different behavior regarding the login screen of LightDM (after resuming from standby):

https://gitlab.xfce.org/xfce/libxfce4ui/-/compare/libxfce4ui-4.18.3...libxfce4ui-4.18.4?from_project_id=6&straight=false

qwertychouskie commented 1 year ago

Is lightdm-gtk-greeter or light-locker handling locks/unlocks? Both look visually similar, but are completely different pieces of software. lightdm-gtk-greeter uses LightDM as the display manager, while AFAIU light-locker does not use LightDM.

Either way though, this issue should be opened in the relevant project, as it does not appear to be an issue with the display server itself.

gc-user commented 1 year ago

I'm not sure. My install notes from way back when tell me that I had to install light-locker in order for the system to ask for credentials after standby - via LightDM. I'm getting the same login screen after standby as I do after boot - for me, that's LightDM, esp. since it looks just like I set it up via LightDM and LightDM-gtk-greeter settings.

I don't know the internal workings, but to me it seems as if light-locker just refers the system back to LightDM after standby, meaning light-locker not handling the actual authentication process.

The other option I put in my notes was to let xfce screensaverask for credentials after standby, but I wanted to have the same look and feel as with login after boot, so I went light-locker.

I think, LightDM-gtk-greeter handles some look and feel stuff for the LightDM login screen, not sure it is involved in the authentication process. The setting for having a text box for the user name as well (just like for the password) is a LightDM setting. That's why my go-to package was that. (Well, second after the one which update invokes the issue, namely libxfce4ui.)

The devs of LightDM would be the ones to know where LightDM gets it's information from regarding authentication, in this case the user name of the user that's logged-in, after resuming from standby. It might be a package other than light-locker, one that handles sessions, authentications or something...

qwertychouskie commented 1 year ago

Can you show a screenshot of the unlock screen?

gc-user commented 1 year ago

It looks like this:

https://i.redd.it/xszte4u4g9o71.jpg

But with libxfce4ui v4.18.4 and after standby, the user handle is typed into the upper box and the cursor is located in the password box, ready to type in the password. With libxfce4ui v4.18.3 it looks like the screenshot, cursor in user handle box which is empty.

gc-user commented 1 year ago

On light-locker (https://github.com/the-cavalry/light-locker):

"It relies on lightdm for locking and unlocking your session via UPower or logind/systemd."

Void linux doesn't use systemd, but it uses elogind (which was necessary to install for the xfce reboot / shutdown buttons work).

qwertychouskie commented 1 year ago

OK I was probably thinking of xfce4-screensaver's integrated lock screen. Anyways it definitely looks like you are using LightDM. I'd suggest opening an issue at https://github.com/Xubuntu/lightdm-gtk-greeter

gc-user commented 10 months ago

Great news!

I posted an issue report on xfce Gitlab and thankfully, Gaël Bonithon was able to come up with an easy solution for the issue. https://gitlab.xfce.org/xfce/libxfce4ui/-/issues/98

After some more digging, I found the cause for this issue:

It turns out, that if in the session manager (gui), if "Lock screen before sleep" is enabled, this issue appears, if that setting is disabled, the issue isn't there.