In search of contributors to a Linux Chromebook fingerprint PAM module

Thanks a bunch!

I have enabled the dbus-interface service and it still does not work. It still gives me the same error. Installing libpam works though!

It works after a restart. The rust-fp enroll doesn’t seem to work however, so I can’t unlock from my lock screen using my fp. When I use rust-fp add, it enrolls the fingerprint, but nothing seems to happen from the lock screen.

Does rust-fp match work?

Yeah, it works

Does pamtester kde-fingerprint $USER authenticate work?

i get home in an hour so I’ll test it and let you know then

command not found

when tried with rust-fp, unrecognized sub command

You have to install pamtester to use the command.

however, i do notice that when i do a complete restart, it gets stuck on touch fp sensor and when i touch the sensor, nothing happens. I have to restart the service and then the computer in order for it to begin working again. This also happens with rust-fp match

btw what pamtester do i install? sorry, this seems really dumb lol

sudo apt install pamtester

1 Like
mattyp@kohaku:~$ sudo pamtester kde-fingerprint $USER authenticate
thread '<unnamed>' panicked at pam-module/src/wait_until_unlock.rs:8:73:
called `Result::unwrap()` on an `Err` value: InputOutput(Os { code: 2, kind: NotFound, message: "No such file or directory" })
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
thread '<unnamed>' panicked at pam-module/src/lib.rs:82:42:
called `Result::unwrap()` on an `Err` value: Failed("\"Error uploading template: Response(InvalidParam)\"")

What happens if you run pamtester kde-fingerprint $USER authenticate without sudo?

literally nothing happens

Touch the fingerprint sensor with an enrolled fingerprint as the command is running.

I sent you an email because chrultrabook forums don’t allow new users to chat a lot in a small period of time

2 Likes

rust-fp works well on my HP 14b (Elemi) to unlock, until a reboot or suspend, where it stops being able to match.
Clearing existing fingers, restarting the service, and re-enrolling works until them.

Is there some piece I have missed?

 ~$ rust-fp match
Ready to match...
Output: NoMatch(Some(Other))
No match
Error matching: Other

kromey@kromey-book:~$ rust-fp list
Fingerprints saved for this user:  [
    "2",
    "1",
]

kromey@kromey-book:~$ systemctl status rust-fp-dbus-interface
● rust-fp-dbus-interface.service - Gives normal user access to enrolling and matching fingerprints
     Loaded: loaded (/etc/systemd/system/rust-fp-dbus-interface.service; enabled; preset: enabled)
     Active: active (running) since Fri 2024-11-01 17:09:07 AEDT; 3 days ago
   Main PID: 779 (rust-fp-dbus-in)
      Tasks: 12 (limit: 9259)
     Memory: 6.4M (peak: 6.9M)
        CPU: 21.786s
     CGroup: /system.slice/rust-fp-dbus-interface.service
             └─779 /usr/local/bin/rust-fp-dbus-interface

Nov 04 18:11:19 kromey-book rust-fp-dbus-interface[779]: 2024-11-04T07:11:19.009Z TRACE [async_std::task::builder] spawn
Nov 04 18:11:19 kromey-book rust-fp-dbus-interface[779]: 2024-11-04T07:11:19.142Z WARN  [rust_fp_common::rust_fp_dbus] Got match output
Nov 04 18:11:19 kromey-book rust-fp-dbus-interface[779]: 2024-11-04T07:11:19.143Z WARN  [rust_fp_common::rust_fp_dbus] Matching
Nov 04 18:11:19 kromey-book rust-fp-dbus-interface[779]: Hashes: [4953405484004716510, 7495218856732973943]. Loaded hashes: [4953405484004716510, 7495218856732973943]
Nov 04 18:11:19 kromey-book rust-fp-dbus-interface[779]: 2024-11-04T07:11:19.146Z TRACE [async_std::task::builder] spawn
Nov 04 18:11:19 kromey-book rust-fp-dbus-interface[779]: 2024-11-04T07:11:19.280Z WARN  [rust_fp_common::rust_fp_dbus] Got match output
Nov 04 18:11:19 kromey-book rust-fp-dbus-interface[779]: 2024-11-04T07:11:19.281Z WARN  [rust_fp_common::rust_fp_dbus] Matching
Nov 04 18:11:19 kromey-book rust-fp-dbus-interface[779]: Hashes: [4953405484004716510, 7495218856732973943]. Loaded hashes: [4953405484004716510, 7495218856732973943]
Nov 04 18:11:19 kromey-book rust-fp-dbus-interface[779]: 2024-11-04T07:11:19.285Z TRACE [async_std::task::builder] spawn
Nov 04 18:11:19 kromey-book rust-fp-dbus-interface[779]: 2024-11-0

OS: KDE neon (aka Ubuntu 24.04)
Desktop: Plasma 6.2.2

What happens? Is there an error? Does it just say no match?

On my jinlon I enrolled fingerprints since months ago and matching still works after many reboots. It also works for me after suspend.

What is the output of sudo ectool version --name=cros_fp?
This is what it is for me:

RO version:    bloonchipper_v2.0.4277-9f652bb3
RO cros fwid:  CROS_FWID_MISSING
RW version:    bloonchipper_v2.0.22088-9bcb401
RW cros fwid:  bloonchipper_15569.0.0
Firmware copy: RW
Build info:    bloonchipper_v2.0.22088-9bcb401 boringssl:v0.0.7276-e0d601a57 cryptoc:v1.9308_26_0.14-0dd6790 private:v2.1.9999-9bcb401c fpc:v2.1.9999-9bcb401c bloonchipper_15569.0.0 2023-08-03 19:16:10 @chromeos-release-builder-us-east1-d-x32-44-lbxf
Tool version:  0.0.1-isolate Jan  1 1980 none