snips-issues
snips-issues copied to clipboard
[Platform] Raspbian Buster Support
Hello,
Following the instructions for manual setup, after adding the key and calling sudo apt-get update in Step 2, the terminal outputs a 404 for one of the sources
sudo apt-get update Ign:1 https://raspbian.snips.ai/buster stable InRelease Err:2 https://raspbian.snips.ai/buster stable Release 404 Not Found [IP: 99.84.239.119 443] Hit:3 http://archive.raspberrypi.org/debian buster InRelease Hit:4 http://raspbian.raspberrypi.org/raspbian buster InRelease Reading package lists... Done E: The repository 'https://raspbian.snips.ai/buster stable Release' does not have a Release file. N: Updating from such a repository can't be done securely, and is therefore disabled by default. N: See apt-secure(8) manpage for repository creation and user configuration details.
Because the source can't update, I'm not able to do the following steps.
[EDIT cpoisson 2019/09/27]
Raspbian buster support is likely to happen at the end of october, meanwhile here's a summary of the possible workarounds
Workaround 1 (Recommended)
Use a debian stretch image available here, this distro is the one officially supported at the moment.
Workaround 2
There is 4 problems to solve to support officially buster.
- [ ] The snips buster repository is not yet created, the stretch one should be used. (Still an open issue)
- [ ] Some dependencies of snips-asr are missing. (Still an open issue)
- [ ] Some dependencies of snips-tts are missing. (Still an open issue)
- [x] ~~hermes-python is not yet available on buster.~~ Fixed
If you feel that you don't have the required skills to proceed and debug issues, I urge you to fallback on Stretch :)
Switch to stretch repository
You need to replace buster by stretch in /etc/apt/sources.list.d/snips.list
sudo bash -c 'echo "deb https://raspbian.snips.ai/stretch stable main" > /etc/apt/sources.list.d/snips.list'
Install snips-asr
sudo apt install libgfortran3
sudo apt install libatlas3-base=3.10.3-8+rpi1
sudo apt install snips-asr
Install snips-tts
Some packages related to pico are missing from the rasbian buster repository
Using dpkg -i is it is possible to install then before installing snips-tts.
e.g.
wget http://ftp.fr.debian.org/debian/pool/non-free/s/svox/libttspico-utils_1.0+git20130326-9_armhf.deb
wget http://ftp.fr.debian.org/debian/pool/non-free/s/svox/libttspico0_1.0+git20130326-9_armhf.deb
sudo dpkg -i libttspico-utils_1.0+git20130326-9_armhf.deb
sudo dpkg -i libttspico0_1.0+git20130326-9_armhf.deb
sudo apt install snips-tts
Downgrading to stretch works
Hi @MustacheEmperor,
We don't support officially buster at the moment.
AFAIK, even if Raspbian buster is out, the debian buster distro is still in a testing phase. [EDIT] 09/07 => Buster is now a stable release.
We are starting to have a look on this, and we already found some missing packages.
Regarding the packages sources, it is normal, this repo https://raspbian.snips.ai/buster does not exist.
You need to replace buster by stretch in /etc/apt/sources.list.d/snips.list
sudo bash -c 'echo "deb https://raspbian.snips.ai/stretch stable main" > /etc/apt/sources.list.d/snips.list'
But then you will encounter another dependencies problem related to snips-asr
A way to proceed is to install libgfortran5.
I am currently evaluating it on my side.
Also, hermes-python is not yet available for buster distro. (an issue has been filled here snipsco/hermes-protocol#133)
snips-tts is also causing some difficuIties.
It needed a bit of exploration on debian buster packages repository
snips-asr
sudo apt install libgfortran3
sudo apt install libatlas3-base=3.10.3-8+rpi1
sudo apt install snips-asr
snips-tts
Some packages related to pico are missing from the rasbian buster repository
Using dpkg -i is it is possible to install then before installing snips-tts.
e.g.
wget http://ftp.fr.debian.org/debian/pool/non-free/s/svox/libttspico-utils_1.0+git20130326-9_armhf.deb
wget http://ftp.fr.debian.org/debian/pool/non-free/s/svox/libttspico0_1.0+git20130326-9_armhf.deb
sudo dpkg -i libttspico-utils_1.0+git20130326-9_armhf.deb
sudo dpkg -i libttspico0_1.0+git20130326-9_armhf.deb
sudo apt install snips-tts
I got stuck installing snips-asr because of the following dependency chain (but I found a workaround):
snips-skaldi > libatlas3-base > libblas-common
and
Package 'libblas-common' has no installation candidate.
This is probably because the available libatlas3-base version is 3.10.3-1-snips.
I installed the standard stretch version by doing:
sudo apt-get install libatlas3-base=3.10.3-8+rpi1
After this, snips-asr does not start as it can not find libgfortran.so.3
So we need to create a symbolic link:
sudo ln -s /usr/lib/arm-linux-gnueabihf/libgfortran.so.5 /usr/lib/arm-linux-gnueabihf/libgfortran.so.3
That seems to have fixed things.
@batje , Thanks a bunch, I could see that the instruction I provided were wrong 👍 , It s updated now.
Things seem to work, but when I install an assistent, i see a lot of these:
Running setup.sh & generating virtual environment for stanvn.Small_talk
✖ Error setting up virtualenv, one or more actions might not be able to run. Reason :
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7.
@cpoisson
AFAIK, even if Raspbian buster is out, the debian buster distro is still in a testing phase.
Debian released Buster as latest stable yesterday.
@batje
Yes, it is unrelated. Those are normal warnings issued by python tools to push python users to migrate for python 3. As they return a code different than 0 in the command line, SAM display them as errors.
Hi,
Apologies I don't really understand thanks.
Does Snips work on Buster? Do the above comments fix the issue? Should I try and find an image of Stretch? Where can I find an image of stretch?
Thanks your help
Hi @code-pig ,
Short answer, use stretch to avoid dependencies issues.
I'll make a summary at the beginning of the ticket.
@code-pig I have version 0.63.2 working just fine on a Raspbperry Pi 4 with Buster.
I used stretch in the end, which was probably for the best as it forced me to learn a few things. Also im on the pi 3 so not sure if that makes any difference? Thanks for your help everybody
@cpoisson Does workaround 2 in the first post still show the actual status with 3 open issues or is there something new?
@cpoisson Does workaround 2 in the first post still show the actual status with 3 open issues or is there something new?
Waiting for this update. When can we expect full support for raspbian buster?
@cpoisson I am planning a long time project with snips.ai, so I would like to not downgrade to Stretch and wait for full Buster support instead. Would be nice to get a short status update. Thank you in advance.
The version numbering for Snips' copy of libatlas3-base is problematic here, which explains why the workaround needs the explicit instruction sudo apt install libatlas3-base=3.10.3-8+rpi1.
Buster's version number is 3.10.3-8+rpi1 which is parsed as package version 3.10.3 and Debian revision 8+rpi1. Snips' version is 3.10.3-1-snips. By the Debian policy manual (https://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-version), this is parsed as package version 3.10.3-1 and Debian revision snips. What was probably intended is that the package version should be 3.10.3 with revision 1-snips, but this is not how apt interprets it.
Since 3.10.3-1 sorts after 3.10.3, apt sees this as a newer version, even though we understand it as being the same package version, with buster offering a newer revision (8+rpi1 vs 1-snips as was likely intended).
What needs to change here is that the package version should be 3.10.3-1+snips1 so it sorts correctly. You have to be careful about aliasing existing distro packages and being careless about an extra hyphen can break things as is happening here. Instead of annotating the version with a hyphen, you should use a + if you want your version to sort after the unannotated version, and a ~ if you want it to sort before. For example 1.0~abc1 < 1.0 < 1.0+abc1.
@RaspiManu Yes the status is up to date, expect things to move slowly as most of us are on holidays this month. The item is in our backlog (it needs to be done). We have more urgent items to tackle for september. I hope october would allow us to address this issue.
@jmwilson Thanks for the info, we dived into those docs lately to ease internal beta releases. We know that the versioning of this package is a bit messy. (FYI @fredszaq, @kali, @Garvys )
@cpoisson Thank you very much for the reply. I will wait and check for updates here. Have a nice Holiday.
Instead of installing the packages with dpkg you could add the Debian repository:
wget -q https://ftp-master.debian.org/keys/release-10.asc -O- | apt-key add -
echo "deb http://deb.debian.org/debian buster non-free" >> /etc/apt/sources.list
apt-get update
apt-get install libttspico0
Source: https://bugs.launchpad.net/raspbian/+bug/1835974
I am working on an Ansible role to install Snips on Buster. I cannot boot Stretch since I own a Raspi4. There are no docs at the moment but someone might find it useful :) https://github.com/wilmardo/ansible-role-snips
@momo42 If you don't want to wait, you could try this: https://forum.snips.ai/t/voco-a-fool-proof-way-of-running-snips/3484
Raspi4 owner here. Can somebody else on raspi4 buster confirm all works well with workaround2? Thanks
Any news on this?
Also waiting for quite some time now....
This thread contains documentation on how to install snips on Raspbian Buster for now: https://forum.snips.ai/t/solved-raspberry-pi-4-buster-how-to-do-it/3647
Did someone already test it? It sounds too simply to be true.
⬆️ We are targeting end of october to deal with this issue.
Would love to see it on Buster sooner.
What's stopping you? It's open source.
Ok followed the instructions and was able to install like below :
_Connected to device raspberrypi.local
OS version ................... Raspbian GNU/Linux 10 (buster) Installed assistant .......... Nathan Language ..................... en Hotword ...................... chappie ASR engine ................... snips Status ....................... Live
Service status:
snips-analytics .............. (not running) snips-asr .................... 0.63.3 (not running) snips-audio-server ........... 0.63.3 (not running) snips-dialogue ............... 0.63.3 (running) snips-hotword ................ 0.63.3 (running) snips-nlu .................... 0.63.3 (running) snips-skill-server ........... 0.63.3 (running) snips-tts .................... 0.63.3 (running)_
Followed the Quick Start and got most of the snips service started (and working?). How do I start the asr and audio-server ? Alos, the command "sam watch" from my computer, is throwing the error: bash: snips-watch: command not found Am I missing something ?
Would love to see it on Buster sooner.
Throw some money on it - it may help ;-)
[Insert Donation Button here]