I’ve installed and enabled LightDM, but my computer still boots to the command line for login. I’m running XFCE for a desktop environment and I’ve installed the lightdm-gtk-greeter. I also followed some of the steps outlined in the Arch Wiki page for lightdm.
Output of running LightDM in test mode:
[+0.00s] DEBUG: Logging to /var/log/lightdm/lightdm.log
[+0.00s] DEBUG: Starting Light Display Manager 1.32.0, UID=0 PID=2276
[+0.00s] DEBUG: Loading configuration dirs from /usr/share/lightdm/lightdm.conf.d
[+0.00s] DEBUG: Loading configuration dirs from /usr/local/share/lightdm/lightdm.conf.d
[+0.00s] DEBUG: Loading configuration dirs from /etc/xdg/lightdm/lightdm.conf.d
[+0.00s] DEBUG: Loading configuration from /etc/lightdm/lightdm.conf.d/10-eos-gtk.conf
[+0.00s] DEBUG: Loading configuration from /etc/lightdm/lightdm.conf
[+0.00s] DEBUG: Using Xephyr for X servers
[+0.00s] DEBUG: Registered seat module local
[+0.00s] DEBUG: Registered seat module xremote
[+0.00s] DEBUG: Using D-Bus name org.freedesktop.DisplayManager
[+0.00s] DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
[+0.00s] DEBUG: Monitoring logind for seats
[+0.00s] DEBUG: New seat added from logind: seat0
[+0.00s] DEBUG: Seat seat0: Loading properties from config section Seat:*
[+0.00s] DEBUG: Seat seat0 has property CanMultiSession=no
[+0.00s] DEBUG: Seat seat0: Starting
[+0.00s] DEBUG: Seat seat0: Creating greeter session
[+0.00s] DEBUG: Seat seat0: Creating display server of type x
[+0.01s] DEBUG: Using VT 7
[+0.01s] DEBUG: Seat seat0: Starting local X display on VT 7
[+0.01s] DEBUG: XServer 1: Logging to /var/log/lightdm/x-1.log
[+0.01s] DEBUG: XServer 1: Writing X server authority to /run/lightdm/root/:1
[+0.01s] DEBUG: XServer 1: Launching X Server
[+0.01s] DEBUG: Launching process 2283: /usr/bin/Xephyr :1 -seat seat0 -auth /run/lightdm/root/:1 -nolisten tcp vt7 -novtswitch
[+0.01s] DEBUG: XServer 1: Waiting for ready signal from X server :1
[+0.01s] DEBUG: Acquired bus name org.freedesktop.DisplayManager
[+0.01s] DEBUG: Registering seat with bus path /org/freedesktop/DisplayManager/Seat0
[+0.01s] DEBUG: Loading users from org.freedesktop.Accounts
[+0.01s] DEBUG: User /org/freedesktop/Accounts/User1000 added
[+0.02s] DEBUG: Process 2283 exited with return value 1
[+0.02s] DEBUG: XServer 1: X server stopped
[+0.02s] DEBUG: Releasing VT 7
[+0.02s] DEBUG: XServer 1: Removing X server authority /run/lightdm/root/:1
[+0.02s] DEBUG: Seat seat0: Display server stopped
[+0.02s] DEBUG: Seat seat0: Stopping session
[+0.02s] DEBUG: Seat seat0: Session stopped
[+0.02s] DEBUG: Seat seat0: Stopping display server, no sessions require it
[+0.02s] DEBUG: Seat seat0: Stopping; greeter display server failed to start
[+0.02s] DEBUG: Seat seat0: Stopping
[+0.02s] DEBUG: Seat seat0: Stopped
[+0.02s] DEBUG: Required seat has stopped
[+0.02s] DEBUG: Stopping display manager
[+0.02s] DEBUG: Display manager stopped
[+0.02s] DEBUG: Stopping daemon
[+0.02s] DEBUG: Exiting with return value 1
No idea why Xephyr stops. I’m also not sure why that wasn’t installed as a dependency when I installed lightdm. Seems like it’s needed for lightdm to work.
I have read that EOS uses the lightdm-slick-greeter by default for lightdm. However, I’m thinking lightdm should still work with the lightdm-gtk-greeter as well. When I enabled lightdm using systemctl, I was logged off and the lightdm login page displayed. However, even with lightdm enabled, it will not start when I boot my computer. I have to run startx /usr/bin/startxfce4 from the command line to start XFCE.
Edit: xorg-xserver-xephyr is required to run the lightdm test. lightdm works fine in all other scenarios without the package.
lightdm-slick-greeter has always been the default with EOS - Xfce, Cinnamon, and Budgie for certain. lightdm does not require xephyr, but is an optional dependency (for testing).
From yay -Sii lightdm:
Depends On : glib2 libgcrypt libx11 libxcb libxdmcp libxklavier pam polkit xorg-server xorg-xmodmap xorg-xrdb
Optional Deps : accountsservice: Enhanced user accounts handling
lightdm-gtk-greeter: GTK greeter
xorg-server-xephyr: LightDM test mode
Did you remove lightdm-slick-greeter when you installed lightdm-gtk-greeter? Does the file /etc/lightdm/lightdm.conf.d/10-eos-slick.conf exist?
No, lightdm-slick-greeter has never been installed on my EOS install. I started out with EOS using Openbox and Tint2, but recently decided to switch to XFCE.
No, /etc/lightdm/lightdm.conf.d/10-eos-slick.conf does not exist. I have /etc/lightdm/lightdm.conf.d/10-eos-gtk.conf.
I just checked the Arch Wiki and nothing special needs to be done with xorg-xserver-xephyr other than installing it.
If you’re reading this thread and wondering why lightdm not working bothers me when I can still start XFCE from the command line, it’s because that suspending does not lock my login like you get with lightdm working. In other words, I can suspend my computer and then when I unsuspend it I’m not prompted for a password. It’s a security issue.
What does journalctl -u lightdm.service return? What does /etc/lightdm/lightdm.conf.d/10-eos-gtk.conf contain? It looks like (from the xephyr log) that your greeter session hasn’t been defined properly.
Okay, I’ve played around a little more and I can get LightDM to start by using systemctl restart lightdm.service after logging in from the command line. However, I shouldn’t have to do that, but it works and I’m now getting a login prompt after unsuspending my computer.
Couple of thoughts…
(1) I followed the Arch Wiki for setting up LightDM. One of the recommendations was to enable multi-user as the boot target. I did that but reading about systemd targets I’m wondering why the boot target shouldn’t be graphical.
(2) Prior to getting LightDM to somewhat work today, whenever I ran systemctl list-units –type=service –all in the past the output showed the lightdm.service as loaded under the LOAD column, but inactive under the ACTIVE column.
Under systemd#Change default target boot into, the example of setting the systemd default.target was to set it to multi-user.target. I misunderstood that to mean to do the same for LightDM.