Skip to content

Commit

Permalink
[skills] Add more clarifications
Browse files Browse the repository at this point in the history
  • Loading branch information
goldyfruit committed Mar 3, 2024
1 parent 5597971 commit 31dcb8f
Showing 1 changed file with 32 additions and 2 deletions.
34 changes: 32 additions & 2 deletions docs/getting-started/docker/installation/skills.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,15 @@ Two different methods are supported by `ovos-docker` to install Open Voice OS's

## As part of `ovos_core` container

The first method is to use a `skills.list` file within the `~/ovos/config/` directory, this file acts as a Python `requirements.txt` file.
The first method is to use a `skills.list` file within the `~/ovos/config/` directory _(it does not exist by default)_, this file acts as a Python `requirements.txt` file.

When `ovos_core` container starts, it will look for a `skills.list` file and install the skills defined in there.

!!! warning "Skill requirements"

The skill has to be compatible with the `pip install` method which requires a `setup.py` file.

```ini title="skills.list"
```ini title="~/ovos/config/skills.list"
ovos-skill-stop # Latest skill version on PyPi
ovos-skill-volume==0.0.1 # Specific skill version on PyPi
git+https://github.com/OpenVoiceOS/skill-ovos-wikipedia.git@fix/whatever # Specific skill's branch on GitHub
Expand All @@ -30,6 +30,36 @@ If the `ovos_core` container is wiped for any reasons _(like an update)_, the sk

The main advantage of this method is the simplicity **but** the downside will be more Python dependencies _(libraries)_ within the `ovos_core` container, potential conflicts across them, a lack of isolation and a slower start of the container.

Once the `~/ovos/config/skills.list` file is populated with the wanted skills, the `ovos_core` container must be restarted to handle the new requirements.

!!! note "Podman users :muscle:"

If you are running Podman instead of Docker, replace `docker compose` with `podman-compose`.

=== "Raspberry Pi"

```shell
docker restart ovos_core
```

=== "Linux"

```shell
docker restart ovos_core
```

=== "Mac OS"

```shell
docker restart ovos_core
```

=== "Windows WSL2"

```shell
docker restart ovos_core
```

## As standalone container _(recommended)_

The second method is to leverage the [ovos-workshop](../../../about/glossary/components.md#ovos-workshop) component by running a skill as standalone, it means the skill will not be part of `ovos_core` container but it will be running inside its own container.
Expand Down

0 comments on commit 31dcb8f

Please sign in to comment.