Имеется ThinkPad T430s и сканер отпечатков
Bus 001 Device 003: ID 147e:2020 Upek TouchChip Fingerprint Coprocessor (WBF advanced mode)
Работает вместе с fprintd и патченой libfprint.
$ grep ^auth /etc/pam.d/system-auth
auth required pam_env.so
auth sufficient pam_fprintd.so
auth sufficient pam_unix.so try_first_pass likeauth nullok
auth required pam_deny.so
Для блокировки экрана используется i3lock
$ cat /etc/pam.d/i3lock
#
# PAM configuration file for the i3lock screen locker. By default, it includes
# the 'system-auth' configuration file (see /etc/pam.d/login)
#
auth include system-auth
Спячкой рулит systemd.
$ grep ^Handle /etc/systemd/logind.conf
HandlePowerKey=poweroff
HandleSuspendKey=suspend
HandleHibernateKey=ignore
HandleLidSwitch=ignore
$ cat /etc/systemd/system/suspend@.service
[Unit]
Description=Starts i3lock at suspend time
Before=sleep.target
[Service]
User=%I
Type=forking
Environment=DISPLAY=:0
ExecStartPre=
ExecStart=/usr/bin/i3lock -d -c 272d2a -u
[Install]
WantedBy=sleep.target
При обычном запуске i3lock для снятия блокировки можно нажать Space+Enter, включится сканер и можно сканироваться. Или ввести пароль, после чего так же запустится сканер. При просыпании же сканер не запускается. i3lock разблокировывается сразу после ввода пароля. Если после этого опять запустить i3lock без ухода в suspend, то все работает нормально.
Куда копать?
Upd: методом высоконаучного тыка выяснил, что запуск i3lock из tty приводит к той же проблеме.
Upd: собрал libfprint из git'а - не помогло.
Upd: багрепорт http://bugs.i3wm.org/report/ticket/1018