sddm / sddm

QML based X11 and Wayland display manager
GNU General Public License v2.0
1.89k stars 331 forks source link

Not switching to awesome WM even after selecting it #868

Open amitavmohanty01 opened 7 years ago

amitavmohanty01 commented 7 years ago

I had only KDE Plasma window manager which was getting selected when I was logging in. I installed awesome WM. There is an entry for it at /usr/share/xsessions/awesome.desktop. The option shows up in SDDM login screen too. However, when I select the awesome option and try logging in, I get logged into Plasma. There are no errors in ~/.xsession-errors. Also, /etc/sddm.conf does not have any entry for Plasma so it should not be default.

kscd commented 7 years ago

Which sddm version are you using on which distribution? I just tested to login into awesome under Debian 9 (stretch) with sddm 0.14.0-4 and it works perfectly.

Regarding Plasma being default: I believe, the session which was used last time is pre-selected per default.

amitavmohanty01 commented 7 years ago

I am using 0.14.0-3 on Arch linux. Is there any log that I can check and provide for debugging my issue better?

amitavmohanty01 commented 7 years ago

I did a fresh reboot. When I reached SDDM screen, I selected awesome but again I was in Plasma. The log line is as follows:

Session "/usr/share/xsessions/plasma.desktop" selected, command: "/usr/bin/startkde"

kscd commented 7 years ago

I have currently a theory of what might happen when you try to log in in awesome: maybe your log in theme is broken so that it can't tell sddm which WM to use, causing sddm to fall back to Plasma (happened to me, while I was writing my own theme). Which log in theme are you currently using? It is stated in the file /etc/sddm.conf. If this file does not exist, the default theme 'maui' will be used.

To be very sure that awesome has nothing to do with it: could you try to install a third WM and try to log in to it? (It really shouldn't be an issue with awesome, if awesome is broken on your system you would just be thrown back to the log in screen.)

amitavmohanty01 commented 7 years ago

Yeah, it is not a problem with awesome WM. I switched to LightDM and I am able to login to awesome WM from that.

I am not on my machine currently. I will update you soon.

amitavmohanty01 commented 7 years ago

The theme selected is elarun. I think I switched to this one because some time back 'maui' was broken.

kscd commented 7 years ago

I can confirm that the theme 'elarun' is currently broken in sddm.

In my tests I observed the following behavior:

  1. On a system with a newly installed sddm but more than one desktop installed, the desktop which appears first in the menu will be loaded, no matter which was selected.
  2. For the case that sddm was used before, the last used session will be used, again, regardless of the selected entry.
  3. By changing the log in theme (to a working one), the last used session will be updated (say from 'Plasma' to 'awesome'). If now 'elarun' is selected again, instead of always loading 'Plasma', 'awesome' will now be always loaded.

What happens is that the preset desktop in the 'Menu' widget will always be used. By retrieving the current entry from the widget, not the current, but the initial set entry will be returned. This means that, technically, not 'elarun' is broken but the 'Menu' widget.

I'm working on a solution for this by attempting to fix the 'Menu' widget, or to rewrite 'elarun' to use the 'ComboBox' widget, which works just fine. For the case that you want to switch back to sddm, you can, as a workaround, change your log in theme to a working one like maldives, maya or a custom one.

kscd commented 7 years ago

Turned out I was partly wrong. The 'elarun' theme uses both a Menu widget and a ComboBox widget for the same purpose, which makes no sense. The fix should be easy enough, but I can't test it right now.