Bug 522006 - Autologin Not Working
Summary: Autologin Not Working
Status: RESOLVED FIXED
Alias: None
Product: plasma-login-manager
Classification: Plasma
Component: general (other bugs)
Version First Reported In: 6.7.0
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2026-06-22 15:24 UTC by Rich Johnson
Modified: 2026-07-07 14:29 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In: 6.7.3
Sentry Crash Report:


Attachments
output from 'journalctl -u plasmalogin -b' (2.61 KB, text/plain)
2026-06-26 15:55 UTC, Rich Johnson
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Rich Johnson 2026-06-22 15:24:40 UTC
Using KDE Neon and this morning I found out SDDM is gone and has been replaced with plasma-login-manager, so I enabled that with systemctl like I found in Discuss. Made my way to the "auto login" configuration in System settings and set that. It created /etc/plasmalogin.conf with the following:

[Autologin]
Session=plasma.desktop
User=rich

Does not auto login. Even tried the "/etc/plasmalogin.conf.d/autologin.conf" like the Arch wiki said & I read in a previous bug report about this without success.


STEPS TO REPRODUCE
1. Go to System Settings -> Login Screen
2. Enable "Automatically log in" -> Set my user to me -> Select "Plasma (Wayland)"
3. Reboot

OBSERVED RESULT
I have to type in my password and manually log in.

EXPECTED RESULT
I shouldn't have to type my password and I should be automatically logged in and my Plasma desktop running.

SOFTWARE/OS VERSIONS
Operating System: KDE neon User Edition
KDE Plasma Version: 6.7.0
KDE Frameworks Version: 6.27.0
Qt Version: 6.11.1
Kernel Version: 6.17.0-35-generic (64-bit)
Graphics Platform: Wayland
Processors: 16 × AMD Ryzen 7 7700X 8-Core Processor
Memory: 32 GiB of RAM (30.5 GiB usable)
Graphics Processor: AMD Radeon Graphics 

ADDITIONAL INFORMATION
I enabled plasma-login-manager via Discuss with:

sudo systemctl enable plasmalogin.service --now
Comment 1 David Edmundson 2026-06-26 14:15:19 UTC
Works here.

>Is there anything relevant in `journalctl -u plasmalogin -b ` with autologin setup.
Comment 2 Rich Johnson 2026-06-26 15:54:21 UTC
(In reply to David Edmundson from comment #1)
> Works here.
> 
> >Is there anything relevant in `journalctl -u plasmalogin -b ` with autologin setup.

Attaching plasmalogin-journalctl.txt - nothing. I logged in manually, hence the "successful".

On another machine I installed Fedora 44 Plasma & had a similar issue, but after some searching I figured it out, starting to wonder if I need to do the same all of a sudden from the switch from SDDM to plasmalogin. Very well could be a "KDE Neon" issue & not a plasmalogin issue as well.
Comment 3 Rich Johnson 2026-06-26 15:55:00 UTC
Created attachment 193738 [details]
output from 'journalctl -u plasmalogin -b'
Comment 4 hizo 2026-07-06 10:38:37 UTC
I hit the same issue on KDE neon (Plasma 6.7.0) and found the root cause by
reading the source at tag v6.7.0. The same code is still present on current
master.

Autologin is only attempted when this condition holds
(src/daemon/Display.cpp, line 131 at v6.7.0):

    if ((PlasmaLogin::config()->autologinRelogin() || daemonApp->tryLockFirstLogin())
        && !PlasmaLogin::config()->autologinUser().isEmpty()) {

With Relogin at its default (false), everything depends on
DaemonApp::tryLockFirstLogin(). That function queries the
org.freedesktop.systemd1.Manager property "SoftRebootsCount" over D-Bus and
returns false on ANY error:

    if (reply.type() == QDBusMessage::ErrorMessage) {
        qWarning() << "DBus error:" << reply.errorName() << "-" << reply.errorMessage();
        return false;
    }

SoftRebootsCount was only added in systemd v257. On any distro shipping
systemd <= 256 (KDE neon is on Ubuntu 24.04 / systemd 255), the property Get
fails with org.freedesktop.DBus.Error.UnknownProperty, tryLockFirstLogin()
returns false, and autologin is silently skipped: the greeter is shown as if
no autologin were configured. The only trace is this early log line in the
journal, right after "Using VT 1":

    plasmalogin[...]: DBus error: "org.freedesktop.DBus.Error.UnknownProperty"
    - "Unknown interface org.freedesktop.systemd1.Manager or property SoftRebootsCount."

Quick check on an affected system:

    busctl get-property org.freedesktop.systemd1 /org/freedesktop/systemd1 \
        org.freedesktop.systemd1.Manager SoftRebootsCount
    -> Failed to get property SoftRebootsCount ... Unknown interface ... 

Workaround, confirmed working on KDE neon: add Relogin=true to the
[Autologin] group, which short-circuits the tryLockFirstLogin() call:

    [Autologin]
    User=youruser
    Session=plasma.desktop
    Relogin=true

Suggested fix: treat UnknownProperty as "zero soft reboots" (fail open)
instead of failing closed — if systemd does not expose the counter, no soft
reboot can have happened. This would also explain why the feature works for
developers on systemd >= 257 but fails for reporters on Ubuntu-based distros.

Written by Claude Fable, since he was the one who found the bug and he explains things better than I do :)
Comment 5 Bug Janitor Service 2026-07-06 12:35:05 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-login-manager/-/merge_requests/158
Comment 6 Rich Johnson 2026-07-06 12:53:01 UTC
(In reply to hizo from comment #4)
> I hit the same issue on KDE neon (Plasma 6.7.0) and found the root cause by
> reading the source at tag v6.7.0. The same code is still present on current
> master.
> 
> Autologin is only attempted when this condition holds
> (src/daemon/Display.cpp, line 131 at v6.7.0):
> 
>     if ((PlasmaLogin::config()->autologinRelogin() ||
> daemonApp->tryLockFirstLogin())
>         && !PlasmaLogin::config()->autologinUser().isEmpty()) {
> 
> With Relogin at its default (false), everything depends on
> DaemonApp::tryLockFirstLogin(). That function queries the
> org.freedesktop.systemd1.Manager property "SoftRebootsCount" over D-Bus and
> returns false on ANY error:
> 
>     if (reply.type() == QDBusMessage::ErrorMessage) {
>         qWarning() << "DBus error:" << reply.errorName() << "-" <<
> reply.errorMessage();
>         return false;
>     }
> 
> SoftRebootsCount was only added in systemd v257. On any distro shipping
> systemd <= 256 (KDE neon is on Ubuntu 24.04 / systemd 255), the property Get
> fails with org.freedesktop.DBus.Error.UnknownProperty, tryLockFirstLogin()
> returns false, and autologin is silently skipped: the greeter is shown as if
> no autologin were configured. The only trace is this early log line in the
> journal, right after "Using VT 1":
> 
>     plasmalogin[...]: DBus error:
> "org.freedesktop.DBus.Error.UnknownProperty"
>     - "Unknown interface org.freedesktop.systemd1.Manager or property
> SoftRebootsCount."
> 
> Quick check on an affected system:
> 
>     busctl get-property org.freedesktop.systemd1 /org/freedesktop/systemd1 \
>         org.freedesktop.systemd1.Manager SoftRebootsCount
>     -> Failed to get property SoftRebootsCount ... Unknown interface ... 
> 
> Workaround, confirmed working on KDE neon: add Relogin=true to the
> [Autologin] group, which short-circuits the tryLockFirstLogin() call:
> 
>     [Autologin]
>     User=youruser
>     Session=plasma.desktop
>     Relogin=true
> 
> Suggested fix: treat UnknownProperty as "zero soft reboots" (fail open)
> instead of failing closed — if systemd does not expose the counter, no soft
> reboot can have happened. This would also explain why the feature works for
> developers on systemd >= 257 but fails for reporters on Ubuntu-based distros.
> 
> Written by Claude Fable, since he was the one who found the bug and he
> explains things better than I do :)

I swore I tried the "Relogin=true" before because I think I read that on the Arch wiki. That works and the output from command was exactly as you put it.
Comment 7 Bug Janitor Service 2026-07-06 21:52:25 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-login-manager/-/merge_requests/159
Comment 8 Nate Graham 2026-07-07 14:29:46 UTC
Git commit 68825ef106e40a3eef9ebef33b0a9feedb45e9c8 by Nate Graham, on behalf of David Edmundson.
Committed on 07/07/2026 at 14:29.
Pushed by ngraham into branch 'Plasma/6.7'.

Treat invalid SoftRebootsCount as probably 0

SoftRebootCount is used to query if we should auto-login after a soft
reboot.

If we fail to resolve the property, for example being on an old systemd,
we should still auto-login.
FIXED-IN: 6.7.3

(cherry picked from commit b72a10e520b571bdc0bfb7df53742e55d7a18612)

Co-authored-by: David Edmundson <kde@davidedmundson.co.uk>

M  +2    -2    src/daemon/DaemonApp.cpp

https://invent.kde.org/plasma/plasma-login-manager/-/commit/68825ef106e40a3eef9ebef33b0a9feedb45e9c8