Hello everyone,
TL;DR The built-in fingerprint reader of the ThinkPad x270 seems to works with the driver python-validity
package, but it’s not available in nixpkgs
yet.
I’m new in Nix/NixOS, so I would be glad if a soul out there could give me a hand finding it or writing it
Here’s my steps:
I tried to list my devices with:
nicolas@nixos ~ % lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 013: ID 138a:0097 Validity Sensors, Inc.
Bus 001 Device 003: ID 04f2:b5ab Chicony Electronics Co., Ltd Integrated Camera
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
I understand that the fingerprint reader is Bus 001 Device 013: ID 138a:0097 Validity Sensors, Inc.
And when running fprint-enroll
it fails with:
Impossible to enroll: GDBus.Error:net.reactivated.Fprint.Error.NoSuchDevice: No devices available
I tried different options but get the same result:
- I read this thread: How to use fingerprint unlocking - How to set up Fprintd (English) - #2 by tejing
and enabledfprint
in my configuration.nix file then triedvfs0090
driver followed bygoodix
driver but without success in both cases:
services.fprintd.enable = true;
services.fprintd.tod.enable = true;
services.fprintd.tod.driver = pkgs.libfprint-2-tod1-vfs0090;
-
I read this other thread (for ThinkPad T480): Thinkpad T480 fingerprint reader support - #3 by faultymuse which confirms me that there were no
python-validity
package for NixOS yet. -
I then tried to write a Nix script for python-validity to add to my configuration:
{ lib, python3Packages }: with python3Packages; buildPythonApplication { pname = "python-validity"; version = "0.12"; propagatedBuildInputs = [ cryptography pyusb pyyaml ]; driverPath = /usr/share/python-validity/6_07f_lenovo_mis_qm.xpfwext; src = ./.; }
but got the same error as before.
- I also looked on Validity official support, where someone already asked about a Nix driver in 2019 for my device: https://gitter.im/Validity90/Lobby?at=5caf58edf851ee043d9d85d3
Thanks if you have any idea to help me
NB: I opened a few issues on the different repositories hoping to have more answers, you can check them there:
https://github.com/NixOS/nixos-hardware/issues/521
https://github.com/NixOS/nixpkgs/issues/207116
https://github.com/uunicorn/python-validity/issues/150