NabBlockly, est une interface de programmation par blocs des chorégraphies pour le Nabaztag et Nabaztag:tag, proche de ce qui existe avec Stratch ou Code.org.
-
Un Nabaztag ou Nabaztag:tag avec pynab.
Depuis la version 0.6.3b de pynab, NabBlockly est installé par défaut des releases et fonctionne sur le port 8080. L'installation est d'ailleurs possible sur le port 80 en modifiant la configuration de Nginx.
-
Erlang
Le code est développé avec la version 21 de Erlang/OTP.
sudo apt-get install erlang-nox erlang-dev
La compilation se fait avec rebar3. La version 3.15.1 est la dernière compatible avec OTP-21 qui est la version d'Erlang sur les images pynab actuelles à base de Buster.
Attention à bien faire un clone dans pynab (nécessaire pour les sons).
cd /home/pi/pynab
git clone https://github.com/pguyot/nabblockly
cd nabblockly
wget https://github.com/erlang/rebar3/releases/download/3.15.1/rebar3 && chmod +x rebar3
./rebar3 release
NabBlockly est aussi compatible avec des versions plus récentes d'Erlang/OTP et de rebar3. Par exemple, les paquets erlang des dernières images de raspios sont en version OTP-25.
Pour ces systèmes, le fichier rebar.config.script
ajuste les versions de
cowboy et de jiffy. La démarche est la suivante :
git clone https://github.com/pguyot/nabblockly
cd nabblockly
wget https://s3.amazonaws.com/rebar3/rebar3 && chmod +x rebar3
./rebar3 upgrade --all
./rebar3 release
NabBlockly comprend un serveur web qui remplace celui de Pynab :
sudo cp nabblockly-nginx.conf /etc/nginx/sites-enabled/nabblockly
sudo mv /etc/nginx/sites-enabled/pynab /etc/nginx/sites-available/pynab
sudo service nginx reload
sudo cp nabblockly.service /lib/systemd/system/
sudo systemctl enable nabblockly
sudo service nabblockly start
Éventuellement, désactivation des services pynab (pour ne pas interférer) :
sudo systemctl disable nabclockd
sudo systemctl disable nabweb
sudo systemctl disable nabmastodond
sudo systemctl disable nabtaichid
sudo systemctl disable nabsurprised
sudo systemctl disable nab8balld
sudo systemctl disable nabweatherd
sudo reboot
Les smileys dans l'interface sont l'œuvre de Landry pour le forum Nabaztag, réutilisés avec permission.