GithubHelp home page GithubHelp logo

openvoiceos / ovos-docker Goto Github PK

View Code? Open in Web Editor NEW
34.0 8.0 12.0 5.04 MB

Open Voice OS container images and docker-compose.yml files for x86_64 and aarch64 CPU architectures.

Home Page: https://openvoiceos.github.io/ovos-docker/

License: Apache License 2.0

Shell 12.58% Dockerfile 85.73% Python 1.69%
docker 64-bit aarch64 amd64 arm64 compose container docker-compose mycroft ovos

ovos-docker's Introduction

ovos-docker's People

Contributors

1maxnet1 avatar denics avatar goldyfruit avatar mikejgray avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ovos-docker's Issues

_curses.error: setupterm: could not find terminal

This error only happens with Podman.

ovos@ovos_cli:~$ ovos-cli-client
2023-10-10 15:20:50.280 - OVOS - ovos_cli_client.__main__:main:70 - WARNING - this installation seems to also contain logs in the legacy directory /var/log/mycroft, please start using stdout
2023-10-10 15:20:50.500 - OVOS - ovos_utils.signal:get_ipc_directory:26 - WARNING - Deprecation version=0.1.0. Caller=ovos_cli_client.__main__:79. Expected a dict config and got None.
2023-10-10 15:20:51.058 - OVOS - ovos_cli_client.text_client:load_settings:208 - INFO - Ignoring failed load of settings file


Traceback (most recent call last):
  File "/home/ovos/.venv/bin/ovos-cli-client", line 33, in <module>
    sys.exit(load_entry_point('ovos-cli-client==0.0.1a1', 'console_scripts', 'ovos-cli-client')())
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_cli_client/__main__.py", line 91, in main
    curses.wrapper(gui_main)
  File "/usr/lib/python3.11/curses/__init__.py", line 73, in wrapper
    stdscr = initscr()
             ^^^^^^^^^
  File "/usr/lib/python3.11/curses/__init__.py", line 29, in initscr
    setupterm(term=_os.environ.get("TERM", "unknown"),
_curses.error: setupterm: could not find terminal

Skill install at every start of the container.

The entrypoint of ovos_core at every start of the container will install the skills from the skills.list

On the mark2 this takes just above 3 minutes to get to full ready state.

Dec 01 10:32:12 OpenVoiceOS-840dca ovos_core[819]: Collecting git+https://github.com/OpenVoiceOS/skill-ovos-homescreen.git (from -r /home/ovos/.config/mycroft/skills.list (line 1))

[...]

Dec 01 10:35:27 OpenVoiceOS-840dca ovos_core[819]: 2023-12-01 10:35:27.115 - skills - ovos_core.intent_services.padatious_service:train:144 - INFO - Training complete.

Might it be possible to make this smarter, to only install things if it hasn't been installed?

Documentation improvements

  • Better to install skills in ovos_core instead of standalone when hardware is slow (e.g: RPi 3B+)
  • Tweak the HEALTHCHECK from Dockerfile via docker-compose*.yml files
  • Remove full path for acknowledge sound from mycroft.conf
  • Add information about PULL_POLICY .env variable
  • Update information about GUI support since @NeonDaniel fixed most of the issues
  • Warning about GUI images size and the reason why
  • Add requirements about Podman (version, repository, systemd, etc...)
  • Note about not using Docker Desktop on Linux as /dev/snd doesn't seem supported
  • Add a note about having a X server already installed and working
  • Explain render group usage with GUI on Raspberry Pi
  • export DISPLAY=:0 before xhost command
  • Add HIVEMIND_USER variables description

Permission denied: '/tmp/mycroft/bus.pid'

Discussion from this Matrix thread.

2023-06-23 13:17:11 ovos_messagebus  | Traceback (most recent call last):
2023-06-23 13:17:11 ovos_messagebus  |   File "/home/ovos/.venv/bin/ovos-messagebus", line 8, in <module>
2023-06-23 13:17:11 ovos_messagebus  |     sys.exit(main())
2023-06-23 13:17:11 ovos_messagebus  |              ^^^^^^
2023-06-23 13:17:11 ovos_messagebus  |   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_messagebus/__main__.py", line 47, in main
2023-06-23 13:17:11 ovos_messagebus  |     PIDLock("bus")
2023-06-23 13:17:11 ovos_messagebus  |   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_utils/process_utils.py", line 324, in __init__
2023-06-23 13:17:11 ovos_messagebus  |     self.create()
2023-06-23 13:17:11 ovos_messagebus  |   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_utils/process_utils.py", line 377, in create
2023-06-23 13:17:11 ovos_messagebus  |     self.touch()
2023-06-23 13:17:11 ovos_messagebus  |   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_utils/process_utils.py", line 364, in touch
2023-06-23 13:17:11 ovos_messagebus  |     with open(self.path, 'w') as L:
2023-06-23 13:17:11 ovos_messagebus  |          ^^^^^^^^^^^^^^^^^^^^
2023-06-23 13:17:11 ovos_messagebus  | PermissionError: [Errno 13] Permission denied: '/tmp/mycroft/bus.pid'
1970-01-01 01:00:00 ovos_messagebus exited with code 1
tvh@debian:~/ovos$ ls -l /home/tvh/ovos
drwxr-xr-x 2 tvh tvh 4096 22 jun 10:49 config
drwxr-xr-x 2 tvh tvh 4096 22 jun 10:49 share
drwxr-xr-x 2 tvh tvh 4096 22 jun 10:49 tmp
tvh@debian:~/ovos$ stat /home/tvh/ovos

  Bestand: /home/tvh/ovos
  Grootte: 4096           Blokken: 8          IO-blok: 4096   map
 Apparaat: 259/2   Inode: 5505205      Koppelingen: 5
  Rechten: (0755/drwxr-xr-x)   UID: ( 1000/     tvh)   GID: ( 1000/     tvh)
  Toegang: 2023-06-23 12:09:03.415742823 +0200
Gewijzigd: 2023-06-22 10:49:21.793411529 +0200
Veranderd: 2023-06-23 11:58:49.783044519 +0200
 Ontstaan: 2023-06-22 10:49:21.793411529 +0200
tvh@debian:~/ovos$ id
UID=1000(tvh) GID=1000(tvh) groepen=1000(tvh),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev),100(users),106(netdev),111(bluetooth),113(lpadmin),116(scanner),994(docker)

Request: Alpha builds of ovos-media

With the new/next stable release of the whole framework around the corner, hopefully soon the current "alpha" containers can be build as "stable" containers.

However, seperate from that. Do you have plans to add and release "ovos-media" containers?

That way we can prepare our OS images forwards with ovos-audio for the upcomings stable release and prepare a new development image release based on ovos-media for the next image release.

DBUS_SESSION_BUS_ADDRESS missing from ovos_audio container

When ovos_audio container starts, an error appears into the logs related to missing DBUS_SESSION_BUS_ADDRESS environment variable.

2023-05-02 12:30:48.188 - audio - ovos_plugin_common_play.ocp.mpris:run:420 - ERROR - DBUS_SESSION_BUS_ADDRESS not set and could not get DISPLAY environment variable to get bus address

This should be added to docker-compose.yml.

Suppport custom .asoundrc

When using some voice HAT, PipeWire or PulseAudio will be bypassed and ALSA will be the best final option. To do so, ALSA requires a custom .asoundrc configuration to match the HAT configuration.

The entrypoint.sh script used by containers leveraging audio feature must support a custom .asoundrc if found in ~/.config/mycroft/ directory.

  • Implement code
  • Documentation

Problem with upgrade under OSX arm64

doing a docker compose up -d I get the following warning and error message. Deleting all containers / volumes make the error disappear (obviously)

WARN[0466] volume "ovos_vosk" already exists but was created for project "ovos" (expected "compose"). Use `external: true` to use an existing volume
WARN[0466] volume "ovos_nltk" already exists but was created for project "ovos" (expected "compose"). Use `external: true` to use an existing volume
WARN[0466] volume "ovos_listener_records" already exists but was created for project "ovos" (expected "compose"). Use `external: true` to use an existing volume
WARN[0466] volume "ovos_models" already exists but was created for project "ovos" (expected "compose"). Use `external: true` to use an existing volume
[+] Running 0/0
 ⠋ Container ovos_messagebus  Creating                                                                                                                                                                                                          0.0s
 ⠋ Container ovos_cli         Creating                                                                                                                                                                                                          0.0s
Error response from daemon: Conflict. The container name "/ovos_cli" is already in use by container "57513d619d519c3a8b1bacb8479a69fbad920864dd5ff49a1c43f3b6a7de06ec". You have to remove (or rename) that container to be able to reuse that name.

docker info:

$ docker info
Client:
 Version:    24.0.2
 Context:    desktop-linux
 Debug Mode: false

No such file or directory: 'tasklist' in ovos_audio container

2023-12-20 09:56:21.165 - ovos.common_play - ERROR - [Errno 2] No such file or directory: 'tasklist'
Traceback (most recent call last):
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_utils/system.py", line 283, in is_process_running
    s = subprocess.Popen(["ps", "axw"], stdout=subprocess.PIPE)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/subprocess.py", line 1024, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/usr/lib/python3.11/subprocess.py", line 1901, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'ps'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_utils/messagebus.py", line 601, in wrapper
    handler(message)
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_plugin_common_play/ocp/__init__.py", line 281, in handle_play
    results = self._search(phrase, utterance, media_type)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_plugin_common_play/ocp/__init__.py", line 349, in _search
    for r in self.player.media.search(phrase, media_type=media_type):
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_plugin_common_play/ocp/search.py", line 393, in search
    query = OCPQuery(query=phrase, media_type=media_type, ocp_search=self,
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_plugin_common_play/ocp/search.py", line 41, in __init__
    self.reset()
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_plugin_common_play/ocp/search.py", line 60, in reset
    self.has_gui = is_gui_running() or is_gui_connected(self.bus)
                   ^^^^^^^^^^^^^^^^
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_utils/gui.py", line 42, in is_gui_running
    return any((is_process_running(app) for app in applications))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_utils/gui.py", line 42, in <genexpr>
    return any((is_process_running(app) for app in applications))
                ^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_utils/system.py", line 285, in is_process_running
    s = subprocess.Popen(["tasklist", "/v"], stdout=subprocess.PIPE)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/subprocess.py", line 1024, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/usr/lib/python3.11/subprocess.py", line 1901, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'tasklist'

Manifest Unknown Error

When downloading the base image via docker pull command, I get the error Error response from daemon: manifest for smartgic/ovos-base:latest not found: manifest unknown: manifest unknown

https://hub.docker.com/r/smartgic/ovos-base is the one I tried since all other images rely on the base. I haven't tried others.

Error when running ovos-cli-client

In a fresh install, when trying to run ovos-cli-client in ovos_cli I get the following error:

Traceback (most recent call last):                                                     
  File "/home/ovos/.venv/bin/ovos-cli-client", line 33, in <module>
      sys.exit(load_entry_point('ovos-cli-client==0.0.1', 'console_scripts', 'ovos-cli-client')())                                                                              
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_cli_client/__main__.py", line 63, in main                                                                          
    for f in os.listdir(log_dir):                                                      
             ^^^^^^^^^^^^^^^^^^^                                                       
FileNotFoundError: [Errno 2] No such file or directory: '/home/ovos/.local/state/mycroft'

This is solved by running mkdir -p /home/ovos/.local/state/mycroft in the ovos_cli container

Maybe it could be worth to create /home/ovos/.local/state/mycroft in https://github.com/OpenVoiceOS/ovos-docker/blob/dev/cli/Dockerfile ?

No module named 'mycroft_bus_client' within ovos_core logs

To elaborate on the issue title it must been stated that this is the first run of the container(s), however I do see A LOT of the below log snippet.

Sep 05 11:43:14 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:14.494 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-ovos-news.openvoiceos', value='skill_ovos_news:NewsSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:14 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:14.497 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-ovos-youtube-music.openvoiceos', value='skill_ovos_youtube_music:YoutubeMusicSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:14 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:14.499 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-alerts.neongeckocom', value='skill_alerts:AlertSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:16 OpenVoiceOS ovos_messagebus[512]: 2023-09-05 11:43:16.538 - bus - ovos_messagebus.event_handler:on_message:50 - DEBUG - gui.status.request.response source: [] destination: []
Sep 05 11:43:16 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:16.565 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-ovos-news.openvoiceos', value='skill_ovos_news:NewsSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:16 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:16.568 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-ovos-youtube-music.openvoiceos', value='skill_ovos_youtube_music:YoutubeMusicSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:16 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:16.570 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-alerts.neongeckocom', value='skill_alerts:AlertSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:18 OpenVoiceOS ovos_messagebus[512]: 2023-09-05 11:43:18.610 - bus - ovos_messagebus.event_handler:on_message:50 - DEBUG - gui.status.request.response source: [] destination: []
Sep 05 11:43:18 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:18.632 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-ovos-news.openvoiceos', value='skill_ovos_news:NewsSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:18 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:18.635 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-ovos-youtube-music.openvoiceos', value='skill_ovos_youtube_music:YoutubeMusicSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:18 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:18.637 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-alerts.neongeckocom', value='skill_alerts:AlertSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:20 OpenVoiceOS ovos_messagebus[512]: 2023-09-05 11:43:20.486 - bus - ovos_messagebus.event_handler:on_message:50 - DEBUG - skill-ovos-date-time.openvoiceos:skill-ovos-date-time.openvoiceosupdate_display source: [] destination: []
Sep 05 11:43:20 OpenVoiceOS ovos_messagebus[512]: 2023-09-05 11:43:20.675 - bus - ovos_messagebus.event_handler:on_message:50 - DEBUG - gui.status.request.response source: [] destination: []
Sep 05 11:43:20 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:20.704 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-ovos-news.openvoiceos', value='skill_ovos_news:NewsSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:20 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:20.707 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-ovos-youtube-music.openvoiceos', value='skill_ovos_youtube_music:YoutubeMusicSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:20 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:20.709 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-alerts.neongeckocom', value='skill_alerts:AlertSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:22 OpenVoiceOS ovos_messagebus[512]: 2023-09-05 11:43:22.734 - bus - ovos_messagebus.event_handler:on_message:50 - DEBUG - gui.status.request.response source: [] destination: []
Sep 05 11:43:22 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:22.761 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-ovos-news.openvoiceos', value='skill_ovos_news:NewsSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:22 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:22.764 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-ovos-youtube-music.openvoiceos', value='skill_ovos_youtube_music:YoutubeMusicSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:22 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:22.765 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-alerts.neongeckocom', value='skill_alerts:AlertSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:24 OpenVoiceOS ovos_messagebus[512]: 2023-09-05 11:43:24.808 - bus - ovos_messagebus.event_handler:on_message:50 - DEBUG - gui.status.request.response source: [] destination: []
Sep 05 11:43:24 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:24.836 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-ovos-news.openvoiceos', value='skill_ovos_news:NewsSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:24 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:24.840 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-ovos-youtube-music.openvoiceos', value='skill_ovos_youtube_music:YoutubeMusicSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:24 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:24.841 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-alerts.neongeckocom', value='skill_alerts:AlertSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:26 OpenVoiceOS ovos_messagebus[512]: 2023-09-05 11:43:26.870 - bus - ovos_messagebus.event_handler:on_message:50 - DEBUG - gui.status.request.response source: [] destination: []
Sep 05 11:43:26 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:26.889 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-ovos-news.openvoiceos', value='skill_ovos_news:NewsSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:26 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:26.892 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-ovos-youtube-music.openvoiceos', value='skill_ovos_youtube_music:YoutubeMusicSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:26 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:26.899 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-alerts.neongeckocom', value='skill_alerts:AlertSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:28 OpenVoiceOS ovos_messagebus[512]: 2023-09-05 11:43:28.920 - bus - ovos_messagebus.event_handler:on_message:50 - DEBUG - gui.status.request.response source: [] destination: []
Sep 05 11:43:28 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:28.938 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-ovos-news.openvoiceos', value='skill_ovos_news:NewsSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:28 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:28.941 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-ovos-youtube-music.openvoiceos', value='skill_ovos_youtube_music:YoutubeMusicSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:28 OpenVoiceOS ovos_core[864]: 2023-09-05 11:43:28.943 - skills - ovos_plugin_manager.utils:find_plugins:111 - DEBUG - Failed to load plugin entry point EntryPoint(name='skill-alerts.neongeckocom', value='skill_alerts:AlertSkill', group='ovos.plugin.skill'): No module named 'mycroft_bus_client'
Sep 05 11:43:30 OpenVoiceOS ovos_messagebus[512]: 2023-09-05 11:43:30.020 - bus - ovos_messagebus.event_handler:on_message:50 - DEBUG - skill-ovos-date-time.openvoiceos:skill-ovos-date-time.openvoiceosupdate_display source: [] destination: []

Wayland and GUI

Is it possible to run the GUI when using Wayland? if this is the case, can we have a section in the README?

sdnotify (READY) support

I am in progress (learning howto) to create and run the containers fully under systemd by utilizing the quadlets system which is part of Podman >4.4

One of the benefits of it is to use the sdnotify system to let systemd know when a started container is fully loaded and ready.

"--sdnotify=container" instead of "--sdnotify=conmon"

For this to work, we need to use the systemd wrappers as start entry point within the containers. As there is no downside of using the wrappers while not using the sdnotify system itself, I would like to ask to make it the default entry point such that I can just pull the images from the registry instead of building them myself.

g2p is not installed

on a vanilla installation, docker on debian12, on which I just runned the docker compose --project-name ovos up -d command I get this error:

2023-08-21 09:47:42.113 - audio - ovos_plugin_manager.g2p:create:142 - ERROR - The selected G2P plugin could not be loaded.
Traceback (most recent call last):
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_plugin_manager/g2p.py", line 139, in create
    g2p = clazz(g2p_config)
          ^^^^^^^^^^^^^^^^^
TypeError: 'NoneType' object is not callable
2023-08-21 09:47:42.114 - audio - ovos_plugin_manager.templates.tts:__init__:448 - ERROR - G2P plugin not loaded, there will be no mouth movements
Traceback (most recent call last):
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_plugin_manager/templates/tts.py", line 446, in __init__
    self.g2p = OVOSG2PFactory.create(cfg)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_plugin_manager/g2p.py", line 139, in create
    g2p = clazz(g2p_config)
          ^^^^^^^^^^^^^^^^^
TypeError: 'NoneType' object is not callable

I have the same on my M1

manifest for smartgic/ovos-messagebus:dev not found

I am using the last version from dev:

$ docker compose up
[+] Running 7/7
 ✘ ovos_phal_admin Error                                                          1.6s 
 ✘ ovos_audio Error                                                               1.6s 
 ✘ ovos_cli Error                                                                 1.6s 
 ✘ ovos_listener Error                                                            1.6s 
 ✘ ovos_messagebus Error                                                          1.6s 
 ✘ ovos_core Error                                                                1.6s 
 ✘ ovos_phal Error                                                                1.6s 
Error response from daemon: manifest for smartgic/ovos-messagebus:dev not found: manifest unknown: manifest unknown

Add information about log and stdout

By default the services will write the logs into a log file under .local directory, this file it not rotated which could lead to disk space issue.

The solution is to add these lines into mycroft.conf, this will tell the services to not create a log file but redirect the logs to the container stdout.

{
  "logs": {
    "path": "stdout"
  }
}

This must be added to the README.md.

cannot play start_listening

I don't know if it is a bug or if it is my configuration, but I am unable to play the start_listening sound when using ovos_docker. Audio works fine in TTS / STT / LISTENER . Any hint?

This is the configuration:

{
  'start_listening': 'snd/start_listening.wav', 
  'end_listening': 'snd/end_listening.wav', 
  'acknowledge': 'snd/acknowledge.mp3', 
  'error': 'snd/error.mp3'
}

found in /sounds

and the files exists:

[12:58:12] ~/Git/ovos/ovos-docker/compose $ docker exec -it ovos_core bash
ovos@ovos_core:~$ paplay ./.venv/lib/python3.11/site-packages/mycroft/res/snd/start_listening.wav

What about binding the containers on 127.0.0.1??

By default the containers are bound to 0.0.0.0 which means they could be reached from outside the container host. When running local this is not an issue but when running on a VPS then some services could be directly reached which causes a security issue.

There are few solutions:

  • Bind all the containers to 127.0.0.1
  • Inform the users about 0.0.0.0 vs 127.0.0.1

Error while deploying on nas

Hello,
I'm trying to deploy it on a custom synology nas. But i've a problem. It seems that the container checks for pipewire, that's is not installed.
I've configured pulseaudio:
Server String: /opt/tmp/pulse-iywKBC630jyh/native Library Protocol Version: 34 Server Protocol Version: 34 Is Local: yes Client Index: 0 Tile Size: 4032 User Name: Felice Host Name: HomeServer Server Name: pulseaudio Server Version: 14.2 Default Sample Specification: s16le 2ch 44100Hz Default Channel Map: front-left,front-right Default Sink: auto_null Default Source: auto_null.monitor Cookie: f8a5:d632

During the compose i've this error:
Error response from daemon: Bind mount failed: '/run/user/X/pipewire-0' does not exists.
Thanks for your support

Add few clarifications to the README based on feedback

  • OVOS_USER in the .env file
  • Use the --parallel option to avoid too high disk consumption during the up -d
  • Add information about how to use tts.list, phal.list/phal-admin.list and stt.list
  • Differences between docker-compose and docker compose commands
  • Restrict remote access to the message bus via IPTables
  • Mac OS procedure must be revised as sounddevice microphone plugin is now available
  • Add docker stats debug command

mount log folder for ease of log management

Mounting the logs folders can make it easier to debug sometimes, or follow what is going on. furthermore, a rotation can be put in place on the docker machine to manage the space

Invalid value for userns_mode param: keep-id

When running the docker-compose.yml stack, I got this error:

sudo docker-compose up ovos_stt_fasterwhisper
Creating ovos_stt_fasterwhisper ... 

ERROR: for ovos_stt_fasterwhisper  Invalid value for userns_mode param: keep-id

ERROR: for ovos_stt_fasterwhisper  Invalid value for userns_mode param: keep-id
Traceback (most recent call last):
  File "/usr/bin/docker-compose", line 33, in <module>
    sys.exit(load_entry_point('docker-compose==1.29.2', 'console_scripts', 'docker-compose')())
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 81, in main
    command_func()
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 203, in perform_command
    handler(command, command_options)
  File "/usr/lib/python3/dist-packages/compose/metrics/decorator.py", line 18, in wrapper
    result = fn(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 1186, in up
    to_attach = up(False)
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 1166, in up
    return self.project.up(
  File "/usr/lib/python3/dist-packages/compose/project.py", line 697, in up
    results, errors = parallel.parallel_execute(
  File "/usr/lib/python3/dist-packages/compose/parallel.py", line 108, in parallel_execute
    raise error_to_reraise
  File "/usr/lib/python3/dist-packages/compose/parallel.py", line 206, in producer
    result = func(obj)
  File "/usr/lib/python3/dist-packages/compose/project.py", line 679, in do
    return service.execute_convergence_plan(
  File "/usr/lib/python3/dist-packages/compose/service.py", line 559, in execute_convergence_plan
    return self._execute_convergence_create(
  File "/usr/lib/python3/dist-packages/compose/service.py", line 473, in _execute_convergence_create
    containers, errors = parallel_execute(
  File "/usr/lib/python3/dist-packages/compose/parallel.py", line 108, in parallel_execute
    raise error_to_reraise
  File "/usr/lib/python3/dist-packages/compose/parallel.py", line 206, in producer
    result = func(obj)
  File "/usr/lib/python3/dist-packages/compose/service.py", line 478, in <lambda>
    lambda service_name: create_and_start(self, service_name.number),
  File "/usr/lib/python3/dist-packages/compose/service.py", line 457, in create_and_start
    container = service.create_container(number=n, quiet=True)
  File "/usr/lib/python3/dist-packages/compose/service.py", line 330, in create_container
    container_options = self._get_container_create_options(
  File "/usr/lib/python3/dist-packages/compose/service.py", line 939, in _get_container_create_options
    container_options['host_config'] = self._get_container_host_config(
  File "/usr/lib/python3/dist-packages/compose/service.py", line 1014, in _get_container_host_config
    return self.client.create_host_config(
  File "/usr/lib/python3/dist-packages/docker/api/container.py", line 596, in create_host_config
    return HostConfig(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/docker/types/containers.py", line 544, in __init__
    raise host_config_value_error("userns_mode", userns_mode)
ValueError: Invalid value for userns_mode param: keep-id

docker-compose is different than docker compose. This error is because userns_mode is not a valid param for docker-compose command as its not aware about it.

docker-compose is the deprecated Python implementation of compose, the new command should be docker composewhich come embedded with thedocker` command.

docker compose comes with newer Docker version, please make sure to follow this link to install Docker properly.

OSError: [Errno 30] Read-only file system: '/home/ovos/.config/mycroft/apps/ggwave.openvoiceos'

2024-03-17 13:47:20.842 - ggwave.openvoiceos - ERROR - Failed to store settings for ggwave.openvoiceos: [Errno 30] Read-only file system: '/home/ovos/.config/mycroft/apps/ggwave.openvoiceos'
2024-03-17 13:47:20.847 - ggwave.openvoiceos - ERROR - Failed to shutdown gui for ggwave.openvoiceos: <bound method GUIInterface.gui_set of <ovos_workshop.skills.ovos.SkillGUI object at 0x7f72807990>>
2024-03-17 13:47:20.860 - voice - ovos_dinkum_listener.transformers:load_plugins:57 - ERROR - Failed to load audio transformer plugin: ovos-audio-transformer-plugin-ggwave
Traceback (most recent call last):
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_dinkum_listener/transformers.py", line 54, in load_plugins
    self.loaded_plugins[plug_name].bind(self.bus)
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_audio_transformer_plugin_ggwave/__init__.py", line 114, in bind
    self.vui = GGWaveSkill(bus=self.bus, skill_id="ggwave.openvoiceos")
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_workshop/app.py", line 38, in __init__
    super().__init__(skill_id=skill_id, bus=bus, gui=gui,
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_workshop/skills/ovos.py", line 201, in __init__
    self._startup(bus, self.skill_id)
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_workshop/skills/ovos.py", line 740, in _startup
    raise e
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_workshop/skills/ovos.py", line 731, in _startup
    self._check_for_first_run()
  File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_workshop/skills/ovos.py", line 691, in _check_for_first_run
    self.settings.store()
  File "/home/ovos/.venv/lib/python3.11/site-packages/json_database/__init__.py", line 80, in store
    makedirs(dirname(path))
  File "<frozen os>", line 225, in makedirs
OSError: [Errno 30] Read-only file system: '/home/ovos/.config/mycroft/apps/ggwave.openvoiceos'

Listens, but doesn't answer

So I just installed ovos-docker using the official docs. Got everything except for the GUI. When I use the wakeword ("Hey Mycroft"), it is playing a "listening" sound, but never answers queries. Just stays completely silent.

Looking at the CLI (docker exec --interactive --tty ovos_cli ovos-cli-client) the queries seem to properly arrive, as in it understands what I'm saying, but it never generates an answer.

image

I can confirm that speech output works properly by running docker exec --interactive --tty ovos_cli ovos-speak "hello world"

It also seems like all containers that should be running are in fact running:

image

Although the ovos-core container seems to restart exactly every 60 seconds (no idea if that's intended)

In case it somehow matters, i'm running Arch Linux

ovos-PHAL-plugin-respeaker-2mic Issue when installing with phal.list

My first opened Issue, so I will be grateful for any comments and advice how to make it better in the future!

System: Raspberry Pi4 / "Debian GNU/Linux 12 (bookworm)"

I used https://github.com/OpenVoiceOS/ovos-installer to install the docker version.

I have the ReSpeaker 2Mic-HAT installed with these drivers https://github.com/seeed-studio-projects/seeed-voicecard

When I'm trying to install the ovos-PHAL-plugin-respeaker-2mic using the phal.list I get this error message:

ERROR: Could not find a version that satisfies the requirement ovos-PHAL-plugin-respeaker-2mic (from versions: none)
ERROR: No matching distribution found for ovos-PHAL-plugin-respeaker-2mic
2023-11-25 21:35:19.005 - PHAL - ovos_PHAL.service:on_started:25 - INFO - PHAL is started
2023-11-25 21:35:19.108 - PHAL - ovos_bus_client.session:from_message:447 - WARNING - No session context in message:connected
2023-11-25 21:35:19.237 - PHAL - ovos_PHAL.service:load_plugins:83 - INFO - PHAL plugin loaded: ovos-phal-plugin-ipgeo
2023-11-25 21:35:19.405 - PHAL - ovos_PHAL.service:load_plugins:83 - INFO - PHAL plugin loaded: ovos-PHAL-plugin-alsa
2023-11-25 21:35:19.414 - PHAL - ovos_PHAL.service:load_plugins:83 - INFO - PHAL plugin loaded: ovos-PHAL-plugin-system
2023-11-25 21:35:19.416 - PHAL - ovos_PHAL.service:on_ready:9 - INFO - PHAL is ready.

When changing it to git+https://github.com/OpenVoiceOS/ovos-PHAL-plugin-respeaker-2mic.git it gives me this error message:

Collecting git+https://github.com/OpenVoiceOS/ovos-PHAL-plugin-respeaker-2mic.git (from -r /home/ovos/.config/mycroft/phal.list (line 1))
  Cloning https://github.com/OpenVoiceOS/ovos-PHAL-plugin-respeaker-2mic.git to /tmp/pip-req-build-c9cfrlm1
  Running command git clone --filter=blob:none --quiet https://github.com/OpenVoiceOS/ovos-PHAL-plugin-respeaker-2mic.git /tmp/pip-req-build-c9cfrlm1
  Resolved https://github.com/OpenVoiceOS/ovos-PHAL-plugin-respeaker-2mic.git to commit 9714e3e3611064f07ac871bcc4a983d255753f21
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting RPi.GPIO
  Downloading RPi.GPIO-0.7.1.tar.gz (29 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Requirement already satisfied: ovos-plugin-manager>=0.0.1 in ./.venv/lib/python3.11/site-packages (from ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (0.0.24)
Collecting spidev
  Downloading spidev-3.6.tar.gz (11 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Installing backend dependencies: started
  Installing backend dependencies: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Requirement already satisfied: combo-lock~=0.2 in ./.venv/lib/python3.11/site-packages (from ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (0.2.6)
Requirement already satisfied: importlib-metadata in ./.venv/lib/python3.11/site-packages (from ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (6.8.0)
Requirement already satisfied: langcodes~=3.3.0 in ./.venv/lib/python3.11/site-packages (from ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (3.3.0)
Requirement already satisfied: ovos-bus-client<0.1.0,>=0.0.3 in ./.venv/lib/python3.11/site-packages (from ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (0.0.6a19)
Requirement already satisfied: ovos-config<0.1.0,>=0.0.8 in ./.venv/lib/python3.11/site-packages (from ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (0.0.12a1)
Requirement already satisfied: ovos-utils<0.1.0,>=0.0.32 in ./.venv/lib/python3.11/site-packages (from ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (0.0.37a1)
Requirement already satisfied: quebra-frases in ./.venv/lib/python3.11/site-packages (from ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (0.3.7)
Requirement already satisfied: requests~=2.26 in ./.venv/lib/python3.11/site-packages (from ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (2.31.0)
Requirement already satisfied: filelock~=3.0 in ./.venv/lib/python3.11/site-packages (from combo-lock~=0.2->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (3.13.1)
Requirement already satisfied: memory-tempfile in ./.venv/lib/python3.11/site-packages (from combo-lock~=0.2->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (2.2.3)
Requirement already satisfied: pyee<9.0.0,>=8.1.0 in ./.venv/lib/python3.11/site-packages (from ovos-bus-client<0.1.0,>=0.0.3->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (8.2.2)
Requirement already satisfied: websocket-client>=0.54.0 in ./.venv/lib/python3.11/site-packages (from ovos-bus-client<0.1.0,>=0.0.3->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (1.6.4)
Requirement already satisfied: PyYAML<7.0.0,>=5.4.0 in ./.venv/lib/python3.11/site-packages (from ovos-config<0.1.0,>=0.0.8->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (6.0.1)
Requirement already satisfied: python-dateutil~=2.6 in ./.venv/lib/python3.11/site-packages (from ovos-config<0.1.0,>=0.0.8->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (2.8.2)
Requirement already satisfied: rich-click~=1.6 in ./.venv/lib/python3.11/site-packages (from ovos-config<0.1.0,>=0.0.8->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (1.7.1)
Requirement already satisfied: json-database~=0.7 in ./.venv/lib/python3.11/site-packages (from ovos-utils<0.1.0,>=0.0.32->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (0.7.0)
Requirement already satisfied: kthread~=0.2 in ./.venv/lib/python3.11/site-packages (from ovos-utils<0.1.0,>=0.0.32->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (0.2.3)
Requirement already satisfied: pexpect~=4.6 in ./.venv/lib/python3.11/site-packages (from ovos-utils<0.1.0,>=0.0.32->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (4.8.0)
Requirement already satisfied: watchdog in ./.venv/lib/python3.11/site-packages (from ovos-utils<0.1.0,>=0.0.32->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (3.0.0)
Requirement already satisfied: charset-normalizer<4,>=2 in ./.venv/lib/python3.11/site-packages (from requests~=2.26->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (3.3.2)
Requirement already satisfied: idna<4,>=2.5 in ./.venv/lib/python3.11/site-packages (from requests~=2.26->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (3.4)
Requirement already satisfied: urllib3<3,>=1.21.1 in ./.venv/lib/python3.11/site-packages (from requests~=2.26->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (2.1.0)
Requirement already satisfied: certifi>=2017.4.17 in ./.venv/lib/python3.11/site-packages (from requests~=2.26->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (2023.11.17)
Requirement already satisfied: zipp>=0.5 in ./.venv/lib/python3.11/site-packages (from importlib-metadata->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (3.17.0)
Requirement already satisfied: regex in ./.venv/lib/python3.11/site-packages (from quebra-frases->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (2023.10.3)
Requirement already satisfied: ptyprocess>=0.5 in ./.venv/lib/python3.11/site-packages (from pexpect~=4.6->ovos-utils<0.1.0,>=0.0.32->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (0.7.0)
Requirement already satisfied: six>=1.5 in ./.venv/lib/python3.11/site-packages (from python-dateutil~=2.6->ovos-config<0.1.0,>=0.0.8->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (1.16.0)
Requirement already satisfied: click>=7 in ./.venv/lib/python3.11/site-packages (from rich-click~=1.6->ovos-config<0.1.0,>=0.0.8->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (8.1.7)
Requirement already satisfied: rich>=10.7.0 in ./.venv/lib/python3.11/site-packages (from rich-click~=1.6->ovos-config<0.1.0,>=0.0.8->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (13.7.0)
Requirement already satisfied: typing-extensions in ./.venv/lib/python3.11/site-packages (from rich-click~=1.6->ovos-config<0.1.0,>=0.0.8->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (4.8.0)
Requirement already satisfied: markdown-it-py>=2.2.0 in ./.venv/lib/python3.11/site-packages (from rich>=10.7.0->rich-click~=1.6->ovos-config<0.1.0,>=0.0.8->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (3.0.0)
Requirement already satisfied: pygments<3.0.0,>=2.13.0 in ./.venv/lib/python3.11/site-packages (from rich>=10.7.0->rich-click~=1.6->ovos-config<0.1.0,>=0.0.8->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (2.17.1)
Requirement already satisfied: mdurl~=0.1 in ./.venv/lib/python3.11/site-packages (from markdown-it-py>=2.2.0->rich>=10.7.0->rich-click~=1.6->ovos-config<0.1.0,>=0.0.8->ovos-plugin-manager>=0.0.1->ovos-PHAL-plugin-respeaker-2mic==0.0.1->-r /home/ovos/.config/mycroft/phal.list (line 1)) (0.1.2)
Building wheels for collected packages: spidev
  Building wheel for spidev (pyproject.toml): started
  Building wheel for spidev (pyproject.toml): finished with status 'error'
  error: subprocess-exited-with-error
  
  × Building wheel for spidev (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [23 lines of output]
      /tmp/pip-build-env-z286hjoy/overlay/lib/python3.11/site-packages/setuptools/dist.py:472: SetuptoolsDeprecationWarning: Invalid dash-separated options
      !!
      
              ********************************************************************************
              Usage of dash-separated 'description-file' will not be supported in future
              versions. Please use the underscore name 'description_file' instead.
      
              By 2024-Sep-26, you need to update your project and remove deprecated calls
              or your builds will no longer be supported.
      
              See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
              ********************************************************************************
      
      !!
        opt = self.warn_dash_deprecation(opt, section)
      running bdist_wheel
      running build
      running build_ext
      building 'spidev' extension
      creating build
      creating build/temp.linux-aarch64-cpython-311
      aarch64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -I/home/ovos/.venv/include -I/usr/include/python3.11 -c spidev_module.c -o build/temp.linux-aarch64-cpython-311/spidev_module.o
      error: command 'aarch64-linux-gnu-gcc' failed: No such file or directory
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for spidev
Failed to build spidev
ERROR: Could not build wheels for spidev, which is required to install pyproject.toml-based projects
2023-11-25 21:39:28.863 - PHAL - ovos_PHAL.service:on_started:25 - INFO - PHAL is started
2023-11-25 21:39:28.900 - PHAL - ovos_bus_client.session:from_message:447 - WARNING - No session context in message:connected
2023-11-25 21:39:29.015 - PHAL - ovos_PHAL.service:load_plugins:83 - INFO - PHAL plugin loaded: ovos-phal-plugin-ipgeo
2023-11-25 21:39:29.090 - PHAL - ovos_PHAL.service:load_plugins:83 - INFO - PHAL plugin loaded: ovos-PHAL-plugin-alsa
2023-11-25 21:39:29.097 - PHAL - ovos_PHAL.service:load_plugins:83 - INFO - PHAL plugin loaded: ovos-PHAL-plugin-system
2023-11-25 21:39:29.100 - PHAL - ovos_PHAL.service:on_ready:9 - INFO - PHAL is ready.

Broken Links in README

The bold/italics links are broken.

Open Voice OS running on Docker or Podman
What is Open Voice OS?
How does it work with Docker or Podman?

Supported architectures and tags
Architectures
Hardware tested on
Operating systems (64-bit version) tested on

How to build these images
Arguments
Image alternatives
Message bus
Listener

TTS (Text-to-Speech) and STT (Speech-to-Text)

ovos-gui-plugin-shell-companion missing in gui_websocket container?

Saw the below in the DEBUG logs;

Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]: 2023-09-05 11:32:28.069 - gui - ovos_plugin_manager.utils.config:get_plugin_config:38 - DEBUG - Loaded configuration: {'module': 'ovos-gui-plugin-shell-companion', 'idle_display_skill>
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]: 2023-09-05 11:32:28.080 - gui - ovos_bus_client.session:from_message:490 - DEBUG - Creating default session on reference
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]: 2023-09-05 11:32:28.084 - gui - ovos_plugin_manager.utils.config:get_plugin_config:38 - DEBUG - Loaded configuration: {'module': 'ovos-gui-plugin-shell-companion', 'idle_display_skill>
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]: 2023-09-05 11:32:28.087 - gui - ovos_bus_client.session:reset_default_session:531 - INFO - New Default Session Start: 42bb7f0b-cfa9-47a9-a559-7f92db79251a
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]: 2023-09-05 11:32:28.132 - gui - ovos_plugin_manager.utils:load_plugin:145 - WARNING - Could not find the plugin PluginTypes.GUI.ovos-gui-plugin-shell-companion
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]: 2023-09-05 11:32:28.135 - gui - ovos_plugin_manager.gui:create:109 - ERROR - The selected gui plugin could not be loaded.
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]: Traceback (most recent call last):
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_plugin_manager/gui.py", line 106, in create
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]:     gui = clazz(gui_config, bus=bus, gui=gui)
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]:           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]: TypeError: 'NoneType' object is not callable
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]: 2023-09-05 11:32:28.137 - gui - ovos_gui.extensions:activate_extension:52 - ERROR - failed to load ovos-gui-plugin-shell-companion, falling back to 'generic'
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]: Traceback (most recent call last):
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_gui/extensions.py", line 48, in activate_extension
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]:     self.extension = OVOSGuiFactory.create(cfg, bus=self.bus)
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]:                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_plugin_manager/gui.py", line 106, in create
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]:     gui = clazz(gui_config, bus=bus, gui=gui)
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]:           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Sep 05 11:32:28 OpenVoiceOS ovos_gui_websocket[572]: TypeError: 'NoneType' object is not callable

Unable to deploy ovos-containers

As of this writing, alpha = 0.0.8a. When trying to deploy the OVOS stack on a RPi 4B, getting the following:

trezone@Paine:~/ovos-docker/compose $ docker compose --project-name ovos --file docker-compose.yml --file docker-compose.skills.yml --file docker-compose.gui.yml --file docker-compose.raspberrypi.yml --file docker-compose.raspberrypi.gui.yml --file docker-compose.hivemind.yml up --detach
[+] Running 4/23
 ⠼ hivemind_cli 2 layers [⠀⠀]      0B/0B      Pulling                                                                                                                                                                                                                                   19.5s 
 ⠼ hivemind_listener 5 layers [⣿⠀⠀⠀⠀] 3.243MB/66.93MB Pulling                                                                                                                                                                                                                           19.5s 
 ⠼ ovos_skill_wolfie 1 layers [⠀]      0B/0B      Pulling                                                                                                                                                                                                                               19.5s 
 ⠼ ovos_skill_alerts 3 layers [⣿⣿⣿]      0B/0B      Pulling                                                                                                                                                                                                                             19.5s 
 ⠼ ovos_skill_jokes 1 layers [⠀]      0B/0B      Pulling                                                                                                                                                                                                                                19.5s 
 ⠼ ovos_skill_personal 1 layers [⠀]      0B/0B      Pulling                                                                                                                                                                                                                             19.5s 
 ⠼ ovos_audio 5 layers [⠀⠀⠀⠀⠀]      0B/0B      Pulling                                                                                                                                                                                                                                  19.5s 
 ⠼ ovos_cli 3 layers [⠀⠀⠀]      0B/0B      Pulling                                                                                                                                                                                                                                      19.5s 
 ⠼ ovos_core 3 layers [⠀⠀⠀]      0B/0B      Pulling                                                                                                                                                                                                                                     19.5s 
 ⠼ ovos_skill_stop 1 layers [⠀]      0B/0B      Pulling                                                                                                                                                                                                                                 19.5s 
 ⠼ ovos_skill_volume 1 layers [⠀]      0B/0B      Pulling                                                                                                                                                                                                                               19.5s 
 ⠼ ovos_skill_weather 3 layers [⠀⠀⠀]      0B/0B      Pulling                                                                                                                                                                                                                            19.5s 
 ⠼ ovos_skill_date_time 1 layers [⠀]      0B/0B      Pulling                                                                                                                                                                                                                            19.5s 
 ⠼ ovos_gui Pulling                                                                                                                                                                                                                                                                     19.5s 
 ⠼ ovos_gui_websocket 1 layers [⠀]      0B/0B      Pulling                                                                                                                                                                                                                              19.5s 
 ⠼ ovos_skill_fallback_unknown 1 layers [⠀]      0B/0B      Pulling                                                                                                                                                                                                                     19.5s 
 ⠼ ovos_skill_wikipedia 1 layers [⠀]      0B/0B      Pulling                                                                                                                                                                                                                            19.5s 
 ⠼ ovos_skill_hello_world 1 layers [⠀]      0B/0B      Pulling                                                                                                                                                                                                                          19.5s 
 ⠼ ovos_skill_homescreen 1 layers [⠀]      0B/0B      Pulling                                                                                                                                                                                                                           19.5s 
 ⠼ ovos_listener 3 layers [⠀⠀⠀]      0B/0B      Pulling                                                                                                                                                                                                                                 19.5s 
 ⠼ ovos_messagebus 2 layers [⠀⠀]      0B/0B      Pulling                                                                                                                                                                                                                                19.5s 
 ⠼ ovos_phal Pulling                                                                                                                                                                                                                                                                    19.4s 
 ⠼ ovos_phal_admin 4 layers [⠀⠀⠀⠀]      0B/0B      Pulling                                                                                                                                                                                                                              19.4s 
no matching manifest for linux/arm64/v8 in the manifest list entries

Seems like it was working prior on 0.0.8aa, which can't be rolled back to if one has hivemind-(cli|listener) as part of the stack

ovos_audio ignoring mycroft.conf

I am using the docker compose with no major issues to test. It works fine, however it seems it does not use mycroft.conf for TTS. If I do docker exec -ti ovos_cli ovos-config show --section tts I can see the right values:

│ pulse_duck                                                   │ true                          │
│ module                                                       │ ovos-tts-plugin-server        │
│ fallback_module                                              │ ovos-tts-plugin-mimic3-server │
│ ovos-tts-plugin-mimic                                        │                               │
│     voice                                                    │ ap                            │
│ ovos-tts-plugin-mimic3-server                                │                               │
│     voice                                                    │ it_IT/mls_low                 │
│ ovos-tts-plugin-server                                       │                               │
│     host                                                     │ http://10.10.5.2:9666         │
│ ovos-tts-plugin-piper                                        │                               │
│     model                                                    │ riccardo_fasol                │

with this mycroft.conf

{
  "hotwords": {
    "hey_mycroft": {
      "fallback_ww": ""
    },
    "hey_mycroft_precise": {
      "listen": "false"
    },
    "hey_mycroft_vosk": {
      "listen": "false"
    },
    "hey_mycroft_pocketsphinx": {
      "listen": "false"
    }
  },
  "lang": "it-it",
  "logs": {
    "path": "stdout"
  },
  "tts": {
    "pulse_duck": "true",
    "module": "ovos-tts-plugin-server",
    "ovos-tts-plugin-server": {
      "host": "http://10.10.5.2:9666"
    },
    "ovos-tts-plugin-piper": {
      "model": "riccardo_fasol"
    },
    "ovos-tts-plugin-mimic3-server": {
      "voice": "it_IT/mls_low"
    }
  },
  "skills": {
    "blacklisted_skills": [
      "mycroft-wiki.mycroftai"
    ]
  }
}

however, I get a strong English accent like it falls to mimic :(

cannot set multiple networks without bridge network mode

when laucnching podman-compose --project-name ovos --file docker-compose.yml up --detach I have this error

['podman', '--version', '']
using podman version: 4.3.1
** excluding:  set()
['podman', 'network', 'exists', 'ovos_default']
podman run --name=ovos_messagebus -d --security-opt label=disable --label io.podman.compose.config-hash=123 --label io.podman.compose.project=ovos --label io.podman.compose.version=0.0.1 --label com.docker.compose.project=ovos --label com.docker.compose.project.working_dir=/home/denix/Git/ovos/ovos-docker/compose --label com.docker.compose.project.config_files=docker-compose.yml --label com.docker.compose.container-number=1 --label com.docker.compose.service=ovos_messagebus --network host -e TZ=Europe/Paris -v /home/denix/Git/ovos/docker/ovos/config:/home/ovos/.config/mycroft:ro -v /home/denix/Git/ovos/docker/ovos/tmp:/tmp/mycroft --net ovos_default --network-alias ovos_messagebus --log-driver=json-file --log-opt=mode=non-blocking --log-opt=max-buffer-size=4m --log-opt=max-size=200m --log-opt=max-file=1 --hostname ovos_messagebus --pull always --restart unless-stopped docker.io/smartgic/ovos-messagebus:alpha
Error: cannot set multiple networks without bridge network mode, selected mode host: invalid argument
exit code: 125
podman start ovos_messagebus
Error: no container with name or ID "ovos_messagebus" found: no such container

I found a mention of this error on the podman issues list: containers/podman#13109

neon-phal-plugin-linear-led phal plugin fails to install

For the mark2 kits out there, I added the neon-phal-plugin-linear-led to the phal.list however fails to install at launch of the container with;

Dec 17 13:05:51 OpenVoiceOS-418c85 ovos_phal[715]:   Building wheel for rpi-ws281x (setup.py): started
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:   Building wheel for rpi-ws281x (setup.py): finished with status 'error'
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:   error: subprocess-exited-with-error
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:   × python setup.py bdist_wheel did not run successfully.
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:   │ exit code: 1
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:   ╰─> [15 lines of output]
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       running bdist_wheel
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       running build
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       running build_py
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       Compiling ws281x library...
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       creating build
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       creating build/lib.linux-aarch64-cpython-311
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       creating build/lib.linux-aarch64-cpython-311/rpi_ws281x
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       copying rpi_ws281x/__init__.py -> build/lib.linux-aarch64-cpython-311/rpi_ws281x
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       copying rpi_ws281x/rpi_ws281x.py -> build/lib.linux-aarch64-cpython-311/rpi_ws281x
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       running build_ext
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       building '_rpi_ws281x' extension
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       creating build/temp.linux-aarch64-cpython-311
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       creating build/temp.linux-aarch64-cpython-311/lib
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       aarch64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -I. -I/home/ovos/.venv/include>
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       running build_py
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       Compiling ws281x library...
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       creating build
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       creating build/lib.linux-aarch64-cpython-311
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       creating build/lib.linux-aarch64-cpython-311/rpi_ws281x
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       copying rpi_ws281x/__init__.py -> build/lib.linux-aarch64-cpython-311/rpi_ws281x
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       copying rpi_ws281x/rpi_ws281x.py -> build/lib.linux-aarch64-cpython-311/rpi_ws281x
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       running build_ext
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       building '_rpi_ws281x' extension
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       creating build/temp.linux-aarch64-cpython-311
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       creating build/temp.linux-aarch64-cpython-311/lib
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       aarch64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -I. -I/home/ovos/.venv/include>
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       error: command 'aarch64-linux-gnu-gcc' failed: No such file or directory
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:       [end of output]
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:   note: This error originates from a subprocess, and is likely not a problem with pip.
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:   ERROR: Failed building wheel for rpi-ws281x
Dec 17 13:05:56 OpenVoiceOS-418c85 ovos_phal[715]:   Running setup.py clean for rpi-ws281x
Dec 17 13:06:00 OpenVoiceOS-418c85 ovos_phal[715]: Successfully built ovos-PHAL-plugin-mk1 neon-phal-plugin-linear-led
Dec 17 13:06:00 OpenVoiceOS-418c85 ovos_phal[715]: Failed to build rpi-ws281x
Dec 17 13:06:04 OpenVoiceOS-418c85 ovos_phal[715]: Installing collected packages: rpi-ws281x, pyserial, board, Adafruit-PlatformDetect, pyusb, click-default-group, Adafruit-PureIO, pyftdi, ovos-PHAL-plugin-mk1, adafruit-circuitpython-re>
Dec 17 13:06:04 OpenVoiceOS-418c85 ovos_phal[715]:   Running setup.py install for rpi-ws281x: started
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:   Running setup.py install for rpi-ws281x: finished with status 'error'
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:   error: subprocess-exited-with-error
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:   × Running setup.py install for rpi-ws281x did not run successfully.
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:   │ exit code: 1
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:   ╰─> [17 lines of output]
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       running install
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       /home/ovos/.venv/lib/python3.11/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards>
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:         warnings.warn(
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       running build
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       running build_py
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       Compiling ws281x library...
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       creating build
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       creating build/lib.linux-aarch64-cpython-311
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       creating build/lib.linux-aarch64-cpython-311/rpi_ws281x
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       copying rpi_ws281x/__init__.py -> build/lib.linux-aarch64-cpython-311/rpi_ws281x
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       copying rpi_ws281x/rpi_ws281x.py -> build/lib.linux-aarch64-cpython-311/rpi_ws281x
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       running build_ext
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       building '_rpi_ws281x' extension
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       creating build/temp.linux-aarch64-cpython-311
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       creating build/temp.linux-aarch64-cpython-311/lib
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       aarch64-linux-gnu-gcc -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -fPIC -I. -I/home/ovos/.venv/include>
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       error: command 'aarch64-linux-gnu-gcc' failed: No such file or directory
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:       [end of output]
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:   note: This error originates from a subprocess, and is likely not a problem with pip.
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]: error: legacy-install-failure
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]: × Encountered error while trying to install package.
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]: ╰─> rpi-ws281x
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]:
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]: note: This is an issue with the package mentioned above, not pip.
Dec 17 13:06:07 OpenVoiceOS-418c85 ovos_phal[715]: hint: See above for output from the failure.

It can't compile the rpi_ws281x module. Not sure if this belong here, or over at the neon phal plugin repo though.

ovos_listener cannot play start_listening file

When wake word is triggered, no sound is played. There is the following trace in docker.

ovos_listener                | 2023-05-10 22:52:34.059 - voice - ovos_utils.sound:play_listening_sound:62 - WARNING - Could not find 'start_listening' audio file!

The file does exist in the ovos_listener container:

/home/ovos/.venv/lib/python3.11/site-packages/ovos_listener/res/snd/start_listening.wav

and the configuration seems too match:

Value: snd/start_listening.wav, found in /sounds/start_listening

Any ideas why the file is not found?

Dedicated files for essential and extra skills

Since the skill containers increase, we need to provide files for the essential skills such as alerts, date-time, fallback-unknown, etc... and the extra skills such eastereggs, fallback-chatgpt, home-assistant, etc...

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.