Rebase opt-in fingerprint workaround onto KScreenLocker 6.7.5

This commit is contained in:
ajp_anton
2026-09-12 05:05:58 +00:00
parent b8cb9dbddb
commit db352083cf
7 changed files with 228 additions and 10 deletions
+20 -2
View File
@@ -21,7 +21,7 @@ restores the current KScreenLocker package from Fedora's `fedora` or `updates`
repository.
The provided build currently supports Fedora 44 on x86_64 and is based on
`kscreenlocker-6.7.4-1.fc44`. A different base version is rejected by default.
`kscreenlocker-6.7.5-1.fc44`. A different base version is rejected by default.
To intentionally install the older provided build after a KScreenLocker update:
```bash
@@ -41,7 +41,7 @@ Install the resulting package directly through the controller:
```bash
sudo plasma-fingerprint-workaround enable \
--rpm rpmbuild/RPMS/x86_64/kscreenlocker-6.7.4-1.fc44.ajp5.x86_64.rpm
--rpm rpmbuild/RPMS/x86_64/kscreenlocker-6.7.5-1.fc44.ajp6.x86_64.rpm
```
For another upstream version, supply its version, Fedora base release, and
@@ -58,3 +58,21 @@ A locally built package based on a different installed version requires
`--force`. This flag permits the version mismatch and allows DNF to downgrade;
it does not bypass the package identity, architecture, integrity, or workaround
metadata checks.
## Authentication regression tests
With an extracted source tree and the patches applied in numeric order:
```bash
cmake -S plasma-fingerprint-workaround/tests/authentication \
-B local/fingerprint-tests -DKSCREENLOCKER_SOURCE=/path/to/patched/kscreenlocker
cmake --build local/fingerprint-tests
ctest --test-dir local/fingerprint-tests --output-on-failure
```
These tests compile the upstream authentication classes against a simulated
PAM backend. They check retries after fingerprint timeout or temporary
unavailability, preservation of the password conversation, absent smartcards,
missing modules, the grace-period guard and incorrect passwords. They never
access the system's authentication configuration. Actual reader behaviour and
the lock-screen interface still require testing on the laptop.