How to use the fingerprint sensor in openSUSE Tumbleweed on 2016 ThinkPads

26. Sep 2021 | KaratekHD | CC-BY-SA-3.0

How to use the fingerprint sensor in openSUSE Tumbleweed on 2016 ThinkPads

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


Share this post: