ovos-installer

πŸŽ‰ Open Voice OS and HiveMind Installer πŸŽ‰

Welcome to the world of Open Voice OS and HiveMind! Get ready for a straightforward journey into voice tech.

πŸ€– What is Open Voice OS?

Open Voice OS (OVOS) is an open-source voice assistant platform that brings privacy-focused, customizable voice technology to your devices. It allows you to control smart home devices, play music, get weather updates, and much more using natural language commands. HiveMind extends this functionality by enabling distributed voice processing across multiple devices.

Key benefits include:

πŸš€ Quickstart

Before we begin, make sure you have curl, git, and sudo installed. curl is used to download the installer script, git is needed for cloning repositories during installation, and sudo provides administrative privileges required for system changes. Here’s your installation incantation:

sudo sh -c "$(curl -fsSL https://raw.githubusercontent.com/OpenVoiceOS/ovos-installer/main/installer.sh)"

This command downloads and runs the official installer script, which will guide you through the installation process interactively.

πŸ‘‰ Start your Open Voice OS journey!

🐧 Supported Linux distributions

The installer has been tested on the following Linux distributions and versions:

Distribution Version
AlmaLinux >= 8
Arch rolling
CentOS >= 8
Debian GNU/Linux >= 10
EndeavourOS rolling
KDE Neon >=20.04
Fedora >= 37
Linux Mint >= 21
openSUSE Leap >= 15
openSUSE Tumbleweed rolling
openSUSE Slowroll rolling
Pop!_OS >=22.04
Manjaro rolling
Raspbian 10
Raspberry Pi OS >= 11
Rocky Linux >=8
Ubuntu >=20.04
WSL2 20.04
Zorin OS >= 16

Note: β€˜rolling’ indicates a rolling release Linux distribution, which means there is no specific version number as it continuously updates to the latest software.

✨ Key Features

Open Voice OS offers a comprehensive set of features for modern voice interaction:

πŸ”„ Update

Updating Open Voice OS ensures you have the latest features, bug fixes, and security improvements. The update process will download and install the newest version while preserving your existing configuration. Backing up your configuration file is recommended in case you have custom settings that might be affected.

To update the current Open Voice OS instance, backup your ~/.config/mycroft/mycroft.conf or ~/ovos/config/mycroft.conf (only if required) and re-run installer but answer β€œNo” to the β€œDo you want to uninstall Open Voice OS?” question.

βš™οΈ Start & Stop the services

When the virtualenv method is chosen (default) during the installation process, several systemd unit files are created to manage the different components as services. These services allow Open Voice OS to run automatically in the background.

πŸ“‹ List the systemd unit files

systemctl --user list-units "*ovos*"
systemctl list-units "*ovos*"

Only one service is running as root; ovos-phal-admin. The ovos service runs the main Open Voice OS components as your user, while ovos-phal-admin handles administrative tasks that require root privileges, such as managing system hardware interfaces.

🟒 Start Open Voice OS

systemctl --user start ovos
sudo systemctl start ovos-phal-admin

πŸ”΄ Stop Open Voice OS

systemctl --user stop ovos
sudo systemctl stop ovos-phal-admin

πŸ€– Automated install

The installer supports a non-interactive (automated) process of installation by using a scenario file, this file must be created under the ~/.config/ovos-installer/ directory and should be named scenario.yaml.

A scenario file allows you to pre-configure installation options for automated, non-interactive deployment. This is useful for scripting installations or deploying on multiple devices.

Here is an example of a scenario to install Open Voice OS within Docker containers on a Raspberry Pi 4B with default skills and GUI support.

mkdir -p ~/.config/ovos-installer
cat <<EOF > ~/.config/ovos-installer/scenario.yaml
---
uninstall: false
method: containers
channel: testing
profile: ovos
features:
  skills: true
  extra_skills: false
  gui: true
rapsberry_pi_tuning: true
share_telemetry: true
share_usage_telemetry: true
EOF

Configuration options explained:

Few scenarios are available as example in the scenarios directory of this repository.

❌ Uninstall

Uninstalling Open Voice OS will remove all installed components, configurations, and services. This process cannot be undone, so ensure you have backed up any important data or custom configurations before proceeding.

To uninstall Open Voice OS run the installer with the --uninstall option (non-interactive) or simply run the installer and answer β€œYes” to the β€œDo you want to uninstall Open Voice OS?” question.

sh -c "curl -s https://raw.githubusercontent.com/OpenVoiceOS/ovos-installer/main/installer.sh -o installer.sh && chmod +x installer.sh && sudo ./installer.sh --uninstall && rm installer.sh"

πŸ–ΌοΈ Screenshots

Screenshot 1

Screenshot 2

Screenshot 3

Screenshot 4

Screenshot 5

Screenshot 6

Screenshot 7