I’ve been using Linux on my work laptop for a while now, but found I really missed having the fingerprint sensor for login and authentication. I tried sometime last year in Ubuntu to get it working, but as I’d just switched to Fedora, (because why not?) I thought I’d have another go.
So in really brief form, and apologies if I’ve missed anything here, the steps I took to get my fingerprint sensor working on my Lenovo X1 Carbon under Fedora 34 were as follows:
Grab RPM packages from this post – https://github.com/uunicorn/python-validity/issues/54#issuecomment-727092786 and extract RPMs from the zip files
Install RPMs$ sudo dnf install python3-validity-0.12-1.fc33.noarch.rpm open-fprintd-0.6-1.fc33.noarch.rpm fprintd-clients-1.90.1-2.fc33.x86_64.rpm fprintd-clients-pam-1.90.1-2.fc33.x86_64.rpm
Create two missing files that don’t get created$ sudo touch /usr/share/python-validity/backoff && sudo touch /usr/share/python-validity/calib-data.bin
Find driver file in the install folder, in my case there is driver named: “6_07f_lenovo_mis_qm.xpfwext”, so change the permissions on that$ cd /usr/share/python-validity && ls -la
$ sudo chmod 755 6_07f_lenovo_mis_qm.xpfwext
Reset the fingerprint sensor, as this had been used previously$ sudo systemctl stop python3-validity
$ sudo validity-sensors-firmware
$ sudo python3 /usr/share/python-validity/playground/factory-reset.py
Start the sensor package again and set to run at boot$
&& sudo systemctl enable python3-validity
sudo systemctl start python3-validit
y
Check the validity package has started correcty$ sudo systemctl status python3-validity
If the service is all running ok, then go ahead and enroll your fingerprints$ fprintd-enroll
At this point it let me enroll my fingerprints, so go ahead and enable fingerprints as a login method and then I had the fingerprint sensor working and could use them for login to both Gnome and for sudo at the terminal$ sudo authselect enable-feature with-fingerprint
Sources
https://github.com/uunicorn/python-validity/issues/54#issuecomment-727092786
https://github.com/uunicorn/python-validity#errors-on-startup
https://github.com/uunicorn/python-validity/issues/3
https://bugzilla.redhat.com/show_bug.cgi?id=1943406
Hi Mark.
Thank you for posting your instructions. On a Lenovo Thinkpad T480S with Fedora 36 I installed the RPMs from https://copr.fedorainfracloud.org/coprs/tigro/python-validity/ and followed your instructions starting at “Create two missing files that don’t get created”. That resulted in a working fingerprint sensor 🙂
Best regards,
Patrick
you are the best, I recommend making this a github gist
I actually did – https://gist.github.com/markgilbert-git/086f480ae2e4c3279619a1bf6f27ddf6