lsusb | grep -i fingerprint
Bus 001 Device 004: ID 27c6:55b4 Shenzhen Goodix Technology Co.,Ltd. Fingerprint Reader
Dump the firmware
Assuming this is a fresh install, lets do some magic by getting some dependencies:sudo dnf install gcc git python-pip python-devel openssl
Let's get the source code:
git clone --recurse-submodules https://github.com/goodix-fp-linux-dev/goodix-fp-dump.git
cd goodix-fp-dump
Create an isolated Python environment:
python -m venv .v
source .v/bin/activate
Do the magic:
sudo su
pip install -r requirements.txt
python run_55b4.py
exit
There are some python scripts available. I runrun_55b4.py
because my device ID is 27c6:55b4. It will spell some nonsense, which is a good thing. That nonsense actually the firmware captured by our device.
Also, I typed exit
because we want to enroll our finger in our own user, not root. If we run the fprintd-enroll
as a root, the finger will be for root, not us.
Anyway,
fprintd-enroll
Using device /net/reactivated/Fprint/Device/0
Enrolling right-index-finger finger.
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-completed
Yes! In my case, the fingerprint need to add my right index finger ten times. I was confused at first because the lack of message. I thought it was error. But, it didn't. After that, everything in the system is automatically pick the fingerprint as one way to authenticate.
KDE
sudo
Addendum
Configure SDDM PAM Module
SDDM is not ready for fingerprint. There is a patched version if you don't mind compile it yourself. A workaround is to have skip password authentication and go to fingerprint. I opted for this one.
In /etc/pam.d/sddm, add these two lines on top of the current configuration code:
auth [success=1 new_authtok_reqd=1 default=ignore] pam_unix.so try_first_pass likeauth nullok
auth sufficient pam_fprintd.so
The catch for this one is that I need to press ENTER key at the password input before the fingerprint works. Also, I need to input password whenever KWallet is active for the very first time. This approach makes KWallet unauthenticated at login.
Source
- https://discussion.fedoraproject.org/t/d-k-bo-libfprint-goodixtls/43849
- https://copr.fedorainfracloud.org/coprs/d-k-bo/libfprint-goodixtls
- https://github.com/goodix-fp-linux-dev/goodix-fp-dump
Comments
Post a Comment