Not booting into GUI after update on 2025-04-07

My system does not boot into GUI mode (LightDM, GNOME) after an update today, 2025-04-07. This is, what I have found out so far:

In /var/log/pacman.log, I see

[2025-04-07T07:19:19+0200] [ALPM-SCRIPTLET] WARNING: The 'plymouth-encrypt' and 'sd-plymouth' hooks are depreciated. You should replace them with 'encrypt' and 'plymouth' hooks in your 'mkinitcpio.conf'. The 'lxdm-plymouth.service', 'lightdm-plymouth.service' and 'sddm-plymouth.service' systemd service files are no longer recommended. You should enable 'lxdm.service', 'lightdm.
service' or 'sddm.service' instead.

However, my /etc/initcpio.conf already says:

HOOKS=(plymouth base udev autodetect modconf kms block filesystems keyboard fsck)

However,

# systemctl enable lightdm.service
Failed to enable unit: File '/etc/systemd/system/display-manager.service' already exists and is a symlink to /usr/lib/systemd/system/lightdm-plymouth.service
# ls -l /etc/systemd/system/display-manager.service
lrwxrwxrwx 1 root root 48 26. Feb 2017  /etc/systemd/system/display-manager.service -> /usr/lib/systemd/system/lightdm-plymouth.service
# ls -l /usr/lib/systemd/system/lightdm-plymouth.service
insgesamt 4
-rw-r--r-- 1 root root 319 30. Dez 01:06 lightdm-plymouth.service

I wonder that this is a directory, but in this directory, there is a single systemd configuration file called /usr/lib/systemd/system/lightdm-plymouth.service/lightdm-plymouth.service:

[Unit]
Description=Light Display Manager
Conflicts=getty@tty1.service plymouth-quit.service
After=systemd-user-sessions.service getty@tty1.service plymouth-quit.service

[Service]
ExecStart=/usr/bin/lightdm
Restart=always
IgnoreSIGPIPE=no
BusName=org.freedesktop.DisplayManager

[Install]
Alias=display-manager.service

So, booting drops me into a terminal. When I login and switch to root with sudo, I can start the GUI immediately with this command:

systemctl start lightdm.service

So, I wonder, why does the GUI not come up although it is enabled?

Any help is appreciated.
Kind regards.

You need to recreate the symlink and point it to lightdm instead of lightdm-plymouth

sudo systemctl enable --now lightdm

If this, for any reason, fails then disable lightdm-plymouth and enable lightdm

sudo systemctl disable --now lightdm-plymouth
sudo systemctl enable --now lightdm
1 Like

Thanks for the quick reply. I am still confused by why a systemd unit should be a directory, that’s why both of your suggestions fail. I am hesitating to do a plain rm.

# systemctl disable --now lightdm-plymouth
Failed to disable unit: File lightdm-plymouth.service: Is a directory

A service file can’t be a directory. So something is off on your end. You may check which user had created that directory and rename it. Then try to create the needed symlink as already suggested.

You saying that there is something off on my end gave me the courage to just move the file:

# cd /usr/lib/systemd/system/lightdm-plymouth.service/
# cd ..
# mv lightdm-plymouth.service{,.old}
# mv lightdm-plymouth.service.old/lightdm-plymouth.service .

That means that the file which was earlier in the same-named directory is now in place of the directory.

Now, my system is booting into the GUI fine again.

The /usr/lib/systemd/system/lightdm-plymouth.service.old is of course empty now and I can remove it.

Thanks, kind regards.

Thank you very much, this worked for me too!

Despite the solution, i’d like to raise the question on what could be the cause of the path mismatch.
In my case, to give context, i moved abroad and finally after 3 months i started my system up again (ssd now in a new computer). Everything working fine, then the big update and then the problem.
I know my way around a just bit in the system, and i can imagine that maybe there was a change in the new version, but should the update have taken care of it? or maybe just the fact that the update was after quite a while some of the changes may have been taken care with intermediate updates and this time for me was too big of a leap to have it cleanly done?

thank you for any insight and greetings

Welcome to the forum! :vulcan_salute:

Probably all of the above. Please read this short essay… :point_down:

It was most likely something the original poster did. The most likely culprit would be some foreign package. As @philm said… :point_down:

But we don’t know what the OP did to create the problem they were having, because quite obviously, they abandoned this thread 24 days ago.

For that matter, please do not necro-bump old threads. If you have a problem — and especially so if you are not the original poster of the thread you are reviving — then simply start a new thread.

The rule here is one issue per thread and no thread hijacking. :wink:

That said, I wish you a pleasant stay here at the forum, but given that the OP has bolted, I am closing the thread. :man_shrugging: