Linux 2 fingerprint readers/sensors

By thomas, 23 March, 2026

When I have my laptop connected to the dock, I like to close the lid, which means I can't use the internal fingerprint reader.  I have an external fingerprint sensor but gdm won't use that one when the lid is closed.  I found that I could disable the internal one based on the state of the lid switch.
 

I'm using Fedora, I installed acpid and creating a lidconf file in /etc/acpi/lidconf:

event=button/lid
action=/etc/acpi/actions/lid.sh "%e"

My internal reader has the following VENDOR:PRODUCT from lsusb

Bus 003 Device 002: ID 06cb:00fc Synaptics, Inc. Prometheus Fingerprint Reader

For the script, I used the /sys filesystem to disable my reader:

#!/bin/bash

VENDOR=06cb
PRODUCT=00fc
BUS=$(grep -l $VENDOR /sys/bus/usb/devices/*/idVendor | sed 's/\(.*\)\/idVendor/\1/' | xargs -iXXX grep -l $PRODUCT XXX/idProduct | sed 's/\(.*\)\/idProduct/\1/')

state=$(echo "$1" | cut -d " " -f 3)
case "$state" in
    open)
	# kill 06cb:00fc
	echo 1 > $BUS/authorized
	;;
    close)
	echo 0 > $BUS/authorized
	;;
esac

After this, when the lid is closed, the internal Synaptics reader is disabled.  And when the lid opens, it's re-enabled.  For completeness I could disable the external one, but so far fprintd uses the Synaptics by default, so I haven't had to do that.