Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@foosel
Last active January 12, 2023 16:25
Show Gist options
  • Star 35 You must be signed in to star a gist
  • Fork 7 You must be signed in to fork a gist
  • Save foosel/3abd45bc1b6ae121965b to your computer and use it in GitHub Desktop.
Save foosel/3abd45bc1b6ae121965b to your computer and use it in GitHub Desktop.
Getting the fingerprint reader of a Thinkpad x240 to work under Ubuntu 14.04

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.

  1. 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
    
  2. Get your compilation tools and library dependencies:

    sudo apt-get install build-essential automake checkinstall shtool libtool libxv-dev libmagick++-dev
    
  3. Get the sources, compile and install them:

    git clone https://github.com/abbradar/fprint_vfs5011
    cd fprint_vfs5011
    ./autogen.sh
    make
    sudo make install
    
  4. Make sure your user has permissions for accessing the fingerprint sensor device. Create a file /lib/udev/rules.d/40-libfprint0-custom.rules with the following contents:

    # Device Validity VFS5011
    ATTRS{idVendor}=="138a", ATTRS{idProduct}=="0017", MODE="0664", GROUP="plugdev"
    
  5. Add your user to the plugdev group:

    sudo usermod -a -G plugdev <username>
    
  6. Restart udev:

    sudo service udev restart
    
  7. Log out of your session and log back in.

  8. Enroll your fingerprints with fingerprint-gui, verify them, then see if a sudo -s now suddenly asks you for your fingerprint.

@mauricioschneider
Copy link

Just to add to the last part of @Lesik comment, make sure you swipe your finger fast so you get an actual fingerprint look in the capture, instead of just a stretched fingerprint.

@neuthral
Copy link

i installed all packages and libraries, i didn't get the build to work after 'make' fprint, but i fingerprint-gui worked on ubuntu 17.10 and Thinkpad X240, i set up my fingerprint and now kdm login ask for fingerprint and it works!

@rokyo401
Copy link

rokyo401 commented Feb 4, 2019

I followed all the steps and when I do

sudo -s

I am asked for my fingerprint and if I swipe that, it authenticates. So that worked.

However, I cannot swipe my finger at login (Ubuntu 18.04.1). There is no option to enable fingerprint login in the 'Users' section of Ubuntu's preferences. Any idea how I can activate it? ^^

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment