Cette documentation décrit l'installation complète de Walkabot sur un GMKtec NucBox G3S (Intel N95) sous Xubuntu 26.04 LTS.
Cette version remplace la plateforme Raspberry Pi devenue instable (cartes SD défectueuses) par une plateforme x86 plus fiable, plus rapide et alimentable via PowerBank USB-C PD.
Le BIOS du GMKtec est relativement exigeant.
Les clés créées avec certains outils graphiques Ubuntu n'étaient pas reconnues.
La méthode fiable consiste à utiliser dd.
Repérer la clé :
lsblk
Puis écrire l'image :
sudo umount /dev/sdX* sudo dd if=/home/USER/Downloads/xubuntu-26.04-desktop-amd64.iso of=/dev/sdX bs=4M status=progress conv=fsync sync
Attention :
Utiliser :
/dev/sdX
et non
/dev/sdX1
Installation classique.
Créer par exemple :
Computer name : walkabot Username : apobot
sudo apt update sudo apt full-upgrade -y
sudo apt install openssh-server sudo systemctl enable ssh sudo systemctl start ssh
Connexion :
ssh apobot@IP_DU_WALKABOT
Installation :
sudo apt install x11vnc
Créer le service :
sudo nano /etc/systemd/system/x11vnc.service
Contenu :
[Unit] Description=x11vnc server for Walkabot desktop After=display-manager.service network.target Requires=display-manager.service [Service] Type=simple ExecStart=/usr/bin/x11vnc -display :0 -auth /var/run/lightdm/root/:0 -forever -shared -rfbport 5900 -listen 0.0.0.0 -noxdamage Restart=always RestartSec=5 [Install] WantedBy=multi-user.target
Activer :
sudo systemctl daemon-reload sudo systemctl enable x11vnc sudo systemctl start x11vnc
Vérifier :
sudo systemctl status x11vnc
Connexion :
vncviewer IP_DU_WALKABOT
sudo apt install \ puredata \ qjackctl \ jackd2 \ alsa-utils \ pavucontrol \ pd-zexy \ pd-iemlib \ pd-iemmatrix \ pd-iemambi \ pd-creb \ pd-bsaylor \ pd-pdogg
Ajouter l'utilisateur au groupe audio :
sudo usermod -aG audio apobot
Puis redémarrer.
Les externals sont installés dans :
/usr/lib/pd/extra/
Les principaux dossiers sont :
/usr/lib/pd/extra/pdogg /usr/lib/pd/extra/iemlib /usr/lib/pd/extra/zexy
Lister les interfaces audio :
aplay -l arecord -l
Résultat attendu :
card 1: HID [USB Audio and HID] device 0
Le script utilisera donc :
hw:1,0
Copie du dossier :
/home/apobot/BotPatch
Patch principal :
PATCH_GENERAL_BORGBOT_VERSION_ALPHA_0.1-2.pd
Créer :
nano /home/apobot/start_walkabot.sh
Contenu :
#!/bin/bash sleep 10 export DISPLAY=:0 export XAUTHORITY=/var/run/lightdm/root/:0 pkill -f "puredata.*PATCH_GENERAL_BORGBOT" 2>/dev/null pkill jackd 2>/dev/null sleep 2 jackd \ -d alsa \ -d hw:1,0 \ -r 44100 \ -p 256 \ -n 3 & sleep 5 puredata \ -jack \ -verbose \ -stderr \ -path /usr/lib/pd/extra/pdogg \ -path /usr/lib/pd/extra/iemlib \ -path /usr/lib/pd/extra/zexy \ -lib zexy \ -lib iemlib \ -path /home/apobot/BotPatch \ -open /home/apobot/BotPatch/PATCH_GENERAL_BORGBOT_VERSION_ALPHA_0.1-2.pd
Rendre exécutable :
chmod +x /home/apobot/start_walkabot.sh
Créer le dossier :
mkdir -p ~/.config/autostart
Créer le lanceur :
nano ~/.config/autostart/walkabot.desktop
Contenu :
[Desktop Entry] Type=Application Name=Walkabot Exec=/home/apobot/start_walkabot.sh Hidden=false NoDisplay=false X-GNOME-Autostart-enabled=true
Après redémarrage :
ps aux | grep jackd ps aux | grep puredata
Le système doit lancer automatiquement :
Boot ↓ LightDM Autologin ↓ Desktop Xubuntu ↓ Autostart ↓ start_walkabot.sh ↓ JACK (USB Audio hw:1,0) ↓ Pure Data ↓ PATCH_GENERAL_BORGBOT_VERSION_ALPHA_0.1-2.pd ↓ Icecast / Ogg Stream
Si x11vnc ne trouve pas la session X :
ps aux | grep Xorg
Le serveur X doit contenir :
-auth /var/run/lightdm/root/:0
Le service x11vnc doit utiliser exactement ce chemin.
Si oggcast~ ou lp2~ ne sont pas trouvés, vérifier que les chemins suivants sont présents :
/usr/lib/pd/extra/pdogg /usr/lib/pd/extra/iemlib /usr/lib/pd/extra/zexy
Si JACK refuse de démarrer :
Lister les interfaces :
aplay -l
Puis adapter :
-d hw:1,0
dans start_walkabot.sh.
Walkabot démarre désormais de manière totalement autonome :
Le système ne dépend plus d'une carte SD Raspberry Pi mais d'un SSD NVMe, ce qui améliore considérablement la fiabilité et facilite le clonage sur d'autres machines.