Make packages and directories consistent: mycroft-mimic3-tts

This commit is contained in:
Michael Hansen 2022-05-03 10:36:25 -04:00
commit 4eb564c1bc
11 changed files with 24 additions and 21 deletions

View file

@ -58,7 +58,7 @@ RUN --mount=type=cache,id=pip-requirements,target=/root/.cache/pip \
./install.sh
# Download default voice
COPY voices/ /root/.local/share/mimic3/voices/
COPY voices/ /root/.local/share/mycroft-mimic3-tts/voices/
RUN .venv/bin/mimic3-download 'en_UK/apope_low'
# -----------------------------------------------------------------------------
@ -90,7 +90,7 @@ RUN useradd -ms /bin/bash mimic3
COPY --from=build /home/mimic3/app/ ./
# Copy pre-downloaded voice(s)
COPY --from=build /root/.local/share/mimic3/voices/ /usr/share/mimic3/voices/
COPY --from=build /root/.local/share/mycroft-mimic3-tts/voices/ /usr/share/mycroft-mimic3-tts/voices/
# Run test
COPY tests/* ./tests/

View file

@ -114,7 +114,7 @@ COPY pyinstaller/mimic3-server \
dist/mimic3/
# Create Debian package
ENV package_dir=/package/mimic3-tts
ENV package_dir=/package/mycroft-mimic3-tts
COPY debian/ debian/
COPY voices/ voices/
@ -124,15 +124,15 @@ RUN mkdir -p "${package_dir}/DEBIAN" && \
envsubst \
< "debian/control.in.${TARGETARCH}${TARGETVARIANT}" \
> "${package_dir}/DEBIAN/control" && \
mkdir -p "${package_dir}/usr/lib/mimic3-tts" && \
rsync -av "dist/mimic3/" "${package_dir}/usr/lib/mimic3-tts/" && \
mkdir -p "${package_dir}/usr/lib/mycroft-mimic3-tts" && \
rsync -av "dist/mimic3/" "${package_dir}/usr/lib/mycroft-mimic3-tts/" && \
mkdir -p "${package_dir}/usr/bin/" && \
rsync -av "debian/bin/" "${package_dir}/usr/bin/" && \
export dest_voice_dir="${package_dir}/usr/share/mimic3/voices/en_UK/apope_low" && \
export dest_voice_dir="${package_dir}/usr/share/mycroft-mimic3-tts/voices/en_UK/apope_low" && \
mkdir -p "${dest_voice_dir}" && \
rsync -av "voices/en_UK/apope_low/" "${dest_voice_dir}/" && \
cd /package && \
dpkg --build 'mimic3-tts' && \
dpkg --build 'mycroft-mimic3-tts' && \
dpkg-name ./*.deb
# -----------------------------------------------------------------------------
@ -163,7 +163,7 @@ RUN --mount=type=cache,id=apt-run,target=/var/cache/apt \
dpkg-architecture | \
grep 'DEB_HOST_ARCH=' | \
sed -e 's/.\+=//' | \
xargs printf "./mimic3-tts_${mimic3_version}_%s.deb" | \
xargs printf "./mycroft-mimic3-tts_${mimic3_version}_%s.deb" | \
xargs apt install --yes
# Run test

View file

@ -88,7 +88,7 @@ RUN --mount=type=cache,id=pip-requirements,target=/root/.cache/pip \
mycroft-mimic3-tts
# Download default voice
COPY voices/ /root/.local/share/mimic3/voices/
COPY voices/ /root/.local/share/mycroft-mimic3-tts/voices/
RUN .venv/bin/mimic3-download 'en_UK/apope_low'
# Run test

View file

@ -101,7 +101,7 @@ RUN --mount=type=cache,id=pip-requirements,target=/root/.cache/pip \
mycroft-plugin-tts-mimic3
# Download default voice
COPY voices/ /root/.local/share/mimic3/voices/
COPY voices/ /root/.local/share/mycroft-mimic3-tts/voices/
RUN mycroft-core/.venv/bin/mimic3-download 'en_UK/apope_low'
# Enable plugin

View file

@ -55,7 +55,7 @@ RUN --mount=type=cache,id=pip-requirements,target=/root/.cache/pip \
./install.sh
# Download default voice
COPY voices/ /root/.local/share/mimic3/voices/
COPY voices/ /root/.local/share/mycroft-mimic3-tts/voices/
RUN .venv/bin/mimic3-download 'en_UK/apope_low'
# Generate sample

4
Jenkinsfile vendored
View file

@ -18,7 +18,7 @@
// Jenkins pipeline for building Mimic 3 artifacts.
//
// Requires Docker buildx: https://docs.docker.com/buildx/working-with-buildx/
// Assumes the en_UK/apope_low voice is in /home/jenkins/.local/share/mimic3/voices
// Assumes the en_UK/apope_low voice is in /home/jenkins/.local/share/mycroft-mimic3-tts/voices
pipeline {
agent any
@ -27,7 +27,7 @@ pipeline {
DOCKER_BUILDKIT = '1'
DOCKER_PLATFORM = 'linux/amd64,linux/arm64,linux/arm/v7'
DEFAULT_VOICE = 'en_UK/apope_low'
DEFAULT_VOICE_PATH = '/home/jenkins/.local/share/mimic3/voices'
DEFAULT_VOICE_PATH = '/home/jenkins/.local/share/mycroft-mimic3-tts/voices'
}
stages {

View file

@ -107,7 +107,7 @@ docker run \
'mycroftai/mimic3'
```
Voices will be automatically downloaded to `${HOME}/.local/share/mimic3/voices`
Voices will be automatically downloaded to `${HOME}/.local/share/mycroft-mimic3-tts/voices`
### Debian Package

View file

@ -1,4 +1,4 @@
Package: mimic3-tts
Package: mycroft-mimic3-tts
Version: ${VERSION}
Section: utils
Priority: optional

View file

@ -1,4 +1,4 @@
Package: mimic3-tts
Package: mycroft-mimic3-tts
Version: ${VERSION}
Section: utils
Priority: optional

View file

@ -1,4 +1,4 @@
Package: mimic3-tts
Package: mycroft-mimic3-tts
Version: ${VERSION}
Section: utils
Priority: optional

View file

@ -160,11 +160,14 @@ class Mimic3TextToSpeechSystem(TextToSpeechSystem):
"""Get list of directories to search for voices by default.
On Linux, this is typically:
- $HOME/.local/share/mimic3/voices
- /usr/local/share/mimic3/voices
- /usr/share/mimic3/voices
- $HOME/.local/share/mycroft-mimic3-tts/voices
- /usr/local/share/mycroft-mimic3-tts/voices
- /usr/share/mycroft-mimic3-tts/voices
"""
return [Path(d) / "mimic3" / "voices" for d in XDG().XDG_DATA_DIRS.split(":")]
return [
Path(d) / "mycroft-mimic3-tts" / "voices"
for d in XDG().XDG_DATA_DIRS.split(":")
]
def get_voices(self) -> typing.Iterable[Voice]:
"""Returns an iterable of all available voices"""