howdy: Problems running on Ubuntu 23.04 (lunar)
Ubuntu 23.04 comes with a new version of Python (default is 3.11) that makes howdy not run properly.
The first issue is line 10 in pam.py:
import ConfigParser
The module is now called configparser so howdy can’t properly import it.
Then the python ‘dlib’ module was missing, I installed it via sudo pip install --break-system-packages dlib.
Doing a mitigation by changing that line to import configparser as ConfigParser makes howdy work in GDM for login but when using it in sudo creates a funky error:
Traceback (most recent call last):
File "/lib/security/howdy/compare.py", line 23, in <module>
from recorders.video_capture import VideoCapture
The strange thing is: If you add import recorders to the file there is no problem. Just importing that submodule fails and seemingly only while trying it via sudo.
Linux distribution (if applicable): Ubuntu 23.04
Howdy version (sudo howdy version): Howdy 2.6.1
About this issue
- Original URL
- State: open
- Created a year ago
- Reactions: 6
- Comments: 18 (1 by maintainers)
Here’s my ugly hack workaround that also works for fresh install of howdy on 23.04, just skip the “apt remove howdy” command. Doing this also fixes the error when authenticating sudo in the first comment.
sudo -imv /usr/lib/python3.11/EXTERNALLY-MANAGED /usr/lib/python3.11/DISABLED-EXTERNALLY-MANAGEDapt remove howdypip3 install dlibapt install howdynano /lib/security/howdy/pam.py # Change ConfigParser to configparser on 2 linesmv /usr/lib/python3.11/DISABLED-EXTERNALLY-MANAGED /usr/lib/python3.11/EXTERNALLY-MANAGEDnote: You also need to change it elsewhere, or just change the line to
import configparser as ConfigParserPurge and reinstall seems to have run into errors:
To those who are not willing to use
--break-system-packages:Tested on the
betabranch, should work onmaster.After changing the
configparserimport I had a different issue:After installing dlib with
sudo pip install --break-system-packages dlibeverything is working now.I’ve got the exact same issue with a fresh install of Ubuntu 23.04 Linux 6.2.0-20-generic 64-bit. Wrapping howdy inside of it’s own venv would be the optimal solution here and for isolating its install further from the host.
@ashkop You made my day. Howdy is working fine in my Kubuntu 23.04 now.
I am also get the same problem on Ubuntu version
23.10.1Howdy Installation Issue on Ubuntu 23.10.1
Problem:
I encountered an issue with Howdy installation on Ubuntu version
23.10.1. The provided solutions seemed to have complications.Workaround:
I found a workaround that worked for me, even on a fresh install of Ubuntu 23.10.1. Skip the “apt remove howdy” command to avoid additional errors during sudo authentication.
Open a root shell:
Move the EXTERNALLY-MANAGED directory:
Remove Howdy (skip if fresh install):
Install dlib using pip3:
pip3 install dlibIf pip3 doesn’t work, try
pip install dlib. If that also fails, attempt:sudo pip install --break-system-packages dlibReinstall Howdy:
Edit pam.py to fix import error:
Change
import ConfigParsertoimport configparser as ConfigParseryou can find on lines 2 to 11.This workaround should help resolve the installation issues in my case.
While adding face some time you will get device_path problem but i am solve it like this.
@boltgolt Could you let us know how to wrap howdy up with venv? Or is it possible to wrap howdy up with docker?
@nate3D Thanks for the solution, could you please share an example of how to do the “Wrapping howdy inside of it’s own venv”?
This is an annoying one, using
--break-system-packagesshould help but it’s really not the clean way to do it. Maybe a venv for Howdy would be better