Got a Lenovo Yoga 6 2-in-1 and frustrated that your fingerprint reader isn’t working on Arch Linux? You’re not alone. The standard fprintd package doesn’t include the necessary firmware for this laptop’s Synaptics sensor.

The Problem

The Lenovo Yoga 6 2-in-1 laptop comes with a Synaptics fingerprint sensor that requires proprietary firmware not included in the standard fprintd package. Without this firmware, fprintd can’t communicate with the sensor, leaving you with a non-functional fingerprint reader.

The Solution

The AUR package libfprint-2-tod1-synatudor-git provides the necessary Touch-On-Display (TOD) driver and firmware for Synaptics sensors, including the one in the Yoga 6.

Installation Steps

  1. Install the AUR package:
yay -S libfprint-2-tod1-synatudor-git

Or if you’re using paru:

paru -S libfprint-2-tod1-synatudor-git
  1. Install fprintd (if not already installed):
sudo pacman -S fprintd
  1. Enable and start the fprintd service:
sudo systemctl enable --now fprintd.service
  1. Verify the fingerprint reader is detected:
fprintd-list-devices

You should see output listing your Synaptics sensor.

Setting Up Fingerprints

Once the driver is installed and working:

  1. Enroll your fingerprints:
fprintd-enroll

Follow the prompts to scan your finger multiple times.

  1. Test authentication:
fprintd-verify

PAM Integration

To use fingerprint authentication for system login and authentication, add fingerprint support to the appropriate PAM configuration files:

  1. For system login, add to /etc/pam.d/system-local-login:
auth      sufficient pam_fprintd.so
  1. For display managers, the configuration may already exist:

    • SDDM: /etc/pam.d/sddm should have auth sufficient pam_fprintd.so
    • LightDM: /etc/pam.d/lightdm should have auth sufficient pam_fprintd.so
  2. For sudo authentication, add to /etc/pam.d/sudo:

auth sufficient pam_fprintd.so

The sufficient directive means fingerprint authentication will be attempted first, falling back to password if fingerprint fails.

Why This Works

The libfprint-2-tod1-synatudor-git package provides:

  • The proprietary Synaptics firmware blob required by the sensor
  • The TOD (Touch-On-Display) driver implementation for libfprint2
  • Proper USB device ID mappings for various Synaptics sensors

Without this package, fprintd only has access to open-source drivers that don’t support the proprietary communication protocol used by many modern fingerprint sensors.

Troubleshooting

If the fingerprint reader still doesn’t work:

  1. Check USB device detection:
lsusb | grep -i synaptics
  1. Review fprintd logs:
journalctl -u fprintd -b
  1. Ensure secure boot is disabled - some proprietary firmware doesn’t load with secure boot enabled.

  2. Reboot after installation - the driver may need a fresh start to properly initialize.

Final Notes

While it’s unfortunate that proprietary firmware is required, this AUR package makes fingerprint authentication possible on the Yoga 6 and similar laptops with Synaptics sensors. The convenience of fingerprint login, especially on a 2-in-1 device, is worth the extra installation step.