How to use the fingerprint sensor in openSUSE Tumbleweed on 2016 ThinkPads
26. Sep 2021 | KaratekHD | CC-BY-SA-3.0
My daily driver laptop is a Lenovo ThinkPad X1 Yoga Gen 1 from 2016, which has a fingerprint reader by Validity Sensors. However, this sensor is not supported out of the box in Linux, so I’ll show you how to get it running in openSUSE Tumbleweed in this post. Other ThinkPads from 2016 should have similar sensors, so this post will mostlikely work on these devices too.
Getting a driver
libfprint
, the go to driver for fingerprint sensors on Linux, currently does not have support for the sensors in the X1 Yoga.
However, GitHub user Marco Trevisan aka. 3v1n0 did a great job at bringing support to it, and we can simply install his modified version of the driver.
Normally, this would involve compiling libfprint
from source, but I packaged it for Tumbleweed, so the installation is easy. If you know what you’re doing, check out the package on software.opensuse.org.
First, add the repository containing the driver:
$ sudo zypper ar -p 98 https://download.opensuse.org/repositories/home:KaratekHD/openSUSE_Tumbleweed/home:KaratekHD.repo
$ sudo zypper ref
After doing that, you can install the package by executing
$ sudo zypper in libfprint
You’ll also need fprintd
, so install it too:
$ sudo zypper install fprintd fprintd-pam
Now you should be good to go!
Adding fingerprints
On Gnome
If you’re on Gnome, adding a fingerprint is really easy. Open Settings and navigate to Users → Fingerprint Login. You can add your fingerprint there.
On other desktop environments
If you’re on another desktop environment, the process is a little bit more difficult, but also doable. Run
$ fprintd-enroll
and follow the instructions. This will add the fingerprint to fprintd. You can verify it worked with
$ fprintd-verify
Make Gnome use the fingerprint
The next step is to tell Gnome and GDM that they should use the fingerprint.
For doing so, edit /etc/pam.d/gdm
with an editor of your choice:
$ sudo vim /etc/pam.d/gdm
Add the following line at the top of the file:
auth sufficient pam_fprintd.so
Reboot for the changes to take effect.
Conclusion
Setting up fingerprint authentication on openSUSE Tumbleweed is pretty easy, and installing the driver for the sensors used in 2016 ThinkPads is so too. The work done by Marco Trevisan is really awesome and I’ll link the GitHub repository below.
Futher reading
- Fingerprint authentication in the openSUSE wiki
- Linux driver for 2016 ThinkPad’s fingerprint readers by Marco Trevisan aka. 3v1n0
- Download the package for openSUSE Tumbleweed
- The package on the openSUSE Build Service
Tags: Tumbleweed fingerprint howto openSUSE