lsusb lists the fingerprint reader in the x240 as follows:
Bus 002 Device 003: ID 138a:0017 Validity Sensors, Inc.
There exists experimental driver support for this in a fork of libfprint for vfs5011 sensors, however you'll need to compile the driver yourself. To get the fingerprint sensor to work for lightdm login, su etc, follow these steps.
-
Install fingerprint-gui:
sudo add-apt-repository ppa:fingerprint/fingerprint-gui sudo apt-get update sudo apt-get install libbsapi policykit-1-fingerprint-gui fingerprint-gui -
Get your compilation tools and library dependencies:
sudo apt-get install build-essential automake checkinstall shtool libtool libxv-dev libmagick++-dev -
Get the sources, compile and install them:
git clone https://github.com/abbradar/fprint_vfs5011 cd fprint_vfs5011 ./autogen.sh make sudo make install -
Make sure your user has permissions for accessing the fingerprint sensor device. Create a file
/lib/udev/rules.d/40-libfprint0-custom.ruleswith the following contents:# Device Validity VFS5011 ATTRS{idVendor}=="138a", ATTRS{idProduct}=="0017", MODE="0664", GROUP="plugdev" -
Add your user to the
plugdevgroup:sudo usermod -a -G plugdev <username> -
Restart udev:
sudo service udev restart -
Log out of your session and log back in.
-
Enroll your fingerprints with
fingerprint-gui, verify them, then see if asudo -snow suddenly asks you for your fingerprint.