The closed-source library blocks on synchronous USB transfers in its "verify" method (at least, there might be others with the same issue).
The "identify" one is correct (asynchronous).
As a result :
$ fprintd-verify
Using device /net/reactivated/Fprint/Device/0
Listing enrolled fingers:
- #0: right-index-finger
(finger pressed)
Verify started!
Verifying: right-index-finger
(blocked)
"Verify started!" should happen immediately, but the code libfprint code waits for fp_device_verify to return, which only happens when the finger is pressed with this driver.
The verify success message is sent during the call, so it is ignored.
The closed-source library blocks on synchronous USB transfers in its "verify" method (at least, there might be others with the same issue).
The "identify" one is correct (asynchronous).
As a result : d/Fprint/ Device/ 0
$ fprintd-verify
Using device /net/reactivate
Listing enrolled fingers:
- #0: right-index-finger
(finger pressed)
Verify started!
Verifying: right-index-finger
(blocked)
"Verify started!" should happen immediately, but the code libfprint code waits for fp_device_verify to return, which only happens when the finger is pressed with this driver.
The verify success message is sent during the call, so it is ignored.
"fprintd-verify -f any" and pam-fprintd use fp_device_identify, so they work correctly. /gitlab. freedesktop. org/libfprint/ fprintd/ -/commit/ fc65055279 (so I suppose on jammy), the "verify" method will be used instead if only one finger is enrolled.
But with https:/
TL,DR: the fingerprint reader appears to mostly work on focal, but starting with jammy it won't unless at least two fingers are enrolled.