XFCE4 screen hang
Symptom
Right after logging in using lightdm with gtk-greeter, I am able to see the actions executing by the XFCE4 startup splash. At the moment the desktop should be ready, the mouse moves but everything else is not displayed anymore. If I use Ctrl+Alt+F2
and then return back to XFCE with Ctrl+Alt+F7
, the system magically recovers. Even locking and unlocking does work. But logout or a fresh reboot causes the same “hang” again. I must have messed up something during my experiments having KDE, Gnome, Budgie, Cinnamon and XFCE4 installed simultaneously. yea yea, I know…. :-)
Update: I was completely wrong!
All I thought I found out, seems to be completely wrong. I have now spent hours in finding the real root cause but had no success. All I know is that I can go back and kill my XFCE Config and start over with a new profile. Then the login works and it stops working and I have no clue what step it was. The logfiles give some errors but non was or seems to be related to my issue. I reinstalled all graphics drivers, eliminated the other errors, updated kernel parameter as suggested in the arch wiki. Updated xorg.conf file with the settings from the wiki and nothing helps.
On a new profile, all works and after a while (probably some settings I made) this strange behavior starts.
For me I do not have more time to investigate into this as a switch back to cinnamon works like a charm. I only know that the profile reset seems to be a good idea as all tray icons like seafile now work without any issues.
The following info may or may not help you with your situation. It was pure random event on my system. I was not able to track this down to the root cause!!!
Searching for the cause
As I like to understand such issues, I dug deeper and tried to find the root cause. But how to find a issue if there are no warnings or errors within the different logs. X server was ok, nvidia was running without errors or warning and XFCE4 did not record any problem. I searched the internet for ideas and found really strange solutions like disable sound played at login and other stuff.
Then I did it the hard way. Move away my current profile and rename the folder. I started over with an empty profile directory and everything worked. Then I copied over one configuration / application settings folder after the other. And suddenly I had the issue again. But this time I knew what the last folders were and what I changed in the configuration.
The root cause had something to do with my keyrings and the gnome-keyring service started during XFCE4 startup.
Solutions
Remove gnome-keyring package
First, I simply removed the gnome-keyring
and seahorse
packages. As they are optionally installed and not required by any application I use, I did not see any issues coming up other than entering some passwords a bit more than once.
A reboot after package removal and the login just worked and was as fast as I expected it to be.
Reinstall gnome-keyring
Knowing how to get rid of the issue was ok, but I like to know what files were responsible for the issue. So I logged in using one of the ttys. Then I removed my local keyring folder that stored the browser and application login credentials. Nothing I really need as they just made it easier to use but are stored at different locations.
After removing these files, I reinstalled gnome-keyring
and seahorse
, rebooted and tried again. Chromium asked to create a new default keystore and I just did that. Rebooting and relogin did not bring the issue back so far. I do not know the exact part of my keyring files that caused the issue. But I know that it had to do with them or at least how gnome-keyring tried to access these files.
Learnings
- Backup your system when it is in a running state! Specially if you star messing around with the installation :-D
- I am quite sure, that the issue was triggered by myself, while messing around with all the different desktops, window managers and login managers
- Do some experiments in a virtual machine first
- Do not rely on the keyring to store all your secrets. Store them in a safe password manager. This way, you can rebuild your keyrings, if they get corrupted for some weired reason