An Systemen mit nur einem Benutzer installiere ich gar keinen Anmeldedienst, sondern konfiguriere eine automatische Anmeldung. Hierfür muss in der Systemd-Unit für getty@tty1.service bei Debian die Regel After=rc-local.service entfernt werden, damit die grafische Oberfläche so zeitig wie möglich startet. Auf der Konsole kommen zwar so einige Ausgaben durcheinander, aber für die grafische Oberfläche stört dies nicht.

Da man die Abhängigkeiten nicht mit einer leeren Regel After= zurücksetzen kann, muss die komplette Unit mit systemctl edit --full --force getty@tty1.service überschrieben werden.

Bei agetty muss der Parameter -a … mit dem Benutzernamen angegeben und Type=simple gesetzt werden. Damit bei Fehlern nicht mehrfach die Anmeldung ausgeführt wird, sollte Restart=on-success gesetzt werden.

[Unit]
…
# After=rc-local.service

[Service]
…
ExecStart=/sbin/agetty -a joerg --noclear %I $TERM
Type=simple
Restart=on-success

Je nach Login-Shell (bei mir Zsh) kann dann in ~/.zprofile der Aufruf von startx passieren, so dass die grafische Oberfläche startet.

if [[ $TTY == /dev/tty1 ]]
then
    exec startx -- -quiet
fi