howdy icon indicating copy to clipboard operation
howdy copied to clipboard

Cannot Install Howdy

Open GLaDOS-lab opened this issue 1 year ago • 10 comments

I cannot, for the live of me, get howdy to install. I have tried using the method in #265, where I install the .deb manually, to no avail. Here is the error I'm getting:

Reading package lists... Done`
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  libatlas-base-dev libpam-python streamer xawtv-plugins
Suggested packages:
  nvidia-cuda-dev libatlas-doc liblapack-doc libpam-python-doc xawtv
The following NEW packages will be installed:
  howdy libatlas-base-dev libpam-python streamer xawtv-plugins
0 upgraded, 5 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/4,013 kB of archives.
After this operation, 25.4 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Selecting previously unselected package libpam-python.
(Reading database ... 233233 files and directories currently installed.)
Preparing to unpack .../libpam-python_1.1.0~git20220701.1d4e111-0.3build1_amd64.deb ...
Unpacking libpam-python (1.1.0~git20220701.1d4e111-0.3build1) ...
Selecting previously unselected package howdy.
Preparing to unpack .../archives/howdy_2.6.1_all.deb ...

WARNING: Could not automatically find the right webcam, manual configuration after installation required


Starting certainty auto config...


After detection, Howdy knows how certain it is that the match is correct.
How certain Howdy needs to be before authenticating you can be customized.

F: Fast.
Allows more fuzzy matches, but speeds up the scanning process greatly.

B: Balanced.
Still relatively quick detection, but might not log you in when further away.

S: Secure.
The safest option, but will take much longer to authenticate you.

You can always change this setting in the config.
What profile would you like to use? [f/b/s]: b

Unpacking howdy (2.6.1) ...
Selecting previously unselected package libatlas-base-dev:amd64.
Preparing to unpack .../libatlas-base-dev_3.10.3-13ubuntu1_amd64.deb ...
Unpacking libatlas-base-dev:amd64 (3.10.3-13ubuntu1) ...
Selecting previously unselected package xawtv-plugins.
Preparing to unpack .../xawtv-plugins_3.107-1.1_amd64.deb ...
Unpacking xawtv-plugins (3.107-1.1) ...
Selecting previously unselected package streamer.
Preparing to unpack .../streamer_3.107-1.1_amd64.deb ...
Unpacking streamer (3.107-1.1) ...
Setting up libpam-python (1.1.0~git20220701.1d4e111-0.3build1) ...
Setting up libatlas-base-dev:amd64 (3.10.3-13ubuntu1) ...
update-alternatives: using /usr/lib/x86_64-linux-gnu/atlas/libblas.so to provide /usr/lib/x86_64-linux-gnu/libblas.so (
libblas.so-x86_64-linux-gnu) in auto mode
update-alternatives: using /usr/lib/x86_64-linux-gnu/atlas/liblapack.so to provide /usr/lib/x86_64-linux-gnu/liblapack.
so (liblapack.so-x86_64-linux-gnu) in auto mode
Setting up xawtv-plugins (3.107-1.1) ...
Setting up streamer (3.107-1.1) ...
Setting up howdy (2.6.1) ...

>>> Upgrading pip to the latest version

error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
    python3-xyz, where xyz is the package you are trying to
    install.
    
    If you wish to install a non-Debian-packaged Python package,
    create a virtual environment using python3 -m venv path/to/venv.
    Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
    sure you have python3-full installed.
    
    If you wish to install a non-Debian packaged Python application,
    it may be easiest to use pipx install xyz, which will manage a
    virtual environment for you. Make sure you have pipx installed.
    
    See /usr/share/doc/python3.11/README.venv for more information.

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can ov
erride this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.
Error while running last command
dpkg: error processing package howdy (--configure):
 installed howdy package post-installation script subprocess returned error exit status 1
Processing triggers for man-db (2.11.2-3) ...
Errors were encountered while processing:
 howdy
E: Sub-process /usr/bin/dpkg returned an error code (1)
```

I have tried apt-purging and reinstalling, I have copied the repo add commands twice, and have even manually installed the dependencies using the commands for building it from scratch. Any ideas?


----

Linux distribution (if applicable):
Distributor ID:	Ubuntu
Description:	Ubuntu 23.10
Release:	23.10
Codename:	mantic


Howdy version (`sudo howdy version`):
N/A

GLaDOS-lab avatar Jun 03 '24 21:06 GLaDOS-lab

Same issue, Debian 12.5. apt-get -f install gets rid of the error and then dpkg -i succeeds, but the howdy CLI does not get installed and is not available.

tmarki avatar Jun 19 '24 02:06 tmarki

I am getting the same error as you do.

I even tried using pipx but that did not work

i found something on stackoverflow: https://stackoverflow.com/questions/77870343/getting-externally-managed-environment-error-when-trying-to-install-with-pip

but not much luck either.

After some more digging i found a different solution: https://stackoverflow.com/questions/76082216/python-pip-error-externally-managed-environment-after-upgrading-to-ubuntu-23-0

however after installation i run into a different issue:

sudo howdy add
No module named 'dlib'

Can't import the dlib module, check the output of
pip3 show dlib

i have installed dlib but that did not make a difference.

During installation of Howdy itself we did get some errors;

/tmp/dlib-19.16/dlib/external/pybind11/include/pybind11/pybind11.h:1888:49: error: ‘PyThreadState’ {aka ‘struct _ts’} has no member named ‘frame’; did you mean ‘cframe’?
 1888 |     PyFrameObject *frame = PyThreadState_Get()->frame;
      |                                                 ^~~~~
      |                                                 cframe
/tmp/dlib-19.16/dlib/external/pybind11/include/pybind11/pybind11.h:1889:41: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
 1889 |     if (frame && (std::string) str(frame->f_code->co_name) == name &&
      |                                         ^~
/usr/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
   22 | typedef struct _frame PyFrameObject;
      |                ^~~~~~
/tmp/dlib-19.16/dlib/external/pybind11/include/pybind11/pybind11.h:1890:14: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
 1890 |         frame->f_code->co_argcount > 0) {
      |              ^~
/usr/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
   22 | typedef struct _frame PyFrameObject;
      |                ^~~~~~
/tmp/dlib-19.16/dlib/external/pybind11/include/pybind11/pybind11.h:1893:18: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
 1893 |             frame->f_locals, PyTuple_GET_ITEM(frame->f_code->co_varnames, 0));
      |                  ^~
/usr/include/python3.11/pytypedefs.h:22:16: note: forward declaration of ‘PyFrameObject’ {aka ‘struct _frame’}
   22 | typedef struct _frame PyFrameObject;
      |                ^~~~~~
In file included from /usr/include/python3.11/Python.h:38:
/tmp/dlib-19.16/dlib/external/pybind11/include/pybind11/pybind11.h:1893:52: error: invalid use of incomplete type ‘PyFrameObject’ {aka ‘struct _frame’}
 1893 |             frame->f_locals, PyTuple_GET_ITEM(frame->f_code->co_varnames, 0));

Cees-Kettenis avatar Jul 03 '24 06:07 Cees-Kettenis

Vote up Screenshot_2024-07-09_10-14-18

System: Kernel: 6.9.7-1-liquorix-amd64 [6.9-6~mx23ahs] arch: x86_64 bits: 64 compiler: gcc v: 12.2.0 parameters: audit=0 intel_pstate=disable BOOT_IMAGE=/@/boot/vmlinuz-6.9.7-1-liquorix-amd64 root=UUID= ro rootflags=subvol=@ quiet splash resume=UUID= resume_offset=32274848 Desktop: Xfce v: 4.18.1 tk: Gtk v: 3.24.36 info: xfce4-panel wm: xfwm v: 4.18.0 vt: 7 dm: LightDM v: 1.26.0 Distro: MX-23.3_ahs_x64 Libretto May 19 2024 base: Debian GNU/Linux 12 (bookworm) Machine: Type: Laptop System: Dell product: Precision 7740 v: N/A serial: Chassis: type: 10 serial: Mobo: Dell model: 0TX4KW v: A00 serial: UEFI: Dell v: 1.32.0 date: 04/01/2024

Shaddy-ElDesouky avatar Jul 09 '24 07:07 Shaddy-ElDesouky

I had a little progress, I went to synaptic, installed dependencies(under: "Building from source") mentioned in the main page manually then tried installing again from deb installer (gui) and it installed successfully, but when running the command from terminal it responds "howdy: command not found". I'm trying to find a solution in another thread #771

Screenshot_2024-07-09_14-59-10

Shaddy-ElDesouky avatar Jul 09 '24 12:07 Shaddy-ElDesouky

I expect it's the same issue as mentioned above. Unfortunately this is my first proper venture into linux so reading & providing logs is proving difficult but I'll try to report what has happened.

System information: Model - Microsoft Corporation Surface Laptop 3 CPU - Intel® Core™ i5-1035G7 CPU @ 1.20GHz × 8 GPU - Mesa Intel® Iris(R) Plus Graphics (ICL GT2) OS - Zorin OS 17.1 Core OS Type - 64 bit Windowing System - Wayland (w/ GNOME)

Installing howdy from the terminal

  1. sudo add-apt-repository ppa:boltgolt/howdy (successful)
  2. sudo apt update (successful)
  3. sudo apt install howdy E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem.

Same result using the .deb package

plumpkid avatar Jul 13 '24 11:07 plumpkid

This issue is still persistent with the .deb package.

DaanSelen avatar Feb 24 '25 11:02 DaanSelen

Exact same situation, both with .deb package and using the terminal

Linux Mint Cinnamon 22.1

Trying "C922 Pro Stream Webcam" One of your cameras should now be on. Did your IR emitters turn on? [y/N]: y

Starting certainty auto config...

After detection, Howdy knows how certain it is that the match is correct. How certain Howdy needs to be before authenticating you can be customized.

F: Fast. Allows more fuzzy matches, but speeds up the scanning process greatly.

B: Balanced. Still relatively quick detection, but might not log you in when further away.

S: Secure. The safest option, but will take much longer to authenticate you.

You can always change this setting in the config. What profile would you like to use? [f/b/s]: f

Unpacking howdy (2.6.1) ... Setting up howdy (2.6.1) ... /var/lib/dpkg/info/howdy.postinst:145: SyntaxWarning: invalid escape sequence '\w' "davisking-dlib-\w+/(dlib/(http_client|java|matlab|test/)|"

Upgrading pip to the latest version

error: externally-managed-environment

× This environment is externally managed ╰─> To install Python packages system-wide, try apt install python3-xyz, where xyz is the package you are trying to install.

If you wish to install a non-Debian-packaged Python package,
create a virtual environment using python3 -m venv path/to/venv.
Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
sure you have python3-full installed.

If you wish to install a non-Debian packaged Python application,
it may be easiest to use pipx install xyz, which will manage a
virtual environment for you. Make sure you have pipx installed.

See /usr/share/doc/python3.12/README.venv for more information.

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of b reaking your Python installation or OS, by passing --break-system-packages. hint: See PEP 668 for the detailed specification. Error while running last command dpkg: error processing package howdy (--configure): installed howdy package post-installation script subprocess returned error exit status 1 Processing triggers for man-db (2.12.0-4build2) ... Errors were encountered while processing: howdy E: Sub-process /usr/bin/dpkg returned an error code (1)

jeronbernal avatar May 02 '25 13:05 jeronbernal

It looks like it mostly become unmaintained

DaanSelen avatar May 02 '25 13:05 DaanSelen