- Update the package index:
sudo apt update
- Install fingerprint management daemon:
sudo apt install fprintd libpam-fprintd
- Install dependencies:
sudo apt install \
git build-essential \
meson ninja-build \
gobject-introspection \
libnss3-dev \
libgudev-1.0-dev \
gtk-doc-tools \
libgusb-dev \
libpixman-1-dev \
libopencv-dev \
doctest-dev
- Download the fork of libfprint for CS9711:
git clone https://github.com/ddlsmurf/libfprint-CS9711.git
cd libfprint-CS9711
- Build the fork of libfprint for CS9711:
meson setup build
ninja -C build
NOTE: Troubleshooting doctest
:
Run-time dependency doctest found: NO (tried pkgconfig)
libfprint/sigfm/meson.build:5:10: ERROR: Dependency "doctest" not found, tried pkgconfig
Fix:
sudo mkdir -p /usr/share/pkgconfig
cat <<EOF | sudo tee /usr/share/pkgconfig/doctest.pc
prefix=/usr
includedir=\${prefix}/include
Name: doctest
Description: Header-only C++ test framework
Version: 2.4.11
Cflags: -I\${includedir}/doctest
EOF
export PKG_CONFIG_PATH=/usr/share/pkgconfig:$PKG_CONFIG_PATH
- Install the fork of libfprint for CS9711:
sudo ninja -C build install
- Update Library Cache
sudo ldconfig
- Restart fprintd systemd service:
systemctl restart fprintd.service
- Test:
fprintd-enroll
At this point, you will be prompted to enter your password. If everything was set up correctly, the fingerprint enrollment process will begin. However, if something went wrong you will see an error like:
Impossible to enroll: GDBus.Error:net.reactivated.Fprint.Error.NoSuchDevice: No devices available
Now you can proceed and configure finger print login in Ubuntu from the GUI app: Settings > System > Users > Fingerprint Login