Skip to content

Instantly share code, notes, and snippets.

@borcean
Last active July 2, 2024 21:27
Show Gist options
  • Save borcean/f32c47f6cc52cee33dfc2265ce63f777 to your computer and use it in GitHub Desktop.
Save borcean/f32c47f6cc52cee33dfc2265ce63f777 to your computer and use it in GitHub Desktop.
ThinkPad T480 fingerprint reader on Fedora Linux

ThinkPad T480 fingerprint reader on Fedora Linux

Background

The Synaptics fingerprint sensor (06cb:009a) present on my T480 is not supported by libfprint and fprintd as it requires a non-free binary blob. uunicorn created open-fprintd, a replacement for fprintd, that allows for loading of binary blobs. In conjunction with their python-validity driver we are able to make use of the inbuilt fingerprint reader. The following instructions were tested against Fedora Linux 35.

Installing open-fprintd and python-validity

sudo dnf copr enable tigro/python-validity
sudo dnf install open-fprintd fprintd-clients fprintd-clients-pam python3-validity

Prepare the fingerprint reader

sudo touch /usr/share/python-validity/backoff
sudo touch /usr/share/python-validity/calib-data.bin
sudo validity-sensors-firmware
sudo python3 /usr/share/python-validity/playground/factory-reset.py
sudo chmod 0755 /usr/share/python-validity/6_07f_lenovo_mis_qm.xpfwext

Enable services

sudo systemctl enable python3-validity open-fprintd-resume open-fprintd-suspend
sudo systemctl start python3-validity

Enroll and test fingerprint

fprintd-enroll
fprintd-verify

Enable authentication with fingerprint

sudo authselect current
sudo authselect enable-feature with-fingerprint
sudo authselect apply-changes
@kavemang
Copy link

kavemang commented Apr 15, 2024

anyone know if this is still working in fedora 39? I tried some things last year I couldnt get to work but dont recall trying a guide that dipped into selinux modification

PS: this is partially working for me but when waking from sleep I cant use fingerprint and there is a long delay after using password before it lets me in

@Boffice
Copy link

Boffice commented Jun 25, 2024

Last metadata expiration check: 0:00:58 ago on Tue 25 Jun 2024 06:07:26 PM EDT.
Error:
Problem 1: conflicting requests

  • nothing provides python(abi) = 3.11 needed by open-fprintd-0.6-7.fc39.noarch from copr:copr.fedorainfracloud.org:tigro:python-validity
    Problem 2: conflicting requests
  • nothing provides python(abi) = 3.11 needed by python3-validity-0.14-2.fc39.noarch from copr:copr.fedorainfracloud.org:tigro:python-validity
  • nothing provides python3.11dist(cryptography) >= 2.1.4 needed by python3-validity-0.14-2.fc39.noarch from copr:copr.fedorainfracloud.org:tigro:python-validity
  • nothing provides python3.11dist(pyusb) >= 1 needed by python3-validity-0.14-2.fc39.noarch from copr:copr.fedorainfracloud.org:tigro:python-validity
  • nothing provides python3.11dist(pyyaml) >= 3.12 needed by python3-validity-0.14-2.fc39.noarch from copr:copr.fedorainfracloud.org:tigro:python-validity
    (try to add '--skip-broken' to skip uninstallable packages)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment