ovos-core
OpenVoiceOS is an open source platform for smart speakers and other voice-centric devices.
OVOS-core is a backwards-compatible descendant of Mycroft-core, the central component of Mycroft. It contains extensions and features not present upstream.
All Mycroft Skills and Plugins should work normally with OVOS-core.
OVOS-core is fully modular. Furthermore, common components have been repackaged as plugins. That means it isn't just a great assistant on its own, but also a pretty small library!
Getting Started
ovos-core is very modular, depending on where you are running ovos-core you may want to run only a subset of the services
by default ovos-core only installs the minimum components common to all services, for the purposes of this document we will assume you want a full install
if you want to finetune the components please replace [all]
in commands below with the subset of desired extras, eg [skills,bus]
Installing ovos-core
ovos-core can be installed from pypi or from source
if install fails you may need to install some system dependencies, how to do this will depend on your distro
sudo apt install build-essential python3-dev swig libssl-dev libfann-dev portaudio19-dev libpulse-dev
Note: MycroftAI's dev_setup.sh
does not exist in OVOS-core.
from source
We suggest you do this in a virtualenv:
pip install git+https://github.com/OpenVoiceOS/ovos-core[all]
from pypi
pip install ovos-core[all]
Running ovos-core
Developer launcher script
start-mycroft.sh
is available to perform common tasks.
Assuming you installed ovos-core in your home directory, run:
cd ~/ovos-core
./start-mycroft.sh debug
The "debug" command will start the background services (microphone listener, skill, messagebus, and audio subsystems) as
well as bringing up a text-based Command Line Interface (CLI) you can use to interact with Mycroft and see the contents
of the various logs. Alternatively you can run ./start-mycroft.sh all
to begin the services without the command line
interface. Later you can bring up the CLI using ./start-mycroft.sh cli
.
The background services can be stopped as a group with:
./stop-mycroft.sh
Automatically on boot
We recommend you create system services to manage ovos instead of depending on the launcher script above
A good explanation can be found here https://github.com/j1nx/mycroft-systemd
A reference implementation can be found in ovos-buildroot