Description of problem: MGA7x64, sddm, xfce4, XScreensaver are working together fine with just one exception: When XScreensaver is running, there appears a window, where you can enter your login password to unlock the screen, or you can click on "New login" to start a new greeter and start a new session under a different user. But doing so, nothing will happen. Reason behind: There's a file missing, which should be in every user home: ~/.Xresources = xscreensaver.newLoginCommand: dm-tool switch-to-greeter If this file is present, "New login" works perfectly. So, I recommend to put .Xresources into /etc/skel, so during "useradd" this file will be copied to the new user home, also.
CC: (none) => fri
See Also: (none) => https://bugs.mageia.org/show_bug.cgi?id=28222
Thank you for this report. See also bug 28222. https://bugs.mageia.org/attachment.cgi?id=12265 shows the wakeup dialogue. Trying this new bug as described on M8, SDDM, Xfce, it also happens. xscreensaver-5.45-1.mga8.tainted After clicking the "New login" button, it becomes greyed, there are two lines of error message (too long to transcribe) in yellow at the top of the screen, nothing more happens. The normal password box works. I tried the remedy given above: $ cat ~/.Xresources xscreensaver.newLoginCommand: dm-tool switch-to-greeter but without trying logout/in, it changed nothing. I wil do that. Assigning this to NicolasS who already has the earlier bug.
Version: 7 => 8Assignee: bugsquad => nicolas.salgueroWhiteboard: (none) => MGA7TOOSource RPM: xscreensaver-5.42-1.mga7.src.rpm => xscreensaver-5.42-1.mga7.src.rpm, xscreensaver-5.45-1.mga8.tainted.src.rpm
On M8, SDDM, LXDE, after having logged out/in, $ cat ~/.Xresources xscreensaver.newLoginCommand: dm-tool switch-to-greeter waking up the locked screen and clicking 'New login' does *not* show any yellow error message, but re-shows the main login screen. So the fix apparently works. @Markus : Is this what you expect to happen? Alas, I do not have a second user to try the effect of logging in to that. Re-logging in to the same user returns to the xscreensaver screen.
Hi Lewis, yes, it's exactly like this. I have put the .Xresources file to a certain user home, and after logging in into this account, I could start XScreensaver and use "New login" sucessfully. B.t.w., why don't you just create a new test user for that purpose? I have created plenty of them for testing things like that... Thanks, best regards, Markus
Suggested advisory: ======================== The updated packages allow XScreensaver to start new login screen. References: https://bugs.mageia.org/show_bug.cgi?id=28421 ======================== Updated packages in 7/{core|tainted}/updates_testing: ======================== xscreensaver-5.42-1.1.mga7 xscreensaver-base-5.42-1.1.mga7 xscreensaver-common-5.42-1.1.mga7 xscreensaver-gl-5.42-1.1.mga7 xscreensaver-extrusion-5.42-1.1.mga7 xscreensaver-5.42-1.1.mga7.tainted xscreensaver-base-5.42-1.1.mga7.tainted xscreensaver-common-5.42-1.1.mga7.tainted xscreensaver-gl-5.42-1.1.mga7.tainted xscreensaver-matrix-5.42-1.1.mga7.tainted xscreensaver-extrusion-5.42-1.1.mga7.tainted from SRPMS: xscreensaver-5.42-1.1.mga7.src.rpm xscreensaver-5.42-1.1.mga7.tainted.src.rpm Updated packages in 8/{core|tainted}/updates_testing: ======================== xscreensaver-5.45-1.1.mga8 xscreensaver-base-5.45-1.1.mga8 xscreensaver-common-5.45-1.1.mga8 xscreensaver-gl-5.45-1.1.mga8 xscreensaver-extrusion-5.45-1.1.mga8 xscreensaver-5.45-1.1.mga8.tainted xscreensaver-base-5.45-1.1.mga8 xscreensaver-common-5.45-1.1.mga8.tainted xscreensaver-gl-5.45-1.1.mga8.tainted xscreensaver-matrix-5.45-1.1.mga8.tainted xscreensaver-extrusion-5.45-1.1.mga8.tainted from SRPMS: xscreensaver-5.45-1.1.mga8.src.rpm xscreensaver-5.45-1.1.mga8.tainted.src.rpm
Status: NEW => ASSIGNEDAssignee: nicolas.salguero => qa-bugs
Bug confirmed on this workstation. Update installed but did not fix the issue. Using SDDM and LXQt. The dm-tool referenced in the fix is part of the lightdm package. This fix will not work if the lightdm package is not installed. For SDDM there is a suggestion here using dbus but it did not work correctly for me. System: Mageia 7, x86_64, LXQt, SDDM, Intel CPU, nVidia GPU using nvidia-current proprietary driver. $ uname -a Linux marte 5.10.33-desktop-1.mga7 #1 SMP Thu Apr 29 14:25:20 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux $ rpm -qa | grep xscreensaver xscreensaver-common-5.42-1.1.mga7.tainted xscreensaver-5.42-1.1.mga7.tainted $ LANGUAGE=C rpm -q lightdm package lightdm is not installed $ urpmf --files /dm-tool | sort -u lightdm:/usr/bin/dm-tool lightdm:/usr/share/bash-completion/completions/dm-tool lightdm:/usr/share/man/man1/dm-tool.1.xz
CC: (none) => mageiaKeywords: (none) => feedback
Shouldn't it be running /usr/bin/sddm-greeter ?
CC: (none) => davidwhodgins
Also, it shouldn't require ~/.Xresources settings, but should be fixed in sddm itself.
(In reply to Dave Hodgins from comment #6) > Shouldn't it be running /usr/bin/sddm-greeter ? Does not seem so. (In reply to Dave Hodgins from comment #7) > Also, it shouldn't require ~/.Xresources settings, but should be fixed in > sddm itself. The issue is in xscreensaver and how it handles a "new login" by default.
Any changes to fix it must work in all desktop environments, with all desktop managers, and must not requires changes to the user's home directory which may or may not be accessible during installation of an update. Changes to /etc/skel must be compatible with a base-system-minimal installation with no gui. Also note that changes to /etc/skel do not affect existing users.
CC: (none) => nicolas.salguero
Hi, The fix is taken from Fedora. It is a wrapper script (/usr/libexec/xscreensaver/xscreensaver-newlogin-wrapper) but I think it lacks support for sddm. If someone knows the command for sddm, it will be easy to add it to the script. Best regards, Nico.
The script "/usr/libexec/xscreensaver/xscreensaver-newlogin-wrapper" has the following lines that provide support for sddm. ########################################## check_manager_and_exec "sddm" \ "qdbus --system org.freedesktop.DisplayManager /org/freedesktop/DisplayManager/Seat0 org.freedesktop.DisplayManager.Seat.SwitchToGreeter" ########################################## But for this script to work, the file /etc/X11/app-defaults/XScreenSaver needs to be changed so that the following line ############################################## ! *newLoginCommand: gdmflexiserver -ls ############################################## is replaced with ############################################## *newLoginCommand: /usr/libexec/xscreensaver/xscreensaver-newlogin-wrapper ############################################## Tested on workstation using sddm.
Suggested advisory: ======================== The updated packages allow XScreensaver to start new login screen. References: https://bugs.mageia.org/show_bug.cgi?id=28421 ======================== Updated packages in 7/{core|tainted}/updates_testing: ======================== xscreensaver-5.42-1.2.mga7 xscreensaver-base-5.42-1.2.mga7 xscreensaver-common-5.42-1.2.mga7 xscreensaver-gl-5.42-1.2.mga7 xscreensaver-extrusion-5.42-1.2.mga7 xscreensaver-5.42-1.2.mga7.tainted xscreensaver-base-5.42-1.2.mga7.tainted xscreensaver-common-5.42-1.2.mga7.tainted xscreensaver-gl-5.42-1.2.mga7.tainted xscreensaver-matrix-5.42-1.2.mga7.tainted xscreensaver-extrusion-5.42-1.2.mga7.tainted from SRPMS: xscreensaver-5.42-1.2.mga7.src.rpm xscreensaver-5.42-1.2.mga7.tainted.src.rpm Updated packages in 8/{core|tainted}/updates_testing: ======================== xscreensaver-5.45-1.2.mga8 xscreensaver-base-5.45-1.2.mga8 xscreensaver-common-5.45-1.2.mga8 xscreensaver-gl-5.45-1.2.mga8 xscreensaver-extrusion-5.45-1.2.mga8 xscreensaver-5.45-1.2.mga8.tainted xscreensaver-base-5.45-1.2.mga8 xscreensaver-common-5.45-1.2.mga8.tainted xscreensaver-gl-5.45-1.2.mga8.tainted xscreensaver-matrix-5.45-1.2.mga8.tainted xscreensaver-extrusion-5.45-1.2.mga8.tainted from SRPMS: xscreensaver-5.45-1.2.mga8.src.rpm xscreensaver-5.45-1.2.mga8.tainted.src.rpm
Keywords: feedback => (none)
Installed and tested without issues. Tested with SDDM and LXQt DE. System: Mageia 7, x86_64, Intel CPU, nVidia GPu using nvidia-current proprietary driver. $ uname -a Linux marte 5.10.33-desktop-1.mga7 #1 SMP Thu Apr 29 14:25:20 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux $ rpm -qa | grep xscreensaver xscreensaver-5.42-1.2.mga7.tainted xscreensaver-common-5.42-1.2.mga7.tainted
Whiteboard: MGA7TOO => MGA7TOO MGA7-64-OK
I haven't used a screensaver in years, so I may not be doing something correctly, but... VirtualBox MGA8-32 Xfce session, completely non-tainted, using sddm. This system was updated successfully from an old Cauldron test install from the Live iso. The xscreensaver and sddm packages were not installed, but installed without issue. Switched to sddm and set up xscreensaver. It took a while to figure out how to invoke the fault, but eventually I was able to do it. Clicking on the "new login" button grayed it out, but there was no other response. Used qarepo to get the non-tainted packages in Comment 12. No installation issues. I wasn't clear on whether a reboot was needed to invoke the changes, so I did one anyway. It doesn't work. Clicking on the "new login" button brings up the error described in Comment 11. I have not yet tested the 32-bit tainted version.
CC: (none) => andrewsfarm
Hi, If you have a ~/.xscreensaver file, you need to remove it. I think the package may need a file stating that but I do not know how to do it. Best regards, Nico.
Tried that, and it didn't help, but, after looking at the error message again, and looking at the two scripts listed in Comment 11, it seems that my install couldn't find the file/command "qdbus." /usr/bin/qdbus is contained in qttools5-qtdbus, which was not installed on my system. Installing it let the "new login" button work. It looks to me like qttools5-qtdbus ought to be a dependency of xscreensaver, if not already installed. (Actually, I think it perhaps ought to be a dependency of sddm, but that's getting above my pay grade. sddm does seem to work OK with Xfce without it.) Going to try switching back to LightDM, and see what there is to see.
Working OK with LightDM, but is not working with XDM, and I don't see a command in "/usr/libexec/xscreensaver/xscreensaver-newlogin-wrapper" that addresses XDM.
Also tested the tainted version in a MGA7-32 XFCE guest. As originally installed from the Live iso, using LightDM, qttools5-qtdbus was not installed, nor was it installed as a dependency with sddm. But, it must be a dependency of xscreensaver if the "new login" button is to work with sddm.
(In reply to Thomas Andrews from comment #17) > Working OK with LightDM, but is not working with XDM, and I don't see a > command in "/usr/libexec/xscreensaver/xscreensaver-newlogin-wrapper" that > addresses XDM. XDM does not offer a mechanism for switching user so it cannot be handled by the wrapper script sadly.
(In reply to Thomas Andrews from comment #18) > Also tested the tainted version in a MGA7-32 XFCE guest. As originally > installed from the Live iso, using LightDM, qttools5-qtdbus was not > installed, nor was it installed as a dependency with sddm. But, it must be a > dependency of xscreensaver if the "new login" button is to work with sddm. If you do not use sddm, you do not need qttools5-qtdbus so that package cannot be a dependency of xscreensaver. For example, if you install task-lxde, you will have LXDM and xscreensaver whereas, if you install task-xfce, you will have lightdm and xscreensaver. The wrapper script does its best trying to handle several display managers but cannot ensure it will work in all cases.
And if you install sddm but not xscreensaver, it appears that you don't need qttools5-qtdbus, either. It's only when the two are installed together that the situation comes up. I refer you to Comment 0: "Description of problem: MGA7x64, sddm, xfce4, XScreensaver are working together fine with just one exception:" That is the situation that prompted the bug, so that is the situation that I tested. It so happened that the only Xfce installs that I had were 32-bit, but that shouldn't make a difference. And I realize that the situation where sddm is added to an Xfce install later by itself is unlikely, but that doesn't mean it won't happen. So what are we to do here? Pass this along, even though we know the situation that prompted the bug isn't fully fixed, and why, and open a new bug asking that qttools-qtbus be made a dependency of sddm?
Hi, Can you try replacing, in the wrapper script, the line: qdbus --system org.freedesktop.DisplayManager /org/freedesktop/DisplayManager/Seat0 org.freedesktop.DisplayManager.Seat.SwitchToGreeter by the following one: dbus-send --system --dest=org.freedesktop.DisplayManager /org/freedesktop/DisplayManager/Seat0 org.freedesktop.DisplayManager.Seat.SwitchToGreeter or maybe the following one: dbus-send --print-reply --system --dest=org.freedesktop.DisplayManager /org/freedesktop/DisplayManager/Seat0 org.freedesktop.DisplayManager.Seat.SwitchToGreeter If it works, qttools5-qtdbus dependency will not be a problem anymore as dbus-send is part of dbus package. I will only have to update the wrapper script and push a new build in the BS. Best regards, Nico.
The first one didn't work, but the second one did, with MGA7 and the tainted xscreensaver, and with MGA8 and the non-tainted version. And, I made sure to remove qttools5-qtdbus before testing, just in case.
Suggested advisory: ======================== The updated packages allow XScreensaver to start new login screen. References: https://bugs.mageia.org/show_bug.cgi?id=28421 ======================== Updated packages in 7/{core|tainted}/updates_testing: ======================== xscreensaver-5.42-1.3.mga7 xscreensaver-base-5.42-1.3.mga7 xscreensaver-common-5.42-1.3.mga7 xscreensaver-gl-5.42-1.3.mga7 xscreensaver-extrusion-5.42-1.3.mga7 xscreensaver-5.42-1.3.mga7.tainted xscreensaver-base-5.42-1.3.mga7.tainted xscreensaver-common-5.42-1.3.mga7.tainted xscreensaver-gl-5.42-1.3.mga7.tainted xscreensaver-matrix-5.42-1.3.mga7.tainted xscreensaver-extrusion-5.42-1.3.mga7.tainted from SRPMS: xscreensaver-5.42-1.3.mga7.src.rpm xscreensaver-5.42-1.3.mga7.tainted.src.rpm Updated packages in 8/{core|tainted}/updates_testing: ======================== xscreensaver-5.45-1.3.mga8 xscreensaver-base-5.45-1.3.mga8 xscreensaver-common-5.45-1.3.mga8 xscreensaver-gl-5.45-1.3.mga8 xscreensaver-extrusion-5.45-1.3.mga8 xscreensaver-5.45-1.3.mga8.tainted xscreensaver-base-5.45-1.3.mga8 xscreensaver-common-5.45-1.3.mga8.tainted xscreensaver-gl-5.45-1.3.mga8.tainted xscreensaver-matrix-5.45-1.3.mga8.tainted xscreensaver-extrusion-5.45-1.3.mga8.tainted from SRPMS: xscreensaver-5.45-1.3.mga8.src.rpm xscreensaver-5.45-1.3.mga8.tainted.src.rpm
Whiteboard: MGA7TOO MGA7-64-OK => MGA7TOO
The xscreensaver-base package in the mga8 tainted list should have a ".tainted" on the end. Seems to be working for 32-bits Xfce with sddm in both MGA7 and MGA8.
Whiteboard: MGA7TOO => MGA7TOO MGA7-32-OK MGA8-32-OK
Tested in a Vbox MGA8 lxQt guest with sddm. Working OK.
Whiteboard: MGA7TOO MGA7-32-OK MGA8-32-OK => MGA7TOO MGA7-32-OK MGA8-32-OK MGA8-64-OK
Tested in a MGA7 64-bit Xfce guest with LightDM and sddm. Works OK. Paid attention this time, and deleting the .xscreensaver file was unnecessary. However, a reboot, or possibly a logoff/logon to restart the xscreensaver session after the update was. Validating. Advisory in Comment 24. Be aware that there are tainted and core packages in this update, and that one package in the list in Comment 24 is missing the ".tainted."
Whiteboard: MGA7TOO MGA7-32-OK MGA8-32-OK MGA8-64-OK => MGA7TOO MGA7-64-OK MGA8-64-OK MGA7-32-OK MGA8-32-OKKeywords: (none) => validated_updateCC: (none) => sysadmin-bugs
CC: (none) => ouaurelienKeywords: (none) => advisory
An update for this issue has been pushed to the Mageia Updates repository. https://advisories.mageia.org/MGAA-2021-0110.html
Status: ASSIGNED => RESOLVEDResolution: (none) => FIXED