Hermes LED control with Rhasspy in Docker?

In running the HLC installation script, it asks the path to your rhasspy profile. I am running rhasspy in a docker container. How can HLC access the profile in this case, or is there a docker image for HLC?

Disregard… Even when run in docker, rhasspy does create an external .config folder. I did get another error when running the script (it’s still running) installing mosquitto, but I hope that’s because it’s already installed.

More problems with the script; now it fails on build numpy wheels. anyone know where to look to fix this?

More specifically, the script says “Building wheel for numpy (pyproject.toml)” then after a while gives pages of errors. Any ideas?

The errors would be kind of interesting, as these seem to be related, don’t they? :wink:
Ok, seriously, if you want to get any good answers for your problem, please provide at least the necessary minimum of informations about your setup, hardware and software, what exactly you’re trying to do and so on.

It is really hard to help, with what you’re giving us. :slight_smile:

I’d guess it has something to do with your OS and the used (or not used) python version. But as I said, this is just a guess, not based on any information you gave. :wink: :smiley:

Running in docker containers, on Rpi4B with OS buster: rhasspy 2.5.11, home assistant 2022.5.5, and eclipse mosquitto broker 1.5.7. Python 3.9.0 is set as default as is pip3. Running hlc_download.sh as sudo gives following errors:

  1. error processing package mosquitto (–configure). This appears several times during the script, yet the mosquitto broker is running; publish and subscribe both work. Perhaps it is because mosquitto is running in a container; I’ve asked about this on the docker forum.
  2. After answering the questions about my equipment, paths, and patterns, the script fails on mosquitto twice more then reports:

Installing collected packages: spidev, RPi.GPIO, paho-mqtt, pyyaml, numpy, colorzero, gpiozero
Successfully installed RPi.GPIO-0.7.1 colorzero-2.0 gpiozero-1.6.2 numpy-1.22.4 paho-mqtt-1.6.1 pyyaml-6.0 spidev-3.5
WARNING: You are using pip version 22.0.4; however, version 22.1.2 is available.
You should consider upgrading via the ‘/home/voice/HermesLedControl/venv/bin/python -m pip install --upgrade pip’ command.
I then tell the script to install/configure matrix voice and it syas I have the latest versions of that.

  1. the script then downloads a matrix-lite file and a file from piwheels and attempts to compile with gcc. thisfails with the following output:

Building wheels for collected packages: matrix-lite
Building wheel for matrix-lite (setup.py) … error
error: subprocess-exited-with-error

× python setup.py bdist_wheel did not run successfully.
│ exit code: 1
╰─> [23 lines of output]
/home/voice/HermesLedControl/venv/lib/python3.9/site-packages/setuptools/installer.py:27: SetuptoolsDeprecationWarning: setuptools.installer is deprecated. Requirements should be satisfied by a PEP 517 installer.
warnings.warn(
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-armv7l-cpython-39
creating build/lib.linux-armv7l-cpython-39/matrix_lite
copying matrix_lite/colour.py → build/lib.linux-armv7l-cpython-39/matrix_lite
copying matrix_lite/init.py → build/lib.linux-armv7l-cpython-39/matrix_lite
copying matrix_lite/sensors.py → build/lib.linux-armv7l-cpython-39/matrix_lite
copying matrix_lite/led.py → build/lib.linux-armv7l-cpython-39/matrix_lite
running build_ext
building ‘_matrix_hal’ extension
creating build/temp.linux-armv7l-cpython-39
creating build/temp.linux-armv7l-cpython-39/hal_wrapper
creating build/temp.linux-armv7l-cpython-39/hal_wrapper/drivers
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -I/tmp/pip-install-goxyu68q/matrix-lite_0791c9804bc145f8a08085674fa9e761/.eggs/pybind11-2.9.2-py3.9.egg/pybind11/include -I/tmp/pip-install-goxyu68q/matrix-lite_0791c9804bc145f8a08085674fa9e761/.eggs/pybind11-2.9.2-py3.9.egg/pybind11/include -I/home/voice/HermesLedControl/venv/include -I/usr/include/python3.9 -c hal_wrapper/drivers/everloop.cpp -o build/temp.linux-armv7l-cpython-39/hal_wrapper/drivers/everloop.o -O3 -DVERSION_INFO=“0.0.8” -std=c++11
hal_wrapper/drivers/everloop.cpp:2:10: fatal error: ./everloop.h: No such file or directory
#include “./everloop.h”
^~~~~~~~~~~~~~
compilation terminated.
error: command ‘/usr/bin/gcc’ failed with exit code 1
[end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for matrix-lite
The compiler is missing everloop.h. Whereshould I go from here?

It seems the script installs mosquitto despite it already running in docker. I decided to remove the docker container and run the MQTT broker in the host. It is still available to homeassistant.

Now when running hlc_download I get no errors until the point where it asks if I want to configure the matrix. If I answer yes then I get the gcc error referenced above. If I answer no, then the script finishes with no errors, but there is no main.py in ~/HermesLedControl/venv/bin.