You are not logged in.
I have a thinkpad X1, and I'm using I3
Currently I have installed fprintd and configured PAM. Everything works great.
The problem appears on suspend, since I3 wont handle ACPI events, I wrote a systemd service, to call i3lock before go to sleep.
When resuming from suspend, fingerprint reader wont even light up. It just accepts password.
Have tried to lock before and after suspend with no success.
After unlocking, fingerprint reader works good and calling lock script works as expected.
I guess its something to do with resuming USB devices. But can't find any information.
Any ideas?
Regards, Zezadas
Offline
One possibility is that i3lock/fprintd opens the fingerprint reader device before suspend, loses access to it because the device is logically discsonnected/reconnected by the kernel during suspend/resume cycle and then doesn't reopen the device after resuming until you stop it by typing password and start it again.
See here for some more information and possible solution. BTW, if this works, it should also be possible to fix fprintd to reopen the device when it disappears. Maybe there is some configuration option you missed, maybe you could file a bug.
Last edited by mich41 (2016-11-04 07:43:17)
Offline
thanks for your reply. I found a clue, but dont know how to solve.
The problem cames from systemd service.
[Unit]
Description=Local system resume actions
Before=sleep.target
[Service]
User=anon
Type=forking
Environment=DISPLAY=:0
ExecStart=/home/user/.bin/i3lock
[Install]
WantedBy=sleep.target
If just calling the service without depends, samething happens.
Offline
Do you still experience this problem?
I am using ThinkPad X280 and just managed to make the fingerprint work with i3lock-color a couple of days ago.
I am now facing the same problem of using the fingerprint after suspend.
But for me, after unlocking with password, the fingerprint just stop working altogether, no matter how many times I tried.
I think this is PAM issue tho.
https://github.com/i3/i3lock/issues/210
https://github.com/linux-pam/linux-pam/issues/301
Offline
As nobody answered this to my satisfaction (neihther here nor in my other search results), I will answer it here.
The screen savers use pam, so the exact screensaver doesnt matter.
I also could not use stock fprintd on my system, but had to install open-fprintd to get my fingerprint sensor supported.
For me, the fingerprint sensor started working again, after restarten open-fprintd. So now I only had to do that restart automatically after restart, which can be done by creating this file:
cat /etc/pm/sleep.d/20-restart-fprintd
#!/bin/sh
case "${1}" in
hibernate)
# nothing
;;
resume|thaw)
systemctl restart open-fprintd
systemctl restart python3-validity
systemctl restart open-fprintd-resume.service
;;
esac
files and directory contain scripts that cause certain actions before suspend/hibernate and also on resume.
Edit1: only restarting one service alone didn't reliably work.
Edit2: There is another thread that arrived pretty much at the same solution at https://github.com/uunicorn/python-validity/issues/106
Last edited by iridos (2023-07-11 07:32:43)
Offline