Unlock

Elegant Face Unlock on Linux with Gaze

If you’ve used Windows, especially on a Surface, you probably remember that built-in face unlock fondly. Later it got even better on ThinkPads — the screen only lights up when you’re sitting in front of it, and the laptop locks itself once you walk away… So what about the Linux world? Is there anything that pulls off the same trick? Just like the endless supply of excellent yuri fanfic out there, Linux has similar solutions. The old standby was a project called Howdy. It used a fairly traditional IR-based recognition method, essentially requiring an IR camera, and the whole thing was written on top of Python. Old, slow, and you’d frequently crack open the lid and then sit there waiting several seconds for it to react. I did actually run it back in the day on a 5th-gen ThinkPad X1 Carbon. Barely usable is the best I can say — so bad I couldn’t even be bothered to write about it. Times change, though. There’s a new solution now: Gaze, which is what I want to talk about here.

How to Use Fingerprint Unlock on a ThinkPad X1 Carbon 2017 Under Ubuntu 20.04

The fingerprint reader in the ThinkPad X1 Carbon 2017 has hardware ID 138a:0097. Unfortunately, the official fingerprint management module under Linux doesn’t support this thing at all. Plenty of people online have been reverse engineering it to make the module usable under Linux, but after all that tinkering it still feels pretty awkward. There was once a solution that patched libfprint, but it only worked for about half a year. Then libfprint 2.0 came out and the original patch bit the dust. Recently, though, someone solved the problem with a new approach: they wrote a fingerprint manager and driver directly in Python, replacing the dumb libfprint, and it works. Thanks to uunicorn and Marco and the other people behind the scenes.