Installed howdy can't upgrade Fedora 42
Hey! I was installed howdy(3.0 beta) on my Fedora 41,but I trying upgrading Fedora 42.howdy requires the python3dist(dlib).As a result,I can't update Fedora 42.Howdy and Fedora 42 incompatible?
Installation and Configuration of Howdy 3.0.0-5 on Fedora 42
1. Download Dependencies
Before installing Howdy, you need to download the necessary packages:
wget https://download.copr.fedorainfracloud.org/results/principis/howdy-beta/fedora-42-x86_64/07780296-python-pyv4l2/python3-pyv4l2-1.0.2-3.20240124gitf12f0b3.fc41.x86_64.rpm
wget https://download.copr.fedorainfracloud.org/results/principis/howdy-beta/fedora-42-x86_64/07780294-python-keyboard/python3-keyboard-0.13.5-3.fc41.noarch.rpm
wget https://download.copr.fedorainfracloud.org/results/principis/howdy-beta/fedora-42-x86_64/07780292-python-elevate/python3-elevate-0.1.3-3.20240124git78e82a8.fc41.noarch.rpm
2. Install dependencies
Make sure you are in the folder where the downloaded files are located:
cd ~/Downloads
sudo dnf install \
python3-elevate-0.1.3-3.20240124git78e82a8.fc41.noarch.rpm \
python3-keyboard-0.13.5-3.fc41.noarch.rpm \
python3-pyv4l2-1.0.2-3.20240124gitf12f0b3.fc41.x86_64.rpm
Next, install OpenCV and V4L2:
sudo dnf install -y opencv opencv-devel opencv-python
sudo dnf install -y v4l-utils
3. Download and Install Howdy
Download the Howdy installation files:
wget https://download.copr.fedorainfracloud.org/results/principis/howdy-beta/fedora-41-x86_64/08674716-howdy/howdy-data-3.0.0-5.20250220gitaef35b5.fc41.noarch.rpm
wget https://download.copr.fedorainfracloud.org/results/principis/howdy-beta/fedora-41-x86_64/08674716-howdy/howdy-3.0.0-5.20250220gitaef35b5.fc41.x86_64.rpm
wget https://download.copr.fedorainfracloud.org/results/principis/howdy-beta/fedora-41-x86_64/08674716-howdy/howdy-gtk-3.0.0-5.20250220gitaef35b5.fc41.noarch.rpm
Install the files:
sudo dnf install ~/Downloads/howdy-*.fc41.*.rpm --exclude=*debug*
4. Configure Howdy
Identify the video device
Use the following commands to identify your camera:
v4l2-ctl --list-devices
ls /dev/video*
If multiple devices are detected, test them:
ffplay /dev/video0
ffplay /dev/video1
Edit the Howdy configuration file
Open the configuration file:
sudo howdy config
Modify the following settings:
detection_notice = true
timeout_notice = true
no_confirmation = false
suppress_unknown = false
abort_if_ssh = true
abort_if_lid_closed = true
disabled = false
use_cnn = false
workaround = input
certainty = 4.0
timeout = 10
device_path = /dev/video0 # Replace with your detected device
warn_no_device = true
max_height = 480
frame_width = 640
frame_height = 480
dark_threshold = 80
recording_plugin = opencv
device_format = v4l2
force_mjpeg = true
exposure = -1
device_fps = 15
rotate = 1
Save and exit.
5. Add a face template
Add a facial recognition template for your user:
sudo howdy add
Give the template a name when prompted.
6. Test facial recognition
Test if recognition works:
sudo howdy test
7. Configure authentication
Edit PAM files
Add Howdy to the PAM configuration for sudo:
sudo nano /etc/pam.d/sudo
Add this line to the beginning of the file:
auth sufficient pam_howdy.so no_confirmation
Do the same for GDM:
sudo nano /etc/pam.d/gdm-password
Add:
auth sufficient pam_howdy.so
8. Manage permissions
Give your camera the necessary permissions:
sudo chmod o+rw /dev/video*
sudo chmod -R o+rx /usr/share/howdy/dlib-data
sudo chmod +x /usr/bin/howdy
sudo usermod -aG video gdm
sudo chmod 666 /dev/video*
sudo chmod 755 /usr/lib64/security/pam_howdy.so
9. Create a custom SELinux module to enable Howdy
Create a SELinux policy file, for example, howdy.te:
sudo nano howdy.te
Add the following content to it:
module howdy 1.0;
require {
type unconfined_t;
type v4l_device_t;
class chr_file { open read write ioctl };
}
# Allow camera access for Howdy
allow unconfined_t v4l_device_t:chr_file { open read write ioctl };
Compile the module:
checkmodule -M -m -o howdy.mod howdy.te
semodule_package -o howdy.pp -m howdy.mod
Install the SELinux module:
sudo semodule -i howdy.pp
🎯 Conclusion
Your Fedora 42 system is now configured to use facial recognition with Howdy. 🚀
If you have any problems, check permissions and logs with:
journalctl -xe | grep howdy
Have fun with facial recognition! 😊
Installation and Configuration of Howdy 3.0.0-5 on Fedora 42
1. Download Dependencies
Before installing Howdy, you need to download the necessary packages:
wget https://download.copr.fedorainfracloud.org/results/principis/howdy-beta/fedora-42-x86_64/07780296-python-pyv4l2/python3-pyv4l2-1.0.2-3.20240124gitf12f0b3.fc41.x86_64.rpm wget https://download.copr.fedorainfracloud.org/results/principis/howdy-beta/fedora-42-x86_64/07780294-python-keyboard/python3-keyboard-0.13.5-3.fc41.noarch.rpm wget https://download.copr.fedorainfracloud.org/results/principis/howdy-beta/fedora-42-x86_64/07780292-python-elevate/python3-elevate-0.1.3-3.20240124git78e82a8.fc41.noarch.rpm
2. Install dependencies
Make sure you are in the folder where the downloaded files are located:
cd ~/Downloads sudo dnf install
python3-elevate-0.1.3-3.20240124git78e82a8.fc41.noarch.rpm
python3-keyboard-0.13.5-3.fc41.noarch.rpm
python3-pyv4l2-1.0.2-3.20240124gitf12f0b3.fc41.x86_64.rpm Next, install OpenCV and V4L2:sudo dnf install -y opencv opencv-devel opencv-python sudo dnf install -y v4l-utils
3. Download and Install Howdy
Download the Howdy installation files:
wget https://download.copr.fedorainfracloud.org/results/principis/howdy-beta/fedora-41-x86_64/08674716-howdy/howdy-data-3.0.0-5.20250220gitaef35b5.fc41.noarch.rpm wget https://download.copr.fedorainfracloud.org/results/principis/howdy-beta/fedora-41-x86_64/08674716-howdy/howdy-3.0.0-5.20250220gitaef35b5.fc41.x86_64.rpm wget https://download.copr.fedorainfracloud.org/results/principis/howdy-beta/fedora-41-x86_64/08674716-howdy/howdy-gtk-3.0.0-5.20250220gitaef35b5.fc41.noarch.rpm Install the files:
sudo dnf install ~/Downloads/howdy-.fc41..rpm --exclude=debug
4. Configure Howdy
Identify the video device
Use the following commands to identify your camera:
v4l2-ctl --list-devices ls /dev/video* If multiple devices are detected, test them:
ffplay /dev/video0 ffplay /dev/video1
Edit the Howdy configuration file
Open the configuration file:
sudo howdy config Modify the following settings:
detection_notice = true timeout_notice = true no_confirmation = false suppress_unknown = false abort_if_ssh = true abort_if_lid_closed = true disabled = false use_cnn = false workaround = input certainty = 4.0 timeout = 10 device_path = /dev/video0 # Replace with your detected device warn_no_device = true max_height = 480 frame_width = 640 frame_height = 480 dark_threshold = 80 recording_plugin = opencv device_format = v4l2 force_mjpeg = true exposure = -1 device_fps = 15 rotate = 1Save and exit.
5. Add a face template
Add a facial recognition template for your user:
sudo howdy add Give the template a name when prompted.
6. Test facial recognition
Test if recognition works:
sudo howdy test
7. Configure authentication
Edit PAM files
Add Howdy to the PAM configuration for sudo:
sudo nano /etc/pam.d/sudo Add this line to the beginning of the file:
auth sufficient pam_howdy.so no_confirmationDo the same for GDM:
sudo nano /etc/pam.d/gdm-password Add:
auth sufficient pam_howdy.so8. Manage permissions
Give your camera the necessary permissions:
sudo chmod o+rw /dev/video* sudo chmod -R o+rx /usr/share/howdy/dlib-data sudo chmod +x /usr/bin/howdy sudo usermod -aG video gdm sudo chmod 666 /dev/video* sudo chmod 755 /usr/lib64/security/pam_howdy.so
9. Create a custom SELinux module to enable Howdy
Create a SELinux policy file, for example, howdy.te:
sudo nano howdy.te Add the following content to it:
module howdy 1.0; require { type unconfined_t; type v4l_device_t; class chr_file { open read write ioctl }; } # Allow camera access for Howdy allow unconfined_t v4l_device_t:chr_file { open read write ioctl };Compile the module:
checkmodule -M -m -o howdy.mod howdy.te semodule_package -o howdy.pp -m howdy.mod Install the SELinux module:
sudo semodule -i howdy.pp
🎯 Conclusion
Your Fedora 42 system is now configured to use facial recognition with Howdy. 🚀
If you have any problems, check permissions and logs with:
journalctl -xe | grep howdy Have fun with facial recognition! 😊
This should be added to the repo docs! Thank you @freedy237
I tried the instructions above to upgrade from Fedora 41 to Fedora 42 but got these errors:
Packages not found: opencv-python
nothing provides python3dist(ffmpeg-python)
I also noticed the code above has references to the Fedora 41 version, so I tried changing those lines to the Fedora 42 version but received the exact same errors.
I previously used the principis copr to install on Fedora 41 and that worked well, however there currently isn't a Fedora 42 version available on copr.
I followed https://copr.fedorainfracloud.org/coprs/principis/howdy/ on fedora 41 then did fedora 42 upgrade and it's still working !
I also followed the instructions on copr for Fedora 41 and howdy installed fine. Now that Fedora 42 is out, attempting to upgrade still gives me this error:
nothing provides python3dist(ffmpeg-python) needed by howdy-3.0.0-5.20250220gitaef35b5.fc42.x86_64 from copr:copr.fedorainfracloud.org:principis:howdy-beta
to resolve the nothing provides python3dist(ffmpeg-python)... you can do:
dnf install https://kojipkgs.fedoraproject.org/packages/python-ffmpeg-python/0.2.0/8.fc41/noarch/python3-ffmpeg-python-0.2.0-8.fc41.noarch.rpm
to resolve the
nothing provides python3dist(ffmpeg-python)...you can do:dnf install https://kojipkgs.fedoraproject.org/packages/python-ffmpeg-python/0.2.0/8.fc41/noarch/python3-ffmpeg-python-0.2.0-8.fc41.noarch.rpm
Thank you, that did the trick. I was able to install howdy-beta on Fedora 42 and following the official guide.
9. Create a custom SELinux module to enable Howdy
Create a SELinux policy file, for example, howdy.te:
sudo nano howdy.te
Add the following content to it:
module howdy 1.0; require { type unconfined_t; type v4l_device_t; class chr_file { open read write ioctl }; } # Allow camera access for Howdy allow unconfined_t v4l_device_t:chr_file { open read write ioctl };
Writing this in my case worked only with my webcam, but not with my IR camera. Using the one written on the corp page as solved the issue (it's SELinux who block the access of the IR camera):
module howdy 1.0;
require {
type lib_t;
type xdm_t;
type v4l_device_t;
type sysctl_vm_t;
class chr_file map;
class file { create getattr open read write };
class dir add_name;
}
#============= xdm_t ==============
allow xdm_t lib_t:dir add_name;
allow xdm_t lib_t:file { create write };
allow xdm_t sysctl_vm_t:file { getattr open read };
allow xdm_t v4l_device_t:chr_file map;
Thanks to @freedy237, @BettridgeKameron and @PixelVengeur in #987 for the instructions.
https://github.com/freedy237/howdy-fedora-install
I tried the instructions above to upgrade from Fedora 41 to Fedora 42, but got these errors:
Packages not found: opencv-pythonnothing provides python3dist(ffmpeg-python)I also noticed the code above has references to the Fedora 41 version, so I tried changing those lines to the Fedora 42 version but received the exact same errors.
I previously used the principis copr to install on Fedora 41 and that worked well, however there currently isn't a Fedora 42 version available on copr.
Hi, were you able to install Howdy? I’m in the same situation - I need to get Howdy working on Fedora 42 running GNOME 48.2.
I’ve tried several methods but haven’t had any luck so far. If you found a solution or have an alternative approach, please share! 🙏
I tried the instructions above to upgrade from Fedora 41 to Fedora 42, but got these errors:
Packages not found: opencv-pythonnothing provides python3dist(ffmpeg-python)I also noticed the code above has references to the Fedora 41 version, so I tried changing those lines to the Fedora 42 version but received the exact same errors. I previously used the principis copr to install on Fedora 41 and that worked well, however there currently isn't a Fedora 42 version available on copr.Hi, were you able to install Howdy? I’m in the same situation - I need to get Howdy working on Fedora 42 running GNOME 48.2.
I’ve tried several methods but haven’t had any luck so far. If you found a solution or have an alternative approach, please share! 🙏
This worked for me: https://github.com/boltgolt/howdy/issues/1004#issuecomment-2832656920
I tried the instructions above to upgrade from Fedora 41 to Fedora 42, but got these errors:
Packages not found: opencv-pythonnothing provides python3dist(ffmpeg-python)I also noticed the code above has references to the Fedora 41 version, so I tried changing those lines to the Fedora 42 version but received the exact same errors. I previously used the principis copr to install on Fedora 41 and that worked well, however there currently isn't a Fedora 42 version available on copr.Hi, were you able to install Howdy? I’m in the same situation - I need to get Howdy working on Fedora 42 running GNOME 48.2. I’ve tried several methods but haven’t had any luck so far. If you found a solution or have an alternative approach, please share! 🙏
This worked for me: #1004 (comment)
Yes, great, it worked. Actually, a few hours ago I found this guide github.com/freedy237/howdy-fedora and it helped me to make it work.
Now it works great in Terminal.
But still no luck at -
-
Gnome Lockscreen
- The issue is I added it to the PAM file, and showing on the lockscreen like it's trying to authenticate but is not able to access the webcam on the lockscreen, idk may be due to sandboxing of Wayland.
-
After the system restart on the log-on screen
- Same issue as lockscreen, not able to access the camera
- There, it's not even showing like trying to auth, etc.
till now, it just works great in the terminal, Example - ❯ sudo dnf update Attempting facial authentication Exception ignored in: <_io.BufferedWriter name=4> BrokenPipeError: [Errno 32] Broken pipe Identified face as aryan Updating and loading repositories: Repositories loaded. Nothing to do.
Like it works great, if I ignore this Exception ignored in... and broken pipe error, that doesn't cause much issue, truly idk what it even means, it just works in terminal, that's it.
If you are able to fix it up, most importantly on Lockscreen, it would be great. 🙌