[TRACKING] Fingerprint scanner compatibility with linux (ubuntu, fedora, etc)

Hey @Davis_Ladd,

Thank you for writing your instructions! They were clear and concise; nice work :slight_smile:

I’ve edited them to add a few apt dependecies and some of the comments from this thread:

Additions

  • Apt packages git gettext valgrind (git isn’t on minimal installations, for example)
  • The feedback from @junaruga about using tagged versions on the two git clones).

I successfully compiled libfprint v1.92 on Ubuntu 21.04.

Dependencies:

  • gtk-doc-tools
  • libfprint-2-dev
  • libgirepository1.0-dev
  • libgusb-dev
  • libpam-wrapper
  • libpam0g-dev
  • libpamtest0-dev
  • libpolkit-gobject-1-dev
  • libxml2-utils
  • python3-pip
  • python3-pypamtest
  • git
  • gettext
  • valgrind

pip packages, install with “pip install ‘package’”

  • meson installed with “sudo pip install meson”
  • ninja
  • gobject
  • python-dbusmock

1. Start with installing dependices

sudo apt install gtk-doc-tools libfprint-2-dev libgirepository1.0-dev libgusb-dev libpam-wrapper libpam0g-dev libpamtest0-dev libpolkit-gobject-1-dev libxml2-utils python3-pip python3-pypamtest git gettext valgrind

sudo pip install meson

pip install ninja gobject python-dbusmock

2. Compile newest version of libfprint

git clone https://gitlab.freedesktop.org/libfprint/libfprint.git
cd libfprint && git fetch origin && git checkout v1.92.1

3. Edit meson_options.txt

To make things easier I specified the just the goodix device in “meson_options.txt”

nano meson_options.txt

For the drivers option use replace default with goodixmoc. This compiles libfprint just for this fingerprint sensor.

option('drivers',
       description: 'Drivers to integrate, "default" selects the default set, "all" selects all drivers',
       type: 'string',
       value: 'goodixmoc')

4. Then build, compile and install

meson builddir
ninja -C builddir

5. Now for the newest version of fprintd

git clone https://gitlab.freedesktop.org/libfprint/fprintd.git
cd fprintd && git fetch origin && git checkout v1.92.0
meson builddir
ninja -C builddir

6. Enroll your fingerprint

fprintd-enroll

Alternatively one can do this from the “Settings > Users” screen in GNOME Settings.

I believe that is all the steps you need to do. If you have any problems let me know and I would be happy to help. This is the first time I have ever written instructions.


I’m new to this forum editor, so I wasn’t sure the best way to quote reply.

Thanks,
Ian C (he/him/his)

6 Likes