Description of problem:
after the upgrade to F34 I was impacted by https://bugzilla.redhat.com/show_bug.cgi?id=1944011 so I removed all the parallel screensavers/lockers and kept only xfce4-screensaver. The issue is now that the switch user button doesn't show unless I kill the auto-started xfce4-screensaver process and start it again (with Alt+F2 for example, but I can also start it from a terminal).
The severity is high because the laptop is used by multiple persons and it's not acceptable to have it locked by a single individual in times of homeschooling and homeworking (and the workaround isn't usable by the rest of the family).
Version-Release number of selected component (if applicable):
$ rpm -qa | grep -e saver -e locker
Always, I rebooted a few times to make it work, but same result
Steps to Reproduce:
1. make sure xfce4-screensaver-preferences shows the "User Switching" option on
2. make sure xfce4-screensaver is autostarted
4. lock -> no switch user button
6. kill/stop xfce4-screensaver
7. Alt+F2 and start xfce4-screensaver
8. lock -> switch user button is available (and works)
Obviously, the switch user button should be there from the beginning
The issue might already have been in F33 because I think, I was transparently using xscreensaver instead of xfce4-screensaver.
I couldn't find any relevant error message in dmesg, journalctl [--user] or in ~/.xsession-errors.
Thanks for the thorough bug report. I have filed this upstream and push a fix as soon as one is available.
Upstream issue -
The xfce4-screensaver package sets both autostart desktop file and dbus service for some reason:
$ rpm -ql xfce4-screensaver | egrep 'dbus|autostart'
But when started with dbus-services it lacks required environment variables, so it ignores user settings.
So a work-around for this problem would be to disable /usr/share/dbus-1/services/org.xfce.ScreenSaver.service file, as when started with it the process lacks required environment variables:
sudo mv /usr/share/dbus-1/services/org.xfce.ScreenSaver.service /usr/share/dbus-1/services/org.xfce.ScreenSaver.service.orig
# And to prevent future upgrade or reinstall of xfce4-screensaver package from restoring the file
sudo tee /usr/share/dbus-1/services/org.xfce.ScreenSaver.service < /dev/null
Maybe the package should install /etc/xdg/autostart/xfce4-screensaver.desktop only and remove /usr/share/dbus-1/services/org.xfce.ScreenSaver.service. I suppose there's no need for both.