Why Your Fingerprint Reader May Not Work on Linux Mint (And How to Check)

Samprati GauravSamprati Gaurav
4 min read

Have you ever wished you could log into your Linux Mint laptop with just a swipe of your finger, like on Windows or macOS? I did too. But I soon discovered that it's not always that simple on Linux.

This is my journey into fingerprint authentication on Linux Mint, where I share successes, challenges, and key lessons about hardware support. I'll guide you from installations to building software from source.

If you're having trouble setting this up, don't worry—this guide is here to help you.


Step 0: Before You Begin - Check Your Hardware Compatibility!

This is the most important lesson I learned: Not all hardware is supported. Before you type a single command, you can save yourself a lot of time by checking if your device is on the official list.

  1. Open your terminal (Ctrl + Alt + T) and run lsusb to find your device ID.

  2. Look for something that resembles a fingerprint device. Mine was Bus 003 Device 015: ID 2808:a658 Realtek USB2.0 Finger Print Bridge FocalTech Fingerprint Device.
    The ID 2808:a658 is the key.

  3. Go to the official project website: https://fprint.freedesktop.org/supported-devices.html

  4. Search for your device. If it's listed as supported, this guide will likely work for you! If not, you might encounter the same issues I did, but the troubleshooting skills you'll gain are still valuable.

Step 1: Is Your Fingerprint Reader Detected?

First things first: let’s check if your system can even see your fingerprint device.

Open your terminal with Ctrl + Alt + T and run this command:

lsusb

You are looking for a line that identifies a fingerprint reader. For me, it showed up as:

Bus 003 Device 015: ID 2808:a658 Realtek USB2.0 Finger Print Bridge FocalTech Fingerprint Device

If you see your device, your hardware is at least recognized by the system. That’s step one done!

Step 2: The Standard Method (And Why It Might Fail)

Now let’s get the basic software installed.

fprintd is the core service that manages fingerprint authentication, and libpam-fprintd is what plugs it into the Linux login system.

Run the following commands:

sudo apt update
sudo apt install fprintd libpam-fprintd

Heads-up: This works for some devices, but not all. Sadly, my Realtek fingerprint reader wasn’t supported by this basic setup.

Let's try to enroll a fingerprint:

fprintd-enroll

❌ This is where I immediately hit my first major error. The terminal responded with:
Impossible to enroll: No devices available

This was my first clue that my device wasn’t supported by the default version of libfprint shipped with Linux Mint.

Step 3: Rolling Up Our Sleeves—Building from Source

When the default packages are too old, the next step is to get the latest versions directly from the developers. I wasn’t ready to give up, so I decided to build libfprint and fprintd myself.

This is where things got a little more technical.

  1. Install the Build Tools and Dependencies

    These are all the tools and libraries needed to compile the software from its source code.

     sudo apt install \
         build-essential \
         meson \
         ninja-build \
         libpam0g-dev \
         libglib2.0-dev \
         libusb-1.0-0-dev \
         libgudev-1.0-dev \
         libnss3-dev \
         libssl-dev \
         gtk-doc-tools \
         libgirepository1.0-dev \
         cmake \
         libgusb-dev \
         libcairo2-dev \
         libpixman-1-dev \
         libpolkit-gobject-1-dev \
         libdbus-1-dev \
         libsystemd-dev \
         git
    
  2. Clone and Build libfprint

    libfprint is the underlying library that does the heavy lifting of communicating with the hardware.

     git clone https://gitlab.freedesktop.org/libfprint/libfprint.git
     cd libfprint
     meson setup builddir
     ninja -C builddir
     sudo ninja -C builddir install
    

    Another success.

Step 4: The Moment of Truth

With the latest software built and installed, I rebooted my system for the changes to take effect and ran the enrollment command one last time.

fprintd-enroll

❌ And… the same error appeared:

Impossible to enroll: net.reactivated.Fprint.Error.NoSuchDevice: No devices available

This was the final confirmation. It turns out that my specific fingerprint device (Realtek 2808:a658, FocalTech) is not yet supported by the open-source libfprint project—even in its latest version.

So, What Did I Actually Gain From This?

Was it all a waste of time? Absolutely not. Here's what I gained:

  • Not All Hardware is Supported: Always check the compatibility list before starting. This is the key rule to remember.

  • Sometimes You Have to Build from Source: The latest software with new features isn't always in the standard package managers. Learning to compile from source is a useful Linux skill.

  • Every Error is a Lesson: Each missing dependency and build error taught me something new about how Linux works internally.

  • External Devices Might Be the Better Choice: If fingerprint login is crucial for your workflow, consider using an affordable, Linux-friendly external fingerprint scanner.

31
Subscribe to my newsletter

Read articles from Samprati Gaurav directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Samprati Gaurav
Samprati Gaurav