Code Monkey home page Code Monkey logo

ovos-cli-client's Introduction

OVOS - Buildroot OS

A minimalistic Linux OS bringing the open source voice assistant ovos-core to embedded, low-spec headless and/or small (touch)screen devices.

System.

OpenVoiceOS - Full 64 Bit distribution

  • Linux kernel 6.1.x (LTS)
  • Buildroot 2023.02.x (LTS) (With some modification here and there)
  • OVOS framework / software package utilizing ovos-docker containers (Currently latest alpha/development version)
  • Raspberry Pi 3|3b|3b+ (UEFI based)
  • Raspberry Pi 4 (UEFI based)
  • x86_64 Intel based computers (UEFI based) (Work In Progress)
  • Open Virtual Appliance (UEFI based)

Stats:

Build Status GitHub last commit
This shows if the code is valid and can be build. This shows when this repo was updated for the last time
GitHub stars GitHub issues
Please โญ this repo if you find it useful Issues are like my personal TODO list and information archive
License: Apache License 2.0 contributions welcome
I'm using the Apache License 2.0 similar as Mycroft A.I. which means commercial use is allowed If you have any ideas, they're always welcome. Either submit an issue or a PR!
Uptime Robot status Buy me a
I use uptime robot to monitor for things i can't monitor when the connection drops. If you feel the need, now it's as easy as clicking this button!

Documentation.

More information and instructions can be found within the "documentation" folder.

Credits

Mycroft AI (@MycroftAI)
Buildroot (@buildroot)
HassOS (@home-assistant)

Inspired by;

HassOS (@home-assistant)
SkiffOS (@skiffos)

ovos-cli-client's People

Contributors

emphasize avatar gmsoft-tuxicoman avatar jarbasal avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

ovos-cli-client's Issues

roadmap [archive candidate]

this repo tries to do many things at once, it is being semi-retired, if someone from community wants to maintain it PRs will be accepted, but it will stop being shipped in our images and go into life support mode otherwise

  • move log monitor helper class to ovos-utils
  • new util entrypoint in ovos-utils -> ovos-log-monitor path/to/logs/folder
  • this repo only for backwards compat in mycroft.client module, to be dropped in 0.2.0
  • adopt neon mana as default component of OVOS, it uses the several messagebus apis and handles the decentralized nature of our services https://github.com/NeonGeckoCom/neon-mana-utils

changes in neon-mana:

  • mycroft-messagebus-client -> ovos-bus-client
  • pyyaml~=5.4 bump to 6.0
  • drop neon-utils + port b64 methods to ovos-utils

issues in ovos-cli-client:

  • inherently tied to hardcoded log locations, there is no proper fix possible for #12 when each service may be in a different machine or logs not being saved
  • not updated, many commands are broken such as :skills not accounting for latest ovos updates and not using the messagebus api
  • exception to the messagebus routing paradigm, it is considered a native audio source for legacy reasons

wontfix:

{"path": "stdout"} not supported by the CLI

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: 'stdout'

ovos-cli-client still depends a lot on mycroft

on a clean raspbian installation of ovos, with the default mycroft.conf ovos-cli-client will fail looking for /var/log/mycroft folder.

This is the message:

(ovos-core) denix@sprat:~ $ ovos-cli-client
2023-02-19 09:48:26.887 - OVOS - ovos_config.models:load_local:95 - DEBUG - Configuration /home/denix/ovos-core/lib/python3.9/site-packages/mycroft/configuration/mycroft.conf loaded
2023-02-19 09:48:27.074 - OVOS - ovos_config.models:load_local:99 - DEBUG - Configuration '/etc/mycroft/mycroft.conf' not defined, skipping
2023-02-19 09:48:27.254 - OVOS - ovos_config.models:load_local:99 - DEBUG - Configuration '/home/denix/.config/mycroft/web_cache.json' not defined, skipping
2023-02-19 09:48:27.454 - OVOS - ovos_config.models:load_local:95 - DEBUG - Configuration /home/denix/.config/mycroft/mycroft.conf loaded
2023-02-19 09:48:27.628 - OVOS - ovos_config.models:load_local:99 - DEBUG - Configuration '/etc/xdg/mycroft/mycroft.conf' not defined, skipping
2023-02-19 09:48:27.809 - OVOS - ovos_config.models:load_local:99 - DEBUG - Configuration '/home/denix/.mycroft/mycroft.conf' not defined, skipping
2023-02-19 09:48:27.924 - OVOS - ovos_utils.configuration:<module>:52 - WARNING - configuration moved to the `ovos_config` package. This submodule will be removed in ovos_utils 0.1.0


Traceback (most recent call last):
  File "/home/denix/ovos-core/bin/ovos-cli-client", line 8, in <module>
    sys.exit(main())
  File "/home/denix/ovos-core/lib/python3.9/site-packages/ovos_cli_client/__main__.py", line 55, in main
    for f in os.listdir(log_dir):
FileNotFoundError: [Errno 2] No such file or directory: '/var/log/mycroft'

Can't get the rich tui to work

The rich TUI only shows

Log Output:                                                          0-2 of 2

--simple does work as expected.

Maybe there is some old config file or a missing config file causing this?

Log path is hardcoded

path for logs is defined in mycroft.conf and it should be taken into account here too.

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.