I've seen similar issues with gdm.
The problem is not directly related to SDDM, it is related to a combination of the fact that LDAP users are unknown until we have access to the LDAP server, the fact that systemd was made the default init system in Debian Jessie (which adds massive parallellisation to startup) and the fact that, by default, there is no obvious dependency between SDDM and LDAP.
To be precise, if you want SDDM to show usernames, then the usernames need to already be known by the time SDDM starts up. For that, the system needs to have a working nsswitch database, which if you're using LDAP means it needs to have a working network connection. That dependency does not exist as shipped.
If you want it, you need to add it yourself. There are two ways of doing that:
- Add
$network to the Required-Start: header in the SDDM init script. This adds the dependency for whatever init system you use.
- Copy
sddm.service from /lib/systemd/system to /etc/systemd/system, and add a line After=network.target to the [Unit] section. This is systemd-specific.
Next time you reboot, SDDM should have all the users listed.