https://bugs.kde.org/show_bug.cgi?id=469951
[email protected] changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[email protected] --- Comment #10 from [email protected] --- This is no solution for the bug, but a workaround for everybody who is annoyed of not functioning fingerprint. For me entering a wrong password did not reset the fingerprint. Claude helped me add a button to the lock-screen that resets the entire greeter. This also restarts fprintd and I can log in with fingerprint again, even if the previous try timed out. I did not look into security measures and if this button could be exploited to run something else. Please be careful about this!! Here is a more complete report, but is written by AI and not double checked (Engineer here, no programmer): ################## CAUTION AI ########################## Workaround: a lock screen button that restarts the greeter Plasma 6.6.4, Wayland. This is a local workaround, not a fix — the 30 s window is unchanged, it just makes running out of it cost one click instead of the password. Written by Claude Opus 5 A new greeter process is the only thing that reliably re-arms the fingerprint stack here. ksld lives in kwin_wayland, not in the greeter, so killing the greeter leaves the session locked and untouched while ksld respawns it. Recovery measured at ~3.3 s from press to fingerprint unlock, with the new greeter up 107 ms after the kill. Three additions to /usr/share/plasma/shells/org.kde.plasma.desktop/contents/lockscreen/LockScreenUi.qml (line numbers as shipped in 6.6.4): 1. After the import block (~line 20): import org.kde.plasma.plasma5support as Plasma5Support 2. Inside the root Item, after id: lockScreenUi (~line 23): Plasma5Support.DataSource { id: fingerprintRetry engine: "executable" connectedSources: [] onNewData: (sourceName, data) => disconnectSource(sourceName) function retry() { connectSource("/usr/bin/pkill -x kscreenlocker_g"); } } 3. As the first entry of actionItems: (~line 297), beside Sleep / Hibernate / Switch User: ActionButton { text: i18ndc("plasma_shell_org.kde.plasma.desktop", "@action:button", "Retry &Fingerprint") icon.name: "fingerprint" onClicked: fingerprintRetry.retry() }, Two things about that command that cost time to get right: - kscreenlocker_g is not a typo. The kernel caps a process's comm at 15 characters, so pkill -x kscreenlocker_greet matches nothing and the button silently does nothing. pgrep warns about this; pkill does not. - pkill -f, as suggested in bug 506658, over-matches — -f tests the full command line, which includes that of the shell running pkill itself. - The absolute path is deliberate: the button runs unauthenticated from the lock screen and shouldn't user-writable directory. Notes for anyone trying this: LockScreenUi.qml is a package file, not a conffile, so any plasma-desktoently. You can develop against it safely — copy the shell package elsewhere, point XDG_DATA_DIRS at it,and use kscreenlocker_greet --testing to load the QML in a window without locking anything. And broken regardless: the greeter logs Failed to load lockscreen QML, falling back to built-in locker and thebuilt-in locker still takes the password. -- You are receiving this mail because: You are watching all bug changes.
