I am having the same issue as @Integral. Confirming that @husixu's fix worked for me. For those wondering, I downgraded vtk to 9.1.0 by running the following:
pacman -U /var/cache/pacman/pkg/vtk-9.1.0-26-x86_64.pkg.tar.zst
Git Clone URL: | https://aur.archlinux.org/howdy.git (read-only, click to copy) |
---|---|
Package Base: | howdy |
Description: | Windows Hello for Linux |
Upstream URL: | https://github.com/boltgolt/howdy |
Keywords: | facial-recognition hello howdy ir pam-plugin windows-hello |
Licenses: | MIT |
Submitter: | kelleymcches |
Maintainer: | boltgolt (kageurufu, Raymo111, xuanruiqi, komex, myghi63) |
Last Packager: | komex |
Votes: | 40 |
Popularity: | 0.009943 |
First Submitted: | 2018-06-25 05:25 (UTC) |
Last Updated: | 2021-07-30 08:42 (UTC) |
I am having the same issue as @Integral. Confirming that @husixu's fix worked for me. For those wondering, I downgraded vtk to 9.1.0 by running the following:
pacman -U /var/cache/pacman/pkg/vtk-9.1.0-26-x86_64.pkg.tar.zst
@husixu It works. Thank you :)
@Integral Seems like an opencv -> vtk dependency issue. I've downgraded vtk to 9.1.0 and that solves the issue for now.
I CANNOT use howdy now
Error infomation: ImportError: /usr/lib/libopencv_viz.so.407: undefined symbol: _ZN12vtkAlgorithm8RegisterEP13vtkObjectBase
Export this environment variable OPENCV_LOG_LEVEL=OFF to disable all OpenCV warnings.
@postblue Same warnings here. But as it works, I didn't look any further :-)
As part of a possible solution to make howdy work with python3
and delete python2
once and for all, I followed the links @imahaja suggested and wrote the PKGBUILD for the aforementioned fork pam-python-git. It's a fork not an upstream development, but since upstream's last push was on 2020-11-10 I think I safely assumed that castLabs's fork should work better in our situation.
If someone want to use @mika.cousin's patch, it's possible to edit the PKGBUILD directly and let makepkg
handle it by itself by adding a patch file (here py3.patch
):
source=(
"https://github.com/boltgolt/howdy/archive/v${pkgver}.tar.gz"
"https://github.com/davisking/dlib-models/raw/master/dlib_face_recognition_resnet_model_v1.dat.bz2"
"https://github.com/davisking/dlib-models/raw/master/mmod_human_face_detector.dat.bz2"
"https://github.com/davisking/dlib-models/raw/master/shape_predictor_5_face_landmarks.dat.bz2"
"py3.patch"
)
sha256sums=('f3f48599f78fd82b049539fcfc34de25c9435cad732697bdda94e85352964794'
'abb1f61041e434465855ce81c2bd546e830d28bcbed8d27ffbe5bb408b11553a'
'db9e9e40f092c118d5eb3e643935b216838170793559515541c56a2b50d9fc84'
'6e787bbebf5c9efdb793f6cd1f023230c4413306605f24f299f12869f95aa472'
'1b9a8a75d4b1467c9bf7f0dc850705acbe3aff8b9014738dd6827f572e7802ef')
prepare() {
patch --directory="$pkgname-$pkgver" --forward --strip=0 --input="${srcdir}/py3.patch"
}
With the same content as @mika.cousin's:
--- src/pam.py.orig 2022-09-28 08:52:52.688215296 +0200
+++ src/pam.py 2022-09-28 08:53:34.032714076 +0200
@@ -7,10 +7,10 @@
import syslog
# pam-python is running python 2, so we use the old module here
-import ConfigParser
+import configparser
# Read config from disk
-config = ConfigParser.ConfigParser()
+config = configparser.ConfigParser()
config.read(os.path.dirname(os.path.abspath(__file__)) + "/config.ini")
With that all seems to work fine but now I have 3 lines of warnings each time I'm using the IR camera for authentication:
[ WARN:0@0.200] global /build/opencv/src/opencv-4.6.0/modules/videoio/src/cap_gstreamer.cpp (2401) handleMessage OpenCV | GStreamer warning: Embedded video playback halted; module source reported: Could not read from resource.
[ WARN:0@0.200] global /build/opencv/src/opencv-4.6.0/modules/videoio/src/cap_gstreamer.cpp (1356) open OpenCV | GStreamer warning: unable to start pipeline
[ WARN:0@0.200] global /build/opencv/src/opencv-4.6.0/modules/videoio/src/cap_gstreamer.cpp (862) isPipelinePlaying OpenCV | GStreamer warning: GStreamer: pipeline have not been created
As anyone got the same and was able to fix this? I might be interested!
@iyanmv I was able to use howdy without python2:
Install pam-python-git which uses python3,
After, patch /lib/security/howdy/pam.py with
---pam.py.orig 2022-09-26 20:43:15.801319200 +0200
+++ pam.py 2022-09-26 20:37:29.315681336 +0200
@@ -7.10 +7.10 @@
import syslog
# pam-python is running python 2, so we use the old module here
-import ConfigParser
+import configparser
# Read config from disk
-config = ConfigParser.ConfigParser()
+config = configparser.ConfigParser()
config.read(os.path.dirname(os.path.abspath(__file__)) + "/config.ini")
/etc/pam.d/
to use pam_python3.so
rather than pam_python.so
@iyanmv Yes it is possible to install pam-python with python3. As mentioned here, the branch py3 of fork by anders_blomdell supports installing the library using python3.
This is the only package that is preventing me from deleting python2
. Can something be done about pam-python
?
Pinned Comments
Raymo111 commented on 2024-07-12 05:45 (UTC) (edited on 2024-07-12 05:46 (UTC) by Raymo111)
For anyone getting "RuntimeError: Unsupported image type, must be 8bit gray or RGB image",
downgrade python-numpy
to 1.26.4-2 and all will be okay... for now. See https://github.com/boltgolt/howdy/issues/937 for further discussion.